Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

drm: refresh rate down to 60 Hz in 2.6.35-rc5

3 views
Skip to first unread message

Sven Joachim

unread,
Jul 14, 2010, 2:39:31 PM7/14/10
to dri-...@lists.sourceforge.net, Adam Jackson, Dave Airlie, linux-...@vger.kernel.org
After upgrading to 2.6.35-rc5, I noticed that my monitor reports a
refresh rate of 60 Hz when nouveau.ko is loaded, rather than the 75 Hz I
got on 2.6.34. Graphics card is an NV86 (GeForce 8500 GT), the monitor
is a 1280x1024 TFT (Yakumo 19AL) connected via VGA.

I bisected this to the following commit:

--8<---------------cut here---------------start------------->8---
commit c867df7043b738da4f4d358d7039c243a29b4272
Author: Adam Jackson <aj...@redhat.com>
Date: Mon Mar 29 21:43:21 2010 +0000

drm/edid: Reshuffle mode list construction to closer match the spec

Also, document what the spec says to do.

Signed-off-by: Adam Jackson <aj...@redhat.com>
Signed-off-by: Dave Airlie <air...@redhat.com>

diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 9c4717f..858fedc 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -1377,10 +1377,24 @@ int drm_add_edid_modes(struct drm_connector *connector, struct edid *edid)

quirks = edid_get_quirks(edid);

- num_modes += add_established_modes(connector, edid);
- num_modes += add_standard_modes(connector, edid);
+ /*
+ * EDID spec says modes should be preferred in this order:
+ * - preferred detailed mode
+ * - other detailed modes from base block
+ * - detailed modes from extension blocks
+ * - CVT 3-byte code modes
+ * - standard timing codes
+ * - established timing codes
+ * - modes inferred from GTF or CVT range information
+ *
+ * We don't quite implement this yet, but we're close.
+ *
+ * XXX order for additional mode types in extension blocks?
+ */
num_modes += add_detailed_info(connector, edid, quirks);
num_modes += add_detailed_info_eedid(connector, edid, quirks);
+ num_modes += add_standard_modes(connector, edid);
+ num_modes += add_established_modes(connector, edid);

if (quirks & (EDID_QUIRK_PREFER_LARGE_60 | EDID_QUIRK_PREFER_LARGE_75))
edid_fixup_preferred(connector, quirks);
--8<---------------cut here---------------end--------------->8---

How do I get the 75 Hz refresh rate back? Adding "video=1280x1024@75"
as described in the nouveau wikiน has no effect.

Regards,
Sven


http://nouveau.freedesktop.org/wiki/KernelModeSetting

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majo...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Sven Joachim

unread,
Jul 14, 2010, 3:09:43 PM7/14/10
to dri-...@lists.freedesktop.org, Adam Jackson, Dave Airlie, linux-...@vger.kernel.org
[ Resending to the right mailing list. I looked up in MAINTAINERS, but
forgot to run "git bisect reset" and got the wrong address for
dri-devel@. Apologies to all who receive this twice. ]
0 new messages