Commit 65047194 authored by Ankit Nautiyal's avatar Ankit Nautiyal
Browse files

drm/i915/dp: Avoid joiner for eDP if not enabled in VBT

For eDP, enable the Pipe Joiner feature only if VBT explicitly allows it.
If VBT disables the feature, skip joiner for eDP, even if the hardware
supports it.

Closes: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14616


Signed-off-by: default avatarAnkit Nautiyal <ankit.k.nautiyal@intel.com>
Reviewed-by: default avatarSuraj Kandpal <suraj.kandpal@intel.com>
Link: https://patch.msgid.link/20260108124141.1407760-3-ankit.k.nautiyal@intel.com
parent 1b85a9b0
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -494,11 +494,16 @@ bool intel_dp_has_joiner(struct intel_dp *intel_dp)
	struct intel_display *display = to_intel_display(intel_dp);
	struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
	struct intel_encoder *encoder = &intel_dig_port->base;
	struct intel_connector *connector = intel_dp->attached_connector;

	/* eDP MSO is not compatible with joiner */
	if (intel_dp->mso_link_count)
		return false;

	if (intel_dp_is_edp(intel_dp) &&
	    !connector->panel.vbt.edp.pipe_joiner_enable)
		return false;

	return DISPLAY_VER(display) >= 12 ||
		(DISPLAY_VER(display) == 11 &&
		 encoder->port != PORT_A);