From: Archit Taneja <[email protected]>

On some adv7511 implementations, we can get some spurious
disconnect signals which can cause monitor probing to fail.

This patch enables HPD (hot plug detect) interrupt support
which allows the monitor to be properly re-initialized when
the spurious disconnect signal goes away.

This also enables proper hotplug support.

Cc: David Airlie <[email protected]>
Cc: Archit Taneja <[email protected]>
Cc: Wolfram Sang <[email protected]>
Cc: Lars-Peter Clausen <[email protected]>
Cc: Laurent Pinchart <[email protected]>
Cc: [email protected]
Acked-by: Laurent Pinchart <[email protected]>
Tested-by: Laurent Pinchart <[email protected]>
Originally-by: Archit Taneja <[email protected]>
[jstultz: Added proper commit message]
Signed-off-by: John Stultz <[email protected]>
---
 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c 
b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
index 7b2b5af..405e460 100644
--- a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
+++ b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
@@ -338,7 +338,7 @@ static void adv7511_power_on(struct adv7511 *adv7511)
                 * Still, let's be safe and stick to the documentation.
                 */
                regmap_write(adv7511->regmap, ADV7511_REG_INT_ENABLE(0),
-                            ADV7511_INT0_EDID_READY);
+                            ADV7511_INT0_EDID_READY | ADV7511_INT0_HPD);
                regmap_write(adv7511->regmap, ADV7511_REG_INT_ENABLE(1),
                             ADV7511_INT1_DDC_ERROR);
        }
@@ -846,6 +846,10 @@ static int adv7511_bridge_attach(struct drm_bridge *bridge)
        if (adv->type == ADV7533)
                ret = adv7533_attach_dsi(adv);
 
+       if (adv->i2c_main->irq)
+               regmap_write(adv->regmap, ADV7511_REG_INT_ENABLE(0),
+                               ADV7511_INT0_HPD);
+
        return ret;
 }
 
-- 
2.7.4

_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to