[Intel-gfx] [PATCH] drm/i915: Force initial atomic check in all eDP panels

José Roberto de Souza jose.souza at intel.com
Wed Oct 28 21:07:12 UTC 2020


After commit 00e5deb5c4f5 ("drm/i915: Fix encoder lookup during PSR
atomic check") dig_port was not being used but while fixing it I
realized that would be better to mark all CRTCs that has a eDP
connector as needing to have their state computed.
The principal reason is that in future we will support PSR in
multiple panels.
And this is only forcing the state compute if no register change is
need our atomic handling will just ignore this CRTC + connector
during the atomic commit phase.

Cc: Imre Deak <imre.deak at intel.com>
Signed-off-by: José Roberto de Souza <jose.souza at intel.com>
---
 drivers/gpu/drm/i915/display/intel_psr.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index 1576c3722d0b..b5441f0b5b58 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -1875,17 +1875,11 @@ void intel_psr_atomic_check(struct drm_connector *connector,
 			    struct drm_connector_state *new_state)
 {
 	struct drm_i915_private *dev_priv = to_i915(connector->dev);
-	struct intel_connector *intel_connector;
-	struct intel_digital_port *dig_port;
 	struct drm_crtc_state *crtc_state;
 
 	if (!CAN_PSR(dev_priv) || !new_state->crtc ||
-	    !dev_priv->psr.force_mode_changed)
-		return;
-
-	intel_connector = to_intel_connector(connector);
-	dig_port = enc_to_dig_port(to_intel_encoder(new_state->best_encoder));
-	if (dev_priv->psr.dp != &dig_port->dp)
+	    !dev_priv->psr.force_mode_changed ||
+	    connector->connector_type != DRM_MODE_CONNECTOR_eDP)
 		return;
 
 	crtc_state = drm_atomic_get_new_crtc_state(new_state->state,
-- 
2.29.1



More information about the Intel-gfx mailing list