Commit 8d0d293c authored by Cruise Hung's avatar Cruise Hung Committed by Alex Deucher
Browse files

drm/amd/display: Add DPIA debug option for zero allocation patch



[WHY & HOW]
The BW zero allocation patch is no longer required.
Add a debug option to enable it in case we encounter an issue.

Reviewed-by: default avatarWenjing Liu <wenjing.liu@amd.com>
Signed-off-by: default avatarCruise Hung <Cruise.Hung@amd.com>
Signed-off-by: default avatarAlex Hung <alex.hung@amd.com>
Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 29e178d1
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -824,7 +824,8 @@ union dpia_debug_options {
		uint32_t disable_mst_dsc_work_around:1; /* bit 3 */
		uint32_t enable_force_tbt3_work_around:1; /* bit 4 */
		uint32_t disable_usb4_pm_support:1; /* bit 5 */
		uint32_t reserved:26;
		uint32_t enable_usb4_bw_zero_alloc_patch:1; /* bit 6 */
		uint32_t reserved:25;
	} bits;
	uint32_t raw;
};
+10 −8
Original line number Diff line number Diff line
@@ -304,14 +304,16 @@ bool link_dpia_enable_usb4_dp_bw_alloc_mode(struct dc_link *link)
			link->dpia_bw_alloc_config.bw_alloc_enabled = true;
			ret = true;

			if (link->dc->debug.dpia_debug.bits.enable_usb4_bw_zero_alloc_patch) {
				/*
			 * During DP tunnel creation, CM preallocates BW and reduces estimated BW of other
			 * DPIA. CM release preallocation only when allocation is complete. Do zero alloc
			 * to make the CM to release preallocation and update estimated BW correctly for
			 * all DPIAs per host router
				 * During DP tunnel creation, the CM preallocates BW
				 * and reduces the estimated BW of other DPIAs.
				 * The CM releases the preallocation only when the allocation is complete.
				 * Perform a zero allocation to make the CM release the preallocation
				 * and correctly update the estimated BW for all DPIAs per host router.
				 */
			// TODO: Zero allocation can be removed once the MSFT CM fix has been released
				link_dp_dpia_allocate_usb4_bandwidth_for_stream(link, 0);
			}
		} else
			DC_LOG_DEBUG("%s:  link[%d] failed to enable DPTX BW allocation mode", __func__, link->link_index);
	}