From patchwork Fri Feb 24 12:54:52 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John Keeping X-Patchwork-Id: 9590163 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 AE035601AE for ; Fri, 24 Feb 2017 13:03:21 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 71F5B28753 for ; Fri, 24 Feb 2017 13:03:21 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 66B522875B; Fri, 24 Feb 2017 13:03:21 +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=-1.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID autolearn=unavailable version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 2897828753 for ; Fri, 24 Feb 2017 13:03:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:References: In-Reply-To:Message-Id:Date:Subject:To:From:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=DGNTc+qjDcStop4zIP+WoMkksmreIUGf/C9qs0aq5hU=; b=PuSmtpOz0WSZXUrG39pT414Qwi iT3GZxIsV3QxS1c6W7sMLEkUWIdZH16ta9Eqzn45KHQi8zvGfMcgh9974++7a8vpxARw+9hAg0Lcj E1wELPjdUmfnXqWLGKuMBSja4JhOCXErTergj3cqPQ9pi1z+YHFEVcCflyOZvx461bBfglAcRhwNw c5je+ALOcOA121epTGvipuSjyiz4PFbsNS74PKISuUtTxv65Q0iaFsD5fz0Oi4am1DAaD2EhYqtl0 iPDGwKXa6E2GMTGd4AbLswxFp8hVkXz3StkMX1+ggtOfoAZyk64rZgZkoNO+/7Rut7r2DiI+0ij32 6JI2lwjg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux)) id 1chFWq-0003sm-Hq; Fri, 24 Feb 2017 13:03:20 +0000 Received: from merlin.infradead.org ([2001:4978:20e::2]) by bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1chFPi-0006Y6-8Q; Fri, 24 Feb 2017 12:55:58 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=merlin.20170209; h=References:In-Reply-To:Message-Id:Date: Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=B/7IPcCNJIDoN3Lx/EdwDf+cZS6JMKmHpz6gRNYQkos=; b=fUgVGMa2vDt3e/q0IBc7rVxz1 BSpPVNHA3XajLGxnMURV8cx29EwvUKDQdgvguPMap87ZkNFf/WHOx6CCCSloD4rt/nDF2oeF9n92v lVTRjhI0g//XRrvaTAJbwFEMnrab67rk42rBMdNpfeHX1qr1gBmqn3D1kvJ097Z2RafHo3FtYd95v +z1PDwHN1y05VwzrJo60bABgxlFnvv1HjAByn1G77NOpdgrRX/XaPUXMpjQJ9zSHIh+Us89a9f5up Y0IWW8hx2Gdj/u+2venFj0v1S4e3GUPmjA3T1LCIc2b6m0kShjl7dhZCOAvx/uvVAqh/Pm5lnXFqg S157cC0DA==; Received: from dougal.metanate.com ([90.155.101.14] helo=metanate.com) by merlin.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1chFPd-00039R-Kc; Fri, 24 Feb 2017 12:55:57 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=simple/simple; d=metanate.com; s=stronger; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=b2Dao2KYa0nc0+B6b9qNHeBH7EmGILWmlpCshC29hPw=; b=LP6YnAcQtwHq5a1t4Qn0m6xEK/lNW9deVZwB8YtjVIsCD/8FmO22REKygldY6Bzz96Mvir6rM+h+bigKpAb2g9vPfAa61PslaqAglbe3W2HSNVzzjAfBwtkHkiIKIrtE7SU+EkyI1bB4MIi+4Zc8gd3DwrV400MlTkkW5UAMZ3Rw8+CfcNvfQe3U/E88a0Tr6C7FJC1Yb5EUpvoB3wrjtxVCNGuqRh0IDIXJ5//dpMhjdxkVwFRRSZpI8T6f8gU2U/CU6eOS2KkvNfpQa+sosN3WQN6nT3CuQMwl8bQFdcE6K604QOuzh9a8AFwHqyifHyO3Rf4m/P8YV1KyuW2Wog==; Received: from brian ([192.168.88.1] helo=leela.metanate.com) by shrek.metanate.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-GCM-SHA256:128) (Exim 4.83_RC2) (envelope-from ) id 1chFP0-0006ml-F5; Fri, 24 Feb 2017 12:55:14 +0000 From: John Keeping To: Mark Yao Subject: [PATCH v4 09/23] drm/rockchip: dw-mipi-dsi: only request HS clock when required Date: Fri, 24 Feb 2017 12:54:52 +0000 Message-Id: <20170224125506.21533-10-john@metanate.com> X-Mailer: git-send-email 2.12.0.rc0.230.gf625d4cdb9.dirty In-Reply-To: <20170224125506.21533-1-john@metanate.com> References: <20170224125506.21533-1-john@metanate.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20170224_075553_881201_FB227270 X-CRM114-Status: UNSURE ( 8.29 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-rockchip@lists.infradead.org, Sean Paul , Chris Zhong , John Keeping , linux-arm-kernel@lists.infradead.org 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 Requesting the HS clock from the PHY before we initialize it causes an invalid signal to be sent out since the input clock is not yet configured. The PHY databook suggests only asserting this signal when performing HS transfers, so let's do that. Signed-off-by: John Keeping Reviewed-by: Chris Zhong Reviewed-by: Sean Paul --- v4: - Add Sean's Reviewed-by v3: - Add Chris' Reviewed-by Unchanged in v2 --- drivers/gpu/drm/rockchip/dw-mipi-dsi.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw-mipi-dsi.c b/drivers/gpu/drm/rockchip/dw-mipi-dsi.c index a20d669b73ee..1b6fce2600f3 100644 --- a/drivers/gpu/drm/rockchip/dw-mipi-dsi.c +++ b/drivers/gpu/drm/rockchip/dw-mipi-dsi.c @@ -545,13 +545,15 @@ static int dw_mipi_dsi_host_detach(struct mipi_dsi_host *host, static void dw_mipi_message_config(struct dw_mipi_dsi *dsi, const struct mipi_dsi_msg *msg) { + bool lpm = msg->flags & MIPI_DSI_MSG_USE_LPM; u32 val = 0; if (msg->flags & MIPI_DSI_MSG_REQ_ACK) val |= EN_ACK_RQST; - if (msg->flags & MIPI_DSI_MSG_USE_LPM) + if (lpm) val |= CMD_MODE_ALL_LP; + dsi_write(dsi, DSI_LPCLK_CTRL, lpm ? 0 : PHY_TXREQUESTCLKHS); dsi_write(dsi, DSI_CMD_MODE_CFG, val); } @@ -695,6 +697,7 @@ static void dw_mipi_dsi_set_mode(struct dw_mipi_dsi *dsi, dsi_write(dsi, DSI_PWR_UP, RESET); dsi_write(dsi, DSI_MODE_CFG, ENABLE_VIDEO_MODE); dw_mipi_dsi_video_mode_config(dsi); + dsi_write(dsi, DSI_LPCLK_CTRL, PHY_TXREQUESTCLKHS); dsi_write(dsi, DSI_PWR_UP, POWERUP); } } @@ -712,7 +715,6 @@ static void dw_mipi_dsi_init(struct dw_mipi_dsi *dsi) | PHY_RSTZ | PHY_SHUTDOWNZ); dsi_write(dsi, DSI_CLKMGR_CFG, TO_CLK_DIVIDSION(10) | TX_ESC_CLK_DIVIDSION(7)); - dsi_write(dsi, DSI_LPCLK_CTRL, PHY_TXREQUESTCLKHS); } static void dw_mipi_dsi_dpi_config(struct dw_mipi_dsi *dsi,