From patchwork Sat Dec 10 02:49:19 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Caesar Wang X-Patchwork-Id: 9469165 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 500FC607DA for ; Sat, 10 Dec 2016 02:50:41 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 41C37285CE for ; Sat, 10 Dec 2016 02:50:41 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 34D7D2860A; Sat, 10 Dec 2016 02:50:41 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id BCE99285CE for ; Sat, 10 Dec 2016 02:50:40 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.85_2 #1 (Red Hat Linux)) id 1cFXkB-0005tS-Ul; Sat, 10 Dec 2016 02:50:35 +0000 Received: from mail-pf0-f196.google.com ([209.85.192.196]) by bombadil.infradead.org with esmtps (Exim 4.85_2 #1 (Red Hat Linux)) id 1cFXk9-00053H-AX for linux-rockchip@lists.infradead.org; Sat, 10 Dec 2016 02:50:34 +0000 Received: by mail-pf0-f196.google.com with SMTP id i88so1861846pfk.2 for ; Fri, 09 Dec 2016 18:50:12 -0800 (PST) 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; bh=v+VdeSD9B2YuUsXP+saEKW94TfmvMedUx2l70h5aUus=; b=hHMPwjQ+OlXYFC1/2Ls6upe2hlKgRFeJg6bnwk7TPqf0NDtMlISLGzzlJqlLaX6+xG 05/7Xer4oXWv0ARmQUxJvJgbcrvH5vJuNGQU7bYMSllOrAV5Ynj1RD6RZI0BZUA2kZmB wEmlhrnjbPIZp315xnS0u+FR3PTkRzd5eEOrBLIVeZDwz0c4smGjnAy+XIvJVUJGmBAA ZCgYB2V6b3bABnhmpVvZnkbkZcseB15uTnzyzGNYJq9YP384pLBpYMC1ODfZ2kv1eYFj TFGxhxUigYOH3RrHz0rNeZyvv8A2Y4sJKOpCxrVmhSBlXeYWulLCqpppyE9XBwSnlwap ELYg== X-Gm-Message-State: AKaTC008Q9UcHCeBqfrrwicSfzyXqyBaYg2IPSltL+eEtBGPS79uWRmi//wvbvmd8jdqTQ== X-Received: by 10.99.103.1 with SMTP id b1mr151547400pgc.58.1481338211969; Fri, 09 Dec 2016 18:50:11 -0800 (PST) Received: from localhost.localdomain ([104.37.5.162]) by smtp.gmail.com with ESMTPSA id g82sm60380841pfb.43.2016.12.09.18.49.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 09 Dec 2016 18:50:10 -0800 (PST) From: Caesar Wang To: seanpaul@chromium.org Subject: [PATCH] drm/bridge: analogix_dp: set the DPCD600 during disabling the psr Date: Sat, 10 Dec 2016 10:49:19 +0800 Message-Id: <1481338159-7189-1-git-send-email-wxt@rock-chips.com> X-Mailer: git-send-email 2.7.4 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20161209_185033_444519_D6C496FE X-CRM114-Status: UNSURE ( 9.20 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: heiko@sntech.de, tomeu.vizoso@collabora.com, airlied@linux.ie, daniel.vetter@ffwll.ch, briannorris@chromium.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-rockchip@lists.infradead.org, gustavo.padovan@collabora.co.uk, Caesar Wang MIME-Version: 1.0 Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP Look likes, the BOE panel FW didn't ack the DPCD600 signal from the host device, that will cause the panel hang on the startup display. The root cause we use the fast link mode during enter and exit the psr, this issue is gone if switching the fast link to main link mode. Signed-off-by: Caesar Wang --- drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c index 6e0447f..6a5347b 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c @@ -133,6 +133,7 @@ int analogix_dp_disable_psr(struct device *dev) { struct analogix_dp_device *dp = dev_get_drvdata(dev); struct edp_vsc_psr psr_vsc; + int ret; if (!dp->psr_support) return -EINVAL; @@ -147,6 +148,10 @@ int analogix_dp_disable_psr(struct device *dev) psr_vsc.DB0 = 0; psr_vsc.DB1 = 0; + ret = drm_dp_dpcd_writeb(&dp->aux, DP_SET_POWER, DP_SET_POWER_D0); + if (ret != 1) + dev_err(dp->dev, "Failed to set DP Power0 %d\n", ret); + analogix_dp_send_psr_spd(dp, &psr_vsc); return 0; }