diff options
-rw-r--r-- | drivers/video/omap2/dss/hdmi.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/video/omap2/dss/hdmi.c b/drivers/video/omap2/dss/hdmi.c index 87d48ece233..05144ef758f 100644 --- a/drivers/video/omap2/dss/hdmi.c +++ b/drivers/video/omap2/dss/hdmi.c @@ -1106,6 +1106,16 @@ bool omapdss_hdmi_is_detected(struct omap_dss_device *dssdev, bool force) r = hdmi_read_reg(HDMI_CORE_SYS_SYS_STAT); + /* Some annoying LG monitors will report that's disconnected + * right after reporting it's connected, so try again if probe + * failed and force is enabled */ + if (!(r & 0x2) && (force)) { + DSSDBG("Fail to detect the connector and force is enabled, " + "trying at least one more time\n"); + msleep(2000); + r = hdmi_read_reg(HDMI_CORE_SYS_SYS_STAT); + } + return !!(r & 0x2); } |