From 997de7870887f91600523cc9ae7e1c6b2cb42ece Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Mon, 29 Aug 2011 18:10:20 +0300 Subject: [PATCH] --- yaml --- r: 271429 b: refs/heads/master c: 759593ffa7e05ebea9b21135cad179982331f5d8 h: refs/heads/master i: 271427: 23cc71521340c42d8b56383cd6768389d13a31c1 v: v3 --- [refs] | 2 +- trunk/drivers/video/omap2/dss/dss.h | 1 + trunk/drivers/video/omap2/dss/dss_features.c | 1 + trunk/drivers/video/omap2/dss/hdmi.c | 17 +++++++++++++ trunk/drivers/video/omap2/dss/hdmi_panel.c | 25 +++++++++++++++++++ trunk/drivers/video/omap2/dss/ti_hdmi.h | 3 +++ .../drivers/video/omap2/dss/ti_hdmi_4xxx_ip.c | 12 +++++++++ 7 files changed, 60 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index df818dfa18da..a5ab723fab74 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 468c1b934c0367d15f90314ae316cd33551f70a5 +refs/heads/master: 759593ffa7e05ebea9b21135cad179982331f5d8 diff --git a/trunk/drivers/video/omap2/dss/dss.h b/trunk/drivers/video/omap2/dss/dss.h index 2e7799c82960..f58c302b730d 100644 --- a/trunk/drivers/video/omap2/dss/dss.h +++ b/trunk/drivers/video/omap2/dss/dss.h @@ -495,6 +495,7 @@ void omapdss_hdmi_display_set_timing(struct omap_dss_device *dssdev); int omapdss_hdmi_display_check_timing(struct omap_dss_device *dssdev, struct omap_video_timings *timings); int omapdss_hdmi_read_edid(u8 *buf, int len); +bool omapdss_hdmi_detect(void); int hdmi_panel_init(void); void hdmi_panel_exit(void); diff --git a/trunk/drivers/video/omap2/dss/dss_features.c b/trunk/drivers/video/omap2/dss/dss_features.c index 076f399a9153..ab4166590a74 100644 --- a/trunk/drivers/video/omap2/dss/dss_features.c +++ b/trunk/drivers/video/omap2/dss/dss_features.c @@ -440,6 +440,7 @@ static const struct ti_hdmi_ip_ops omap4_hdmi_functions = { .phy_enable = ti_hdmi_4xxx_phy_enable, .phy_disable = ti_hdmi_4xxx_phy_disable, .read_edid = ti_hdmi_4xxx_read_edid, + .detect = ti_hdmi_4xxx_detect, .pll_enable = ti_hdmi_4xxx_pll_enable, .pll_disable = ti_hdmi_4xxx_pll_disable, .video_enable = ti_hdmi_4xxx_wp_video_start, diff --git a/trunk/drivers/video/omap2/dss/hdmi.c b/trunk/drivers/video/omap2/dss/hdmi.c index fb85ce5a8ab4..781867002662 100644 --- a/trunk/drivers/video/omap2/dss/hdmi.c +++ b/trunk/drivers/video/omap2/dss/hdmi.c @@ -449,6 +449,23 @@ int omapdss_hdmi_read_edid(u8 *buf, int len) return r; } +bool omapdss_hdmi_detect(void) +{ + int r; + + mutex_lock(&hdmi.lock); + + r = hdmi_runtime_get(); + BUG_ON(r); + + r = hdmi.ip_data.ops->detect(&hdmi.ip_data); + + hdmi_runtime_put(); + mutex_unlock(&hdmi.lock); + + return r == 1; +} + int omapdss_hdmi_display_enable(struct omap_dss_device *dssdev) { int r = 0; diff --git a/trunk/drivers/video/omap2/dss/hdmi_panel.c b/trunk/drivers/video/omap2/dss/hdmi_panel.c index 71aa8134f4fb..533d5dc634d2 100644 --- a/trunk/drivers/video/omap2/dss/hdmi_panel.c +++ b/trunk/drivers/video/omap2/dss/hdmi_panel.c @@ -25,6 +25,7 @@ #include #include #include