Subject: linux-next: build failure after merge of the drm-intel tree

From: Stephen Rothwell <[email-masked]>
Date: Thu, 29 Aug 2024 13:46:38 +1000

Hi all,

After merging the drm-intel tree, today's linux-next build (x86_64
allmodconfig) failed like this:

drivers/gpu/drm/i915/display/intel_dp_mst.c:2118:6: error: redefinition of 'intel_dp_mst_verify_dpcd_state'
 2118 | bool intel_dp_mst_verify_dpcd_state(struct intel_dp *intel_dp)
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/display/intel_dp_mst.c:2048:6: note: previous definition of 'intel_dp_mst_verify_dpcd_state' with type 'bool(struct intel_dp *)' {aka '_Bool(struct intel_dp *)'}
 2048 | bool intel_dp_mst_verify_dpcd_state(struct intel_dp *intel_dp)
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Caused by commit

  594cf78dc36f ("drm/i915/dp_mst: Fix MST state after a sink reset")

interacting with my merge of the drm tree and commit

  a2ccc33b88e2 ("drm/i915/dp_mst: Fix MST state after a sink reset")

from the drm-intel-fixes tree.

I have applied the following patch for today.

From: Stephen Rothwell <[email-masked]>
Date: Thu, 29 Aug 2024 11:24:26 +1000
Subject: [PATCH] fix up for "drm/i915/dp_mst: Fix MST state after a sink reset"

interacting with "Merge branch 'drm-next' of
https://gitlab.freedesktop.org/drm/kernel.git" from linux-next and
"drm/i915/dp_mst: Fix MST state after a sink reset" from drm-intel-fixes.

Signed-off-by: Stephen Rothwell <[email-masked]>
---
 drivers/gpu/drm/i915/display/intel_dp_mst.c | 40 ---------------------
 1 file changed, 40 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c b/drivers/gpu/drm/i915/display/intel_dp_mst.c
index 639190ee6ff9..696b6ee52014 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_mst.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c
@@ -2102,43 +2102,3 @@ void intel_dp_mst_prepare_probe(struct intel_dp *intel_dp)
 
 	intel_mst_set_probed_link_params(intel_dp, link_rate, lane_count);
 }
-
-/*
- * intel_dp_mst_verify_dpcd_state - verify the MST SW enabled state wrt. the DPCD
- * @intel_dp: DP port object
- *
- * Verify if @intel_dp's MST enabled SW state matches the corresponding DPCD
- * state. A long HPD pulse - not long enough to be detected as a disconnected
- * state - could've reset the DPCD state, which requires tearing
- * down/recreating the MST topology.
- *
- * Returns %true if the SW MST enabled and DPCD states match, %false
- * otherwise.
- */
-bool intel_dp_mst_verify_dpcd_state(struct intel_dp *intel_dp)
-{
-	struct intel_display *display = to_intel_display(intel_dp);
-	struct intel_connector *connector = intel_dp->attached_connector;
-	struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
-	struct intel_encoder *encoder = &dig_port->base;
-	int ret;
-	u8 val;
-
-	if (!intel_dp->is_mst)
-		return true;
-
-	ret = drm_dp_dpcd_readb(intel_dp->mst_mgr.aux, DP_MSTM_CTRL, &val);
-
-	/* Adjust the expected register value for SST + SideBand. */
-	if (ret < 0 || val != (DP_MST_EN | DP_UP_REQ_EN | DP_UPSTREAM_IS_SRC)) {
-		drm_dbg_kms(display->drm,
-			    "[CONNECTOR:%d:%s][ENCODER:%d:%s] MST mode got reset, removing topology (ret=%d, ctrl=0x%02x)\n",
-			    connector->base.base.id, connector->base.name,
-			    encoder->base.base.id, encoder->base.name,
-			    ret, val);
-
-		return false;
-	}
-
-	return true;
-}
-- 
2.45.2

-- 
Cheers,
Stephen Rothwell