psr_caps
&aconnector->psr_caps);
&aconnector->psr_caps);
struct psr_caps psr_caps;
else if (aconnector->psr_caps.psr_version == 1)
else if (aconnector->psr_caps.psr_version == 2)
amdgpu_dm_psr_fill_caps(link, &aconnector->psr_caps);
void amdgpu_dm_psr_fill_caps(struct dc_link *link, struct psr_caps *caps)
void amdgpu_dm_psr_fill_caps(struct dc_link *link, struct psr_caps *caps);
struct psr_caps caps;
struct psr_caps caps;
struct psr_caps caps;
struct psr_caps caps;
struct psr_caps caps;
struct psr_caps caps;
struct psr_caps caps;
struct psr_caps caps;
struct psr_caps caps;
struct psr_caps caps;
struct psr_caps caps;
struct psr_caps caps;
struct dc_stream_state *stream, struct psr_caps *caps);
struct psr_caps *new_caps);
struct dc_stream_state *stream, struct psr_caps *caps)
struct psr_caps *new_caps)
struct psr_caps *caps;
} psr_caps;
connector->dp.psr_caps.sync_latency + 1,
connector->dp.psr_caps.su_y_granularity;
sink_w_granularity = connector->dp.psr_caps.su_w_granularity;
u8 early_scanline_support = connector->dp.psr_caps.intel_wa_dpcd &
int psr_setup_time = drm_dp_psr_setup_time(connector->dp.psr_caps.dpcd);
connector->dp.psr_caps.dpcd[1]);
if (!connector->dp.psr_caps.su_support || display->params.enable_psr == 1)
str_yes_no(connector->dp.psr_caps.support));
if (connector->dp.psr_caps.support)
seq_printf(m, " [0x%02x]", connector->dp.psr_caps.dpcd[0]);
if (connector->dp.psr_caps.dpcd[0] == DP_PSR2_WITH_Y_COORD_ET_SUPPORTED)
if (!(connector->dp.psr_caps.support || connector->dp.panel_replay_caps.support))
if (!(connector->dp.psr_caps.dpcd[1] & DP_PSR2_SU_GRANULARITY_REQUIRED)) {
connector->dp.psr_caps.su_w_granularity = le16_to_cpu(w);
connector->dp.psr_caps.su_y_granularity = y;
ret = drm_dp_dpcd_read_data(&intel_dp->aux, DP_PSR_SUPPORT, connector->dp.psr_caps.dpcd,
sizeof(connector->dp.psr_caps.dpcd));
if (!connector->dp.psr_caps.dpcd[0])
connector->dp.psr_caps.dpcd[0]);
connector->dp.psr_caps.support = true;
connector->dp.psr_caps.sync_latency = intel_dp_get_sink_sync_latency(intel_dp);
connector->dp.psr_caps.dpcd[0] >= DP_PSR2_WITH_Y_COORD_IS_SUPPORTED) {
bool y_req = connector->dp.psr_caps.dpcd[1] &
connector->dp.psr_caps.su_support = y_req &&
connector->dp.psr_caps.su_support ? "" : "not ");
if (connector->dp.psr_caps.su_support) {
&connector->dp.psr_caps.intel_wa_dpcd);
connector->dp.psr_caps.dpcd[0] == DP_PSR2_WITH_Y_COORD_ET_SUPPORTED;
idle_frames = max(idle_frames, connector->dp.psr_caps.sync_latency + 1);