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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxx>
Reviewed-by: Kai Vehmanen <kai.vehmanen@xxxxxxxxxxxxxxx>
---
 drivers/gpu/drm/i915/display/intel_dp.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

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,
-- 
2.34.1




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux