[PATCH 0/4] Separate display workarounds from clock gating

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The clock gating init hooks in i915 are a bit jumbled.  The current
implementation includes a mix of GT workarounds (which really should
have been in the GT workaround file instead), SoC/sgunit clock gating
workarounds, and display workarounds (some of which are entirely
unrelated to clock gating).  Some of this confusion originates from
really old platforms where the boundaries between GT/display/other IP
blocks weren't as clear as they are today, but at least on modern
platforms we should be able to do a better job of placing this
programming now.

Let's separate the display workarounds for gen11 and newer platforms
into a dedicated file and apply the workarounds during actual display
initialization, rather than having them applied indirectly during GEM
init.  This will help keep the clock gating hooks focused on actual
SoC/sgunit clock gating going forward and avoid making them a dumping
ground for assorted register programming.  It will also ensure that when
i915's display code is built into the Xe driver these workarounds will
still get applied during device probe rather than being missed as they
are today.

Matt Roper (4):
  drm/i915: Stop forcing clock gating init for future platforms
  drm/i915/adlp: Stop calling gen12lp_init_clock_gating()
  drm/i915/display: Extract display workarounds from clock gating init
  drm/i915/display: Apply workarounds during display init

 drivers/gpu/drm/i915/Makefile                 |  1 +
 .../drm/i915/display/intel_display_driver.c   |  2 +
 .../gpu/drm/i915/display/intel_display_wa.c   | 47 ++++++++++++++++
 .../gpu/drm/i915/display/intel_display_wa.h   | 13 +++++
 drivers/gpu/drm/i915/intel_clock_gating.c     | 53 ++-----------------
 5 files changed, 66 insertions(+), 50 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/display/intel_display_wa.c
 create mode 100644 drivers/gpu/drm/i915/display/intel_display_wa.h

-- 
2.41.0




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux