mbox series

[v4,0/2] Block DC6 on Vblank enable for Panel Replay

Message ID 20240919123725.1222869-1-jouni.hogander@intel.com (mailing list archive)
Headers show
Series Block DC6 on Vblank enable for Panel Replay | expand

Message

Hogander, Jouni Sept. 19, 2024, 12:37 p.m. UTC
We need to block DC6 entry in case of Panel Replay as enabling VBI doesn't
prevent DC6 in case of Panel Replay. This causes problems if user-space is
polling for vblank events.

v4:
  - do flush_work for vblank_work on intel_crtc_vblank_off
  - no need to use READ_ONCE in bdw_enable_vblank
  - check crtc->block_dc_for_vblank in bdw_disable_vblank as well
  - move adding block_dc_for_vblank into patch 2.
  - patch 1. scope changed
v3: check that encoder is dp
v2: set/clear block_dc6_needed in intel_crtc_vblank_on/off

Jouni Högander (2):
  drm/i915/psr: Add intel_psr_needs_block_dc_vblank for blocking dc
    entry
  drm/i915/display: Prevent DC6 while vblank is enabled for Panel Replay

 drivers/gpu/drm/i915/display/intel_crtc.c     |  7 +++++
 .../gpu/drm/i915/display/intel_display_core.h |  2 ++
 .../gpu/drm/i915/display/intel_display_irq.c  | 27 ++++++++++++++++
 .../drm/i915/display/intel_display_types.h    |  2 ++
 drivers/gpu/drm/i915/display/intel_psr.c      | 31 +++++++++++++++++++
 drivers/gpu/drm/i915/display/intel_psr.h      |  1 +
 6 files changed, 70 insertions(+)