On 5/3/12 2:01 PM, Ian Pilcher wrote:

The patch does the following:

This looks good, thank you for taking it on.

* Changes the vendor field of struct edid_quirk to an array, rather
   than a pointer.  (This has already been sent to the dri-devel list.)
* Adds two new quirks EDID_QUIRK_DISABLE_INFOFRAMES and
   EDID_QUIRK_NO_AUDIO. This first quirk causes drm_detect_hdmi_monitor
   to return false; the second   causes drm_detect_monitor_audio to
   return false.
* Logs the EDID vendor and model of connected monitors.
* Adds an edid_quirks parameter to the drm module, for user-defined
   quirks.

I'd like to see documentation for the bit values of the quirks as well. And, ideally, this would also have some runtime API for manipulating the quirk list, so that way you can test new quirks without needing a reboot cycle.

To close the loop all the way on that I'd also want to be able to scrape the quirk list back out from that API, but that's not completely clean right now. We're being a little cavalier with the quirk list as it stands because we don't differentiate among phy layers, and I can easily imagine a monitor that needs a quirk on DVI but where the same quirk on the same monitors' VGA would break it. I don't think this has caused problems yet, but.

With this patch, my display works when I add
drm.edid_quirks=GSM:0x563f:0x180 to my kernel command line.  (0x80,
EDID_QUIRK_DISABLE_INFOFRAMES, makes it work with the nouveau driver;
0x100, EDID_QUIRK_NO_AUDIO, makes it work with the i915 driver.  I.e.,
the i915 driver is sending audio InfoFrames even when
drm_detect_hdmi_monitor returns false; bug?)

InfoFrames are not valid for non-HDMI sinks, so yes, I'd call that a bug.

Your original bug report is a little strange, particularly:

https://bugzilla.redhat.com/attachment.cgi?id=572790

Where the EDID for DP-1 appears to be truncated: the "extension" field (second byte from the end) is 1 as you'd expect for an HDMI monitor, but there's no extension block. How big of a file do you get from /sys/class/drm/*/edid for that port?

- ajax
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to