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

drm/i915/dp_mst: Use output_format to get the final link bpp



The final link bpp used to calculate the m_n values depend on the
output_format. Though the output_format is set to RGB for MST case and
the link bpp will be same as the pipe bpp, for the sake of semantics,
lets calculate the m_n values with the link bpp, instead of pipe_bpp.

Signed-off-by: default avatarAnkit Nautiyal <ankit.k.nautiyal@intel.com>
Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230817142459.89764-4-ankit.k.nautiyal@intel.com
parent 3a4b4809
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -965,7 +965,7 @@ int intel_dp_min_bpp(enum intel_output_format output_format)
		return 8 * 3;
}

static int intel_dp_output_bpp(enum intel_output_format output_format, int bpp)
int intel_dp_output_bpp(enum intel_output_format output_format, int bpp)
{
	/*
	 * bpp value was assumed to RGB format. And YCbCr 4:2:0 output
+1 −0
Original line number Diff line number Diff line
@@ -144,5 +144,6 @@ void intel_dp_pcon_dsc_configure(struct intel_dp *intel_dp,
void intel_dp_phy_test(struct intel_encoder *encoder);

void intel_dp_wait_source_oui(struct intel_dp *intel_dp);
int intel_dp_output_bpp(enum intel_output_format output_format, int bpp);

#endif /* __INTEL_DP_H__ */
+4 −1
Original line number Diff line number Diff line
@@ -155,6 +155,7 @@ static int intel_dp_mst_compute_link_config(struct intel_encoder *encoder,
	const struct drm_display_mode *adjusted_mode =
		&crtc_state->hw.adjusted_mode;
	int slots = -EINVAL;
	int link_bpp;

	slots = intel_dp_mst_find_vcpi_slots_for_bpp(encoder, crtc_state, limits->max_bpp,
						     limits->min_bpp, limits,
@@ -163,7 +164,9 @@ static int intel_dp_mst_compute_link_config(struct intel_encoder *encoder,
	if (slots < 0)
		return slots;

	intel_link_compute_m_n(crtc_state->pipe_bpp,
	link_bpp = intel_dp_output_bpp(crtc_state->output_format, crtc_state->pipe_bpp);

	intel_link_compute_m_n(link_bpp,
			       crtc_state->lane_count,
			       adjusted_mode->crtc_clock,
			       crtc_state->port_clock,