Commit 904eef7d authored by Arun R Murthy's avatar Arun R Murthy Committed by Ankit Nautiyal
Browse files

drm/i915/display: Use the recomended min_hblank values



Use recommended values as per wa_14021694213 to compare with the
calculated value and choose minimum of them.

v2: corrected checkpatch warning and retain the restriction for
min_hblank (Jani)
v3: use calculated value to compare with recomended value and choose
minimum of them (Imre)
v4: As driver supported min bpc is 8, omit the condition check for
bpc6 with ycbcr420. Added a note for the same (Imre)
v5: Add a warn for the unexpected case of 6bpc + uhbr + ycbcr420
v6: Reworded the comments and check fo anything < compressed bpp 8(Imre)
v7: Fix checkpatch warning. (Ankit)

Bspec: 74379
Signed-off-by: default avatarArun R Murthy <arun.r.murthy@intel.com>
Reviewed-by: default avatarImre Deak <imre.deak@intel.com>
Signed-off-by: default avatarAnkit Nautiyal <ankit.k.nautiyal@intel.com>
Link: https://lore.kernel.org/r/20250730-min_hblank-v7-1-179360220ced@intel.com
parent f8b99c61
Loading
Loading
Loading
Loading
+20 −1
Original line number Diff line number Diff line
@@ -3182,7 +3182,26 @@ int intel_dp_compute_min_hblank(struct intel_crtc_state *crtc_state,
	 */
	min_hblank = min_hblank - 2;

	/*
	 * min_hblank formula is undergoing a change, to avoid underrun use the
	 * recomended value in spec to compare with the calculated one and use the
	 * minimum value
	 */
	if (intel_dp_is_uhbr(crtc_state)) {
		/*
		 * Note: Bspec requires a min_hblank of 2 for YCBCR420
		 * with compressed bpp 6, but the minimum compressed bpp
		 * supported by the driver is 8.
		 */
		drm_WARN_ON(display->drm,
			    (crtc_state->dsc.compression_enable &&
			     crtc_state->output_format == INTEL_OUTPUT_FORMAT_YCBCR420 &&
			     crtc_state->dsc.compressed_bpp_x16 < fxp_q4_from_int(8)));
		min_hblank = min(3, min_hblank);
	} else {
		min_hblank = min(10, min_hblank);
	}

	crtc_state->min_hblank = min_hblank;

	return 0;