diff mbox series

[v2,6/6] drm/i915/display: update audio bw calculations for MTL

Message ID 20241127120715.185348-7-vinod.govindapillai@intel.com (mailing list archive)
State New
Headers show
Series prunue audio frequencies based on bw limits for DP2 | expand

Commit Message

Vinod Govindapillai Nov. 27, 2024, 12:07 p.m. UTC
Update the reference overhead values for audio bw calculations
for MTL onwards

v2: fix the patch description (Kai)

Bspec: 67768
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
---
 drivers/gpu/drm/i915/display/intel_dp.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index efcba6e5c452..25691f87f779 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -109,6 +109,8 @@ 
 /* DP Audio bw params calculations. Bspec: 67768 */
 #define DP_AUDIO_BW_HBLANK_OVERHEAD_AVAIL	64
 #define DP_AUDIO_BW_HBLANK_OVERHEAD_REQ		80
+#define MTL_DP_AUDIO_BW_HBLANK_OVERHEAD_REQ	0
+
 
 /* Constants for DP DSC configurations */
 static const u8 valid_dsc_bpp[] = {6, 8, 10, 12, 15};
@@ -3071,10 +3073,15 @@  intel_dp_audio_compute_bw_limits(struct intel_encoder *encoder,
 	struct intel_display *display = to_intel_display(encoder);
 	struct intel_connector *connector = to_intel_connector(conn_state->connector);
 	int hblank_bytes_avail_overhead = DP_AUDIO_BW_HBLANK_OVERHEAD_AVAIL;
-	int hblank_bytes_req_overhead = DP_AUDIO_BW_HBLANK_OVERHEAD_REQ;
+	int hblank_bytes_req_overhead;
 	int hblank_slots_lanes_bytes;
 	int line_freq_khz;
 
+	if (DISPLAY_VER(display) >= 14)
+		hblank_bytes_req_overhead = MTL_DP_AUDIO_BW_HBLANK_OVERHEAD_REQ;
+	else
+		hblank_bytes_req_overhead = DP_AUDIO_BW_HBLANK_OVERHEAD_REQ;
+
 	intel_dp_compute_audio_bwparams(crtc_state, &line_freq_khz,
 					&hblank_slots_lanes_bytes);
 	drm_dbg_kms(display->drm,