From patchwork Mon Oct 3 23:04:10 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: jim.bride@linux.intel.com X-Patchwork-Id: 9361005 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 748D9601C0 for ; Mon, 3 Oct 2016 23:05:19 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5051328AAC for ; Mon, 3 Oct 2016 23:05:19 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4397128AAE; Mon, 3 Oct 2016 23:05:19 +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 gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id D782428AAC for ; Mon, 3 Oct 2016 23:05:18 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id A5F4B6E537; Mon, 3 Oct 2016 23:05:15 +0000 (UTC) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6EC456E1ED for ; Mon, 3 Oct 2016 23:05:14 +0000 (UTC) Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga101.fm.intel.com with ESMTP; 03 Oct 2016 16:05:14 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,292,1473145200"; d="scan'208";a="15919094" Received: from shiv.jf.intel.com ([10.7.198.83]) by orsmga005.jf.intel.com with ESMTP; 03 Oct 2016 16:05:12 -0700 From: Jim Bride To: intel-gfx@lists.freedesktop.org Date: Mon, 3 Oct 2016 16:04:10 -0700 Message-Id: <1475535850-6461-1-git-send-email-jim.bride@linux.intel.com> X-Mailer: git-send-email 2.7.4 Cc: rodrigo.vivi@intel.com Subject: [Intel-gfx] [PATCH RFC] drm/i915/dp/psr: Enable n + 1 active frame capture for PSR X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Virus-Scanned: ClamAV using ClamSMTP On some system + panel combinations the vblank interval is too short for PSR setup to occur. While reading the eDP v1.3 spec I saw that Figure 4-7 describes a solution to this very problem by configuring PSR to capture the second active frame after the PSR entry indication in order to provide more time for PSR setup activities. This patch changes our PSR configuration to indicate that the sink should capture the second active frame after PSR entry indication. Cc: jani.nikula@linux.intel.com Cc: ville.syrjala@linux.intel.com Cc: rodrigo.vivi@intel.com Signed-off-by: Jim Bride --- drivers/gpu/drm/i915/intel_psr.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_psr.c b/drivers/gpu/drm/i915/intel_psr.c index 108ba1e..4d7e2a8 100644 --- a/drivers/gpu/drm/i915/intel_psr.c +++ b/drivers/gpu/drm/i915/intel_psr.c @@ -199,10 +199,11 @@ static void hsw_psr_enable_sink(struct intel_dp *intel_dp) if (dev_priv->psr.link_standby) drm_dp_dpcd_writeb(&intel_dp->aux, DP_PSR_EN_CFG, - DP_PSR_ENABLE | DP_PSR_MAIN_LINK_ACTIVE); + DP_PSR_ENABLE | DP_PSR_MAIN_LINK_ACTIVE | + DP_PSR_FRAME_CAPTURE); else drm_dp_dpcd_writeb(&intel_dp->aux, DP_PSR_EN_CFG, - DP_PSR_ENABLE); + DP_PSR_ENABLE | DP_PSR_FRAME_CAPTURE); aux_ctl_reg = psr_aux_ctl_reg(dev_priv, port);