Commit b330568f authored by Jouni Högander's avatar Jouni Högander

drm/i915/psr: Add Early Transport into psr debugfs interface

We want to have sink Early Transport capability and usage in our psr
debugfs status interface.

v4: use su_region_et_enabled instead of psr2_su_region_et_valid
v3: remove extra space from "PSR mode:  disabled"
v2: printout "Selective Update enabled (Early Transport)" instead of
    "Selective Update Early Transport enabled"
Reviewed-by: default avatarAnimesh Manna <animesh.manna@intel.com>
Signed-off-by: default avatarJouni Högander <jouni.hogander@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240529093849.1016172-7-jouni.hogander@intel.com
parent 04d0aed0
...@@ -3332,25 +3332,44 @@ static void intel_psr_sink_capability(struct intel_dp *intel_dp, ...@@ -3332,25 +3332,44 @@ static void intel_psr_sink_capability(struct intel_dp *intel_dp,
if (psr->sink_support) if (psr->sink_support)
seq_printf(m, " [0x%02x]", intel_dp->psr_dpcd[0]); seq_printf(m, " [0x%02x]", intel_dp->psr_dpcd[0]);
if (intel_dp->psr_dpcd[0] == DP_PSR2_WITH_Y_COORD_ET_SUPPORTED)
seq_printf(m, " (Early Transport)");
seq_printf(m, ", Panel Replay = %s", str_yes_no(psr->sink_panel_replay_support)); seq_printf(m, ", Panel Replay = %s", str_yes_no(psr->sink_panel_replay_support));
seq_printf(m, ", Panel Replay Selective Update = %s\n", seq_printf(m, ", Panel Replay Selective Update = %s",
str_yes_no(psr->sink_panel_replay_su_support)); str_yes_no(psr->sink_panel_replay_su_support));
if (intel_dp->pr_dpcd & DP_PANEL_REPLAY_EARLY_TRANSPORT_SUPPORT)
seq_printf(m, " (Early Transport)");
seq_printf(m, "\n");
} }
static void intel_psr_print_mode(struct intel_dp *intel_dp, static void intel_psr_print_mode(struct intel_dp *intel_dp,
struct seq_file *m) struct seq_file *m)
{ {
struct intel_psr *psr = &intel_dp->psr; struct intel_psr *psr = &intel_dp->psr;
const char *status; const char *status, *mode, *region_et;
if (psr->panel_replay_enabled) if (psr->enabled)
status = psr->sel_update_enabled ? "Panel Replay Selective Update Enabled" : status = " enabled";
"Panel Replay Enabled";
else if (psr->enabled)
status = psr->sel_update_enabled ? "PSR2" : "PSR1";
else else
status = "disabled"; status = "disabled";
seq_printf(m, "PSR mode: %s\n", status);
if (psr->panel_replay_enabled && psr->sel_update_enabled)
mode = "Panel Replay Selective Update";
else if (psr->panel_replay_enabled)
mode = "Panel Replay";
else if (psr->sel_update_enabled)
mode = "PSR2";
else if (psr->enabled)
mode = "PSR1";
else
mode = "";
if (psr->su_region_et_enabled)
region_et = " (Early Transport)";
else
region_et = "";
seq_printf(m, "PSR mode: %s%s%s\n", mode, status, region_et);
} }
static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp) static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment