All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm: bridge/dw_hdmi: Filter modes > 165MHz for DVI
@ 2015-06-17 23:14 Doug Anderson
  2015-06-17 23:30   ` Russell King - ARM Linux
  0 siblings, 1 reply; 14+ messages in thread
From: Doug Anderson @ 2015-06-17 23:14 UTC (permalink / raw)
  To: Philipp Zabel, Russell King, Thierry Reding
  Cc: Heiko Stuebner, Doug Anderson, David Airlie, Andy Yan,
	Yakir Yang, Fabio Estevam, dri-devel, linux-kernel

If you plug in a DVI monitor to your HDMI port, you need to filter out
clocks > 165MHz.  That's because 165MHz is the maximum clock rate that
we can run single-link DVI at.

If you want to run high resolutions to DVI, you'd need some type of an
active adapter that pretended that it was HDMI, interpreted the
signal, and produced a new dual link DVI signal at a lower clock rate.

Signed-off-by: Doug Anderson <dianders@chromium.org>
---
Note: this patch was tested against a 3.14 kernel with backports.  It
was only compile tested against linuxnext, but the code is
sufficiently similar that I'm convinced it will work there.

 drivers/gpu/drm/bridge/dw_hdmi.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/bridge/dw_hdmi.c b/drivers/gpu/drm/bridge/dw_hdmi.c
index 816d104..48b8532 100644
--- a/drivers/gpu/drm/bridge/dw_hdmi.c
+++ b/drivers/gpu/drm/bridge/dw_hdmi.c
@@ -1421,8 +1421,12 @@ dw_hdmi_connector_mode_valid(struct drm_connector *connector,
 {
 	struct dw_hdmi *hdmi = container_of(connector,
 					   struct dw_hdmi, connector);
+	struct hdmi_vmode *vmode = &hdmi->hdmi_data.video_mode;
 	enum drm_mode_status mode_status = MODE_OK;
 
+	if (mode->clock > 165000 && vmode->mdvi)
+		return MODE_BAD;
+
 	if (hdmi->plat_data->mode_valid)
 		mode_status = hdmi->plat_data->mode_valid(connector, mode);
 
-- 
2.4.3.573.g4eafbef


^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2015-06-19  1:32 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-17 23:14 [PATCH] drm: bridge/dw_hdmi: Filter modes > 165MHz for DVI Doug Anderson
2015-06-17 23:30 ` Russell King - ARM Linux
2015-06-17 23:30   ` Russell King - ARM Linux
2015-06-18  2:52   ` Doug Anderson
2015-06-18  8:53     ` Russell King - ARM Linux
2015-06-18  8:53       ` Russell King - ARM Linux
2015-06-18 15:26       ` Doug Anderson
2015-06-18 15:55         ` Russell King - ARM Linux
2015-06-18 15:55           ` Russell King - ARM Linux
2015-06-18 16:09           ` Russell King - ARM Linux
2015-06-18 16:22             ` Doug Anderson
2015-06-18 16:10           ` Doug Anderson
2015-06-19  1:31             ` Yakir Yang
2015-06-19  1:31               ` Yakir Yang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.