Currently there are couple of problems in ALPM implelementation: 1. ALPM registers are written while PSR/ Panel Replay is kept enabled. This is causing following error messages on PTL: "xe 0000:00:02.0: [drm] *ERROR* Timeout waiting for DDI BUF A to get active".
This is fixed by enabling ALPM only once when needed. 2. ALPM is never disabled when used by PSR/Panel Replay. I.e. if PSR is once enabled ALPM is left enabled for good when PSR is disabled. This is fixed by using intel_alpm_disable and calling it for both cases: LOBF disable and PSR disable. This patch set is addressing these. v3: - enable/disable ALPM from PSR code v2: - continue using rmw when disabling ALPM - take into account disabled hw in old_crtc_state Jouni Högander (2): drm/i915/alpm: Make intel_alpm_enable_sink available for PSR drm/i915/alpm: Stop writing ALPM registers when PSR is enabled drivers/gpu/drm/i915/display/intel_alpm.c | 15 +++++++++++---- drivers/gpu/drm/i915/display/intel_alpm.h | 2 ++ drivers/gpu/drm/i915/display/intel_psr.c | 8 +++++++- 3 files changed, 20 insertions(+), 5 deletions(-) -- 2.43.0
