From patchwork Fri Mar 10 04:32:32 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Sean Paul X-Patchwork-Id: 9614699 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 9B74560415 for ; Fri, 10 Mar 2017 04:41:36 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8D50A28653 for ; Fri, 10 Mar 2017 04:41:36 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 81FD0286F3; Fri, 10 Mar 2017 04:41:36 +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=ham 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 2C2BF286EF for ; Fri, 10 Mar 2017 04:41:36 +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:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version: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=w//KoC0t/eDZCN0rHZ1tmcxrjeCMiRBad1w8j9g45rs=; b=htdYuFDpdhFuPy i16D3dF8XkAhdNSpU+oypd9HWPLBAqWjJccovv8Z5aVjV2KfPd/0oiAQ4p/DI+D0n/g9wSuqD7A6N WZ5ABbV4nJCBbccFbru/A5smb/RlXp5f4GP/F8OFyfDYdZ5umFF82VEZF0YlgR2qSBf/StJ8kTMrq +06TEZGmnkjJnExG1kmvzLkHlBmN3C83NVoBwg8PxwmiE6bVPrrA/jaCgnbRsyc1aE03C4Pj38nxm nAV4gdmdjCu7gEu4dVun9WskLCFICYjDMjnUKXXEUhPnW1pk49ZM+8xcucreu9umaVrTLwPldvpXF +3ci1qsqflXD6RcvlEmQ==; 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 1cmCMx-0004oa-9D; Fri, 10 Mar 2017 04:41:35 +0000 Received: from mail-qk0-x22e.google.com ([2607:f8b0:400d:c09::22e]) by bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1cmCJU-0001ob-7R for linux-rockchip@lists.infradead.org; Fri, 10 Mar 2017 04:38:09 +0000 Received: by mail-qk0-x22e.google.com with SMTP id v125so148925840qkh.2 for ; Thu, 09 Mar 2017 20:37:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=VEBOmKbYBgLWwwguVTphh/lkjEE3v9SgXAvEFCvjMqs=; b=ml5/bdUHVqzP5BXDySCAw5LBGDXASyg5ZxzgChGUMyeGw1A/GysdklxW8DASVjQhH0 UxGBd/4bfopSB+mt0/WJbW08UjnWNgRB+W1C1QkykIBKqTU8LuqjkB+LWeAVgNMNZQYL 4una7eMsOkHgjSoFI/UiYI1S9qDxcb/w+SSAk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=VEBOmKbYBgLWwwguVTphh/lkjEE3v9SgXAvEFCvjMqs=; b=MrmoO3cLqWUq5nxki2hHc8s5BFmAb9LL4ZvtvQgz6OnDqh+3upsJoZKjxpgZgFIOrR 3y0XRKIMRB5rz+RF6abh8bwPIEtPbyNICEh0KgfiaB8+84q0KjZ+yKI3b/dykdKTxzWN u1CHYHffM+k4+/bOQ7ScW50YGnMaz1W4/o4linIyeybhlTv1A6Bzmc0VJ9z0aMld3U3f bPo3CyxIo9dYbCM2RjlRoo1NmUMOydBeggn6TAfjnQiOSDkr40FySHLdQsOXhHvXnCes qHsS83NncbwA27nPgIh4ViDVllMOx+tEAWwNx1reu+gKU4uBUrfJezaU04rkoKjWkqtU kuvA== X-Gm-Message-State: AMke39nACfIk5Ahs3I3plp9aSHwawih3M5eD+AjuVwEp3Y5mdOBLGkgL87P8nz1vYFL1NcPY X-Received: by 10.55.17.206 with SMTP id 75mr18452145qkr.156.1489120659328; Thu, 09 Mar 2017 20:37:39 -0800 (PST) Received: from boxwood.roam.corp.google.com (cpe-75-189-128-87.nc.res.rr.com. [75.189.128.87]) by smtp.gmail.com with ESMTPSA id n19sm5697731qtn.35.2017.03.09.20.37.37 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 09 Mar 2017 20:37:38 -0800 (PST) From: Sean Paul To: linux-rockchip@lists.infradead.org, dri-devel@lists.freedesktop.org Subject: [PATCH 17/41] drm/bridge: analogix_dp: Don't use fast link training when panel just powered up Date: Thu, 9 Mar 2017 23:32:32 -0500 Message-Id: <20170310043305.17216-18-seanpaul@chromium.org> X-Mailer: git-send-email 2.12.0.246.ga2ecc84866-goog In-Reply-To: <20170310043305.17216-1-seanpaul@chromium.org> References: <20170310043305.17216-1-seanpaul@chromium.org> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20170309_203800_942973_6FB5F994 X-CRM114-Status: GOOD ( 12.05 ) 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: Archit Taneja , zain wang , Lin Huang , Tomeu Vizoso , David Airlie , Douglas Anderson , Krzysztof Kozlowski , Sean Paul , Yakir Yang , =?UTF-8?q?St=C3=A9phane=20Marchesin?= Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP From: zain wang Panel would reset it's setting when it power down. It would forget the last successed link training setting. So we can't use the last successful link training setting to do fast link training. Let's reset fast_train_enable in analogix_dp_bridge_disable(); Cc: Stéphane Marchesin Signed-off-by: zain wang Signed-off-by: Sean Paul --- drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 9 +++++---- drivers/gpu/drm/bridge/analogix/analogix_dp_core.h | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c index 52218d743059..919ae68e7670 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c @@ -582,14 +582,14 @@ static int analogix_dp_process_equalizer_training(struct analogix_dp_device *dp) if (retval != 1) { dev_err(dp->dev, "failed to read downspread %d\n", retval); - dp->fast_train_support = false; + dp->fast_train_enable = false; } else { - dp->fast_train_support = + dp->fast_train_enable = (spread & DP_NO_AUX_HANDSHAKE_LINK_TRAINING) ? true : false; } dev_dbg(dp->dev, "fast link training %s\n", - dp->fast_train_support ? "supported" : "unsupported"); + dp->fast_train_enable ? "supported" : "unsupported"); /* set enhanced mode if available */ analogix_dp_set_enhanced_mode(dp); @@ -796,7 +796,7 @@ static int analogix_dp_fast_link_train(struct analogix_dp_device *dp) static int analogix_dp_train_link(struct analogix_dp_device *dp) { - if (dp->fast_train_support) + if (dp->fast_train_enable) return analogix_dp_fast_link_train(dp); return analogix_dp_full_link_train(dp, dp->video_info.max_lane_count, @@ -1200,6 +1200,7 @@ static void analogix_dp_bridge_disable(struct drm_bridge *bridge) DRM_ERROR("failed to setup the panel ret = %d\n", ret); dp->psr_enable = false; + dp->fast_train_enable = false; dp->dpms_mode = DRM_MODE_DPMS_OFF; } diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.h b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.h index 6a96ef7e6934..403ff853464b 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.h +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.h @@ -173,7 +173,7 @@ struct analogix_dp_device { int hpd_gpio; bool force_hpd; bool psr_enable; - bool fast_train_support; + bool fast_train_enable; struct mutex panel_lock; bool panel_is_modeset;