Enable Adaptive Sync SDP for Panel replay + auxless ALPM. First few patches are fixes in existing AS SDP enablement. Later patches add the support to send AS SDP for Panel replay with Link ON and with auxless ALPM (Link-Off).
This series is in continuation from discussions in [1] [2] and more recent [3]: Apart from few patches from [3] new changes include: - Add AS SDP version and PR and VRR specific bits in drm_dp.h. - Modify AS SDP compute config to accomodate PR with Link On and Link Off. - Program Downspread Ctrl DPCD bits. - Make way for T1 and T2 AS SDP transmission timing/position. Note: Currently I have enabled AS SDP for either VRR or Panel Replay. However in view of the optimized guardband, perhaps we should always enable AS SDP whenever supported. That way we will always take the AS SDP constraints into account while computing the optimized guardband. [1] https://lore.kernel.org/all/[email protected]/ [2] https://lore.kernel.org/all/[email protected]/ [3] https://lore.kernel.org/intel-gfx/[email protected]/T/#m6e8beab2cc3b6ff9d61f740f107d83a2f4e08114 Ankit Nautiyal (14): drm/i915/dp: Fix readback for target_rr in Adaptive Sync SDP drm/i915/vrr: Avoid vrr for PCON with HDMI2.1 sink drm/i915/dp: Add a helper to decide if AS SDP is needed drm/i915/dp: Update the helper intel_dp_needs_as_sdp() for CMRR include/drm/display/dp: Add field for storing AS SDP version drm/i915/dp: Use version field of AS SDP data structure drm/i915/dp: Compute AS SDP after PSR and LOBF drm/i915/dp: Add AS SDP support for PR with link ON drm/i915/psr: Add helper to check if PR is with link OFF drm/i915/dp: Set relevant Downspread Ctrl DPCD bits for PR + Auxless ALPM drm/i915/dp: Program AS SDP DB[1:0] for PR with Link off include/drm/display/dp: Add DPCD registers for configuring Panel Replay + VRR drm/i915/display: Add member to store AS SDP transmission time drm/i915/dp: Account for AS_SDP guardband only when enabled drivers/gpu/drm/display/drm_dp_helper.c | 1 + drivers/gpu/drm/i915/display/intel_alpm.c | 21 +++++++- drivers/gpu/drm/i915/display/intel_display.c | 3 +- .../drm/i915/display/intel_display_types.h | 1 + drivers/gpu/drm/i915/display/intel_dp.c | 48 ++++++++++++++----- .../drm/i915/display/intel_dp_link_training.c | 10 +++- .../drm/i915/display/intel_dp_link_training.h | 3 +- drivers/gpu/drm/i915/display/intel_dp_mst.c | 2 +- drivers/gpu/drm/i915/display/intel_psr.c | 13 +++++ drivers/gpu/drm/i915/display/intel_psr.h | 1 + drivers/gpu/drm/i915/display/intel_vrr.c | 10 ++++ include/drm/display/drm_dp.h | 9 ++++ include/drm/display/drm_dp_helper.h | 1 + 13 files changed, 105 insertions(+), 18 deletions(-) -- 2.45.2
