On 08/28/2013 03:07 PM, Thierry Reding wrote: > * PGP Signed by an unknown key > > On Wed, Aug 28, 2013 at 01:40:56PM +0300, Mikko Perttunen wrote: >> Use EDID data to determine whether the display supports HDMI or just DVI. >> This used to be hardcoded to be HDMI, which broke support for DVI displays >> that couldn't understand the interspersed audio/other data. >> >> If the EDID data isn't available, default to DVI, which should be a safer >> choice. >> >> Signed-off-by: Mikko Perttunen <mperttunen at nvidia.com> >> --- >> drivers/gpu/host1x/drm/hdmi.c | 8 ++++++++ >> 1 file changed, 8 insertions(+) >> >> diff --git a/drivers/gpu/host1x/drm/hdmi.c b/drivers/gpu/host1x/drm/hdmi.c >> index d81fac8..140339b 100644 >> --- a/drivers/gpu/host1x/drm/hdmi.c >> +++ b/drivers/gpu/host1x/drm/hdmi.c >> @@ -702,6 +702,14 @@ static int tegra_output_hdmi_enable(struct tegra_output >> *output) >> unsigned long value; >> int retries = 1000; >> int err; >> + struct drm_property_blob *edid_blob = output->connector.edid_blob_ptr; >> + >> + if (edid_blob && edid_blob->data && >> + drm_detect_hdmi_monitor((struct edid *)edid_blob->data)) { >> + hdmi->dvi = false; >> + } else { >> + hdmi->dvi = true; >> + } >> >> pclk = mode->clock * 1000; >> h_sync_width = mode->hsync_end - mode->hsync_start; > > Odd, now that I see that code I remember that there was a similar patch > a few months back, but it was never applied for some reason: > > http://lists.freedesktop.org/archives/dri-devel/2013-January/033509.html > > That was already reviewed by me and Jon Mayo, so I'll go ahead and apply > that one instead. > > Thierry > > * Unknown Key > * 0x7F3EB3A1 >
That patch seems to cause a warning for me: drivers/gpu/host1x/drm/hdmi.c: In function ?tegra_output_hdmi_enable?: drivers/gpu/host1x/drm/hdmi.c:706:2: warning: passing argument 1 of ?drm_detect_hdmi_monitor? discards ?const? qualifier from pointer target type [enabled by default] include/drm/drm_crtc.h:1037:13: note: expected ?struct edid *? but argument is of type ?const struct edid *? Looks much nicer though.