Commit 2f912935 authored by Weiguang Li's avatar Weiguang Li Committed by Alex Deucher
Browse files

drm/amd/display: Support DRR granularity



[Why&How]
Support DRR granularity for coasting Vtotal calculation

Reviewed-by: default avatarRobin Chen <robin.chen@amd.com>
Reviewed-by: default avatarWenjing Liu <wenjing.liu@amd.com>
Signed-off-by: default avatarWeiguang Li <wei-guang.li@amd.com>
Signed-off-by: default avatarChenyu Chen <chen-yu.chen@amd.com>
Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent cea573a8
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1296,6 +1296,7 @@ struct dpcd_caps {
	/* Indicates the number of SST links supported by MSO (Multi-Stream Output) */
	uint8_t mso_cap_sst_links_supported;
	uint8_t dp_edp_general_cap_2;
	uint16_t drr_granularity;
};

union dpcd_sink_ext_caps {
+7 −0
Original line number Diff line number Diff line
@@ -2219,6 +2219,13 @@ void detect_edp_sink_caps(struct dc_link *link)
				(uint8_t *)&link->dpcd_caps.edp_oled_emission_rate,
				sizeof(link->dpcd_caps.edp_oled_emission_rate));

	/*
	 * Read DRR granularity
	 */
	core_link_read_dpcd(link, DP_SINK_DRR_GRANULARITY,
			(uint8_t *)&link->dpcd_caps.drr_granularity,
			sizeof(link->dpcd_caps.drr_granularity));

	/*
	 * Read Multi-SST (Single Stream Transport) capability
	 * for eDP version 1.4 or higher.
+1 −0
Original line number Diff line number Diff line
@@ -188,6 +188,7 @@ enum dpcd_psr_sink_states {
#define DP_SOURCE_BACKLIGHT_CURRENT_PEAK        0x326
#define DP_SOURCE_BACKLIGHT_CONTROL             0x32E
#define DP_SOURCE_BACKLIGHT_ENABLE              0x32F
#define DP_SINK_DRR_GRANULARITY                 0x33B
#define DP_SOURCE_MINIMUM_HBLANK_SUPPORTED      0x340
#define DP_SINK_PR_REPLAY_STATUS                0x378
#define DP_SINK_PR_PIXEL_DEVIATION_PER_LINE     0x379