aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNeil Armstrong2019-07-04 15:52:08 +0200
committerAnatolij Gustschin2019-07-29 00:22:02 +0200
commit233358c46a753438d9f0c26dc67dad3ddecca1e9 (patch)
treeb3853d8cd2afc2600b6d41bcd5701a884390cfe5
parenteb4ee4e436287a69de7a87ea3070fa52bd327602 (diff)
video: meson: dw-hdmi: add EDID mode filtering to only select supported modes
Add support for the new mode_valid() display op to filter out unsupported display DMT timings. This is useful when connected to 4k displays, since we only support DMT monitors up to 1920x1080, the 4k native timings are discarded to select supported timings. Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
-rw-r--r--drivers/video/meson/meson_dw_hdmi.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/video/meson/meson_dw_hdmi.c b/drivers/video/meson/meson_dw_hdmi.c
index 483c93f6b6c..617f75724b5 100644
--- a/drivers/video/meson/meson_dw_hdmi.c
+++ b/drivers/video/meson/meson_dw_hdmi.c
@@ -426,9 +426,16 @@ static int meson_dw_hdmi_probe(struct udevice *dev)
return ret;
}
+static bool meson_dw_hdmi_mode_valid(struct udevice *dev,
+ const struct display_timing *timing)
+{
+ return meson_venc_hdmi_supported_mode(timing);
+}
+
static const struct dm_display_ops meson_dw_hdmi_ops = {
.read_edid = meson_dw_hdmi_read_edid,
.enable = meson_dw_hdmi_enable,
+ .mode_valid = meson_dw_hdmi_mode_valid,
};
static const struct udevice_id meson_dw_hdmi_ids[] = {