[Intel-gfx] [PATCH] drm/i915/psr : Add psr1 live status
Jani Nikula
jani.nikula at linux.intel.com
Tue Jun 19 15:03:46 UTC 2018
On Tue, 12 Jun 2018, Dhinakaran Pandiyan <dhinakaran.pandiyan at intel.com> wrote:
> On Fri, 2018-05-25 at 11:50 +0530, vathsala nagaraju wrote:
>> From: Vathsala Nagaraju <vathsala.nagaraju at intel.com>
>>
>> Prints live state of psr1.Extending the existing
>> PSR2 live state function to cover psr1.
>>
>> Tested on KBL with psr2 and psr1 panel.
>>
>> v2: rebase
>> v3: DK
>> Rename psr2_live_status to psr_source_status.
>> v4: DK
>> Move EDP_PSR_STATUS_STATE_SHIFT below EDP_PSR_STATUS_STATE_MASK.
>> Pass seq to psr_source_status, handle source status prints in
>> psr_source_status.
>> v5: Fixed CI warning messages
>>
>> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
>> Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan at intel.com>
>>
>
> nit: Noticed an extra space in the title before the colon.
> Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan at intel.com>
I'm afraid this no longer applies cleanly. Please resend if it's still
needed.
BR,
Jani.
>
>> Signed-off-by: Vathsala Nagaraju <vathsala.nagaraju at intel.com>
>> ---
>> drivers/gpu/drm/i915/i915_debugfs.c | 72 ++++++++++++++++++++++++---
>> ----------
>> drivers/gpu/drm/i915/i915_reg.h | 1 +
>> 2 files changed, 49 insertions(+), 24 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_debugfs.c
>> b/drivers/gpu/drm/i915/i915_debugfs.c
>> index 5251544..1d45cb9 100644
>> --- a/drivers/gpu/drm/i915/i915_debugfs.c
>> +++ b/drivers/gpu/drm/i915/i915_debugfs.c
>> @@ -2596,27 +2596,55 @@ static int i915_guc_log_relay_release(struct
>> inode *inode, struct file *file)
>> .release = i915_guc_log_relay_release,
>> };
>>
>> -static const char *psr2_live_status(u32 val)
>> -{
>> - static const char * const live_status[] = {
>> - "IDLE",
>> - "CAPTURE",
>> - "CAPTURE_FS",
>> - "SLEEP",
>> - "BUFON_FW",
>> - "ML_UP",
>> - "SU_STANDBY",
>> - "FAST_SLEEP",
>> - "DEEP_SLEEP",
>> - "BUF_ON",
>> - "TG_ON"
>> - };
>> +static void
>> +psr_source_status(struct drm_i915_private *dev_priv, struct seq_file
>> *m)
>> +{
>> + u32 val, psr_status = 0;
>>
>> - val = (val & EDP_PSR2_STATUS_STATE_MASK) >>
>> EDP_PSR2_STATUS_STATE_SHIFT;
>> - if (val < ARRAY_SIZE(live_status))
>> - return live_status[val];
>> + if (dev_priv->psr.psr2_enabled) {
>> + static const char * const live_status[] = {
>> + "IDLE",
>> + "CAPTURE",
>> + "CAPTURE_FS",
>> + "SLEEP",
>> + "BUFON_FW",
>> + "ML_UP",
>> + "SU_STANDBY",
>> + "FAST_SLEEP",
>> + "DEEP_SLEEP",
>> + "BUF_ON",
>> + "TG_ON"
>> + };
>> + psr_status = I915_READ(EDP_PSR2_STATUS);
>> + val = (psr_status & EDP_PSR2_STATUS_STATE_MASK) >>
>> + EDP_PSR2_STATUS_STATE_SHIFT;
>> + if (val < ARRAY_SIZE(live_status)) {
>> + seq_printf(m, "Source PSR status: %x[%s]\n",
>> psr_status,
>> + live_status[val]);
>> + return;
>> + }
>> + } else {
>> + static const char * const live_status[] = {
>> + "IDLE",
>> + "SRDONACK",
>> + "SRDENT",
>> + "BUFOFF",
>> + "BUFON",
>> + "AUXACK",
>> + "SRDOFFACK",
>> + "SRDENT_ON",
>> + };
>> + psr_status = I915_READ(EDP_PSR_STATUS);
>> + val = (psr_status & EDP_PSR_STATUS_STATE_MASK) >>
>> + EDP_PSR_STATUS_STATE_SHIFT;
> ^alignment is different from the PSR2 block.
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Jani Nikula, Intel Open Source Graphics Center
More information about the Intel-gfx
mailing list