Path: csiph.com!news.redatomik.org!weretis.net!feeder4.news.weretis.net!news.unit0.net!news.panservice.it!bofh.it!news.nic.it!robomod From: John Stultz Newsgroups: linux.kernel Subject: [RFC][PATCH 3/5 v3] drm/bridge: adv7511: Enable HPD interrupts to support hotplug and improve monitor detection Date: Mon, 12 Dec 2016 22:10:01 +0100 Message-ID: References: X-Original-To: lkml Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=HdOqgm/Luctt5M3Ye2TOJ0qYhdFL1maPj5o0uZFAeoU=; b=EQlFEbUdsUSpEGAeoJVynXqkyPqBsExhRy9+yhHONnF8TOvAxZipJt5tsx3C6ReuB1 xo7eTGLdrtInAhQWOha+tfFzbdqsd2qRRJBZ9eJJDzq62XWJRNzcJ+6F9g6JMjppVXgO 5TnahFtVY6JQR41BbCzo43u8Klhzv0T/vGixU= X-Google-Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=HdOqgm/Luctt5M3Ye2TOJ0qYhdFL1maPj5o0uZFAeoU=; b=b/+4mQynKxzhE5Xh7TQFGl5XrbdwVx4KE51HLxAf4S7vqHhYvDDNwAAj+0lRmTcLOO Y0PCNL0Rbl7YNVJ6jJXtZVcODJZlehMjDNs3w6GLqsCalhdBYaKv0dnIXjfWb89rXLY/ haVWxCiLuwhNtqTs5flmc6mBwHpUOIWhSOVWxrXFsTVKMfnZtFs/XhYQV6/RmuqUKSY7 2U/+AkhI+WnFOGB3/RBZ72fLOI2gPrbS17URka5NMeBq3v6ptjXnskOduJ+R9EXU3z/A rCPFIuEwkqxvZWH6PYiiH0H/1Pk90clJ4DBf1YhfIZYd71CbvN2Ov/WXo0E3ImuqEH30 xL9A== X-Gm-Message-State: AKaTC01LXp1dxde+b0t8NMWV3MvG0kebWnr+ahIQJ5URD0ZP9EF2ZCW+XeCrQst+ln7mU4gD X-Received: by 10.84.197.1 with SMTP id m1mr16396469pld.157.1481576448174; Mon, 12 Dec 2016 13:00:48 -0800 (PST) X-Mailer: git-send-email 2.7.4 Sender: robomod@news.nic.it List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Approved: robomod@news.nic.it Lines: 51 Organization: linux.* mail to news gateway X-Original-Cc: Archit Taneja , David Airlie , Wolfram Sang , Lars-Peter Clausen , Laurent Pinchart , dri-devel@lists.freedesktop.org, John Stultz X-Original-Date: Mon, 12 Dec 2016 13:00:39 -0800 X-Original-Message-ID: <1481576441-23529-4-git-send-email-john.stultz@linaro.org> X-Original-References: <1481576441-23529-1-git-send-email-john.stultz@linaro.org> X-Original-Sender: linux-kernel-owner@vger.kernel.org Xref: csiph.com linux.kernel:1540649 From: Archit Taneja 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 Cc: Archit Taneja Cc: Wolfram Sang Cc: Lars-Peter Clausen Cc: Laurent Pinchart Cc: dri-devel@lists.freedesktop.org Acked-by: Laurent Pinchart Originally-by: Archit Taneja [jstultz: Added proper commit message] Signed-off-by: John Stultz --- 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 d93d66f..4b90975 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