[PATCH i-g-t v3 1/2] lib/igt_psr: Remove SRD status change check for DP2.1 Panel Replay

Hogander, Jouni jouni.hogander at intel.com
Wed Sep 18 07:35:52 UTC 2024


On Thu, 2024-09-12 at 01:54 +0530, Naladala Ramanaidu wrote:
> We do not have ALPM on the DP2.1 Panel Replay. Due to this, the
> SRD_STATUS [SRD State] doesn't change from SRDENT_ON after Panel
> Replay is enabled until it gets disabled. As a result, the igt
> tests fail. To resolve this issue, add a condition to skip the
> check in the 'psr_wait_update' and 'psr_long_wait_update'
> functions for DP2.1 PR.
> 
> v1: Update change for all users of psr_wait_update and
>     psr_long_wait_update. (Jouni)
> v2: Update null check in if condition
> 
> Signed-off-by: Naladala Ramanaidu <ramanaidu.naladala at intel.com>

Reviewed-by: Jouni Högander <jouni.hogander at intel.com>

> ---
>  lib/igt_psr.c | 22 ++++++++++++++++++++--
>  1 file changed, 20 insertions(+), 2 deletions(-)
> 
> diff --git a/lib/igt_psr.c b/lib/igt_psr.c
> index e3e7577eb..222e05e6c 100644
> --- a/lib/igt_psr.c
> +++ b/lib/igt_psr.c
> @@ -113,12 +113,30 @@ bool psr_wait_entry(int debugfs_fd, enum
> psr_mode mode, igt_output_t *output)
>  
>  bool psr_wait_update(int debugfs_fd, enum psr_mode mode,
> igt_output_t *output)
>  {
> -       return igt_wait(!psr_active_check(debugfs_fd, mode, output),
> 40, 1);
> +       /*
> +        * TODO: After enabling Panel Replay on DP2.1, observe that
> the SRD status
> +        * remains in the SRDENT_ON state. Remove the polling
> mechanism for the SRD
> +        * status change for the DP2.1 output.
> +        */
> +       if (output != NULL &&
> +           output->config.connector->connector_type ==
> DRM_MODE_CONNECTOR_DisplayPort)
> +               return igt_wait(psr_active_check(debugfs_fd, mode,
> output), 40, 1);
> +       else
> +               return igt_wait(!psr_active_check(debugfs_fd, mode,
> output), 40, 1);
>  }
>  
>  bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode,
> igt_output_t *output)
>  {
> -       return igt_wait(!psr_active_check(debugfs_fd, mode, output),
> 500, 1);
> +       /*
> +        * TODO: After enabling Panel Replay on DP2.1, observe that
> the SRD status
> +        * remains in the SRDENT_ON state. Remove the polling
> mechanism for the SRD
> +        * status change for the DP2.1 output.
> +        */
> +       if (output != NULL &&
> +           output->config.connector->connector_type ==
> DRM_MODE_CONNECTOR_DisplayPort)
> +               return igt_wait(psr_active_check(debugfs_fd, mode,
> output), 500, 1);
> +       else
> +               return igt_wait(!psr_active_check(debugfs_fd, mode,
> output), 500, 1);
>  }
>  
>  static ssize_t psr_write(int debugfs_fd, const char *buf,
> igt_output_t *output)



More information about the igt-dev mailing list