Thank you for your contribution! Sashiko AI review found 1 potential issue(s) 
to consider:
- [High] Skipping PSR exit on LunarLake for legacy cursor updates leaves the 
panel in self-refresh, freezing the cursor visually.
--

commit 04eaf4bdd079c2712c8f636ed5b61d70a97e245e
Author: Aaron Ma <[email protected]>

drm/i915/psr: Skip PSR exit for legacy cursor updates on LunarLake onwards

This commit attempts to optimize PSR behavior for legacy cursor updates on
LunarLake and newer platforms by skipping the PSR exit and matching the
ORIGIN_FLIP behavior.

> diff --git a/drivers/gpu/drm/i915/display/intel_psr.c 
> b/drivers/gpu/drm/i915/display/intel_psr.c
> --- a/drivers/gpu/drm/i915/display/intel_psr.c
> +++ b/drivers/gpu/drm/i915/display/intel_psr.c
[ ... ]
> @@ -3772,7 +3772,7 @@ void intel_psr_flush(struct intel_display *display,
>  
>               if (origin == ORIGIN_FLIP ||
>                   (origin == ORIGIN_CURSOR_UPDATE &&
> -                  !intel_dp->psr.psr2_sel_fetch_enabled)) {
> +                  (DISPLAY_VER(display) >= 20 || 
> !intel_dp->psr.psr2_sel_fetch_enabled))) {
>                       tgl_dc3co_flush_locked(intel_dp, frontbuffer_bits, 
> origin);
>                       goto unlock;
>               }

[Severity: High]
Will this cause the cursor to freeze on the screen during legacy cursor
updates while the panel is in Panel Self-Refresh (PSR) mode?

LunarLake lacks hardware PSR tracking. When userspace uses drmModeMoveCursor,
the fast-path cursor update writes directly to cursor MMIO registers and
triggers a frontbuffer flush with ORIGIN_CURSOR_UPDATE. Since this fast-path
does not use the atomic commit flow, it never calls intel_vrr_send_push() to
send a TRANS_PUSH frame change event.

By returning early here on DISPLAY_VER >= 20, the driver skips
_psr_flush_handle() and intel_psr_exit(). Without a PSR exit or a TRANS_PUSH
event, won't the panel remain asleep and ignore the newly written cursor MMIO
registers?

-- 
Sashiko AI review ยท 
https://sashiko.dev/#/patchset/[email protected]?part=1

Reply via email to