[Intel-gfx] [PATCH 00/22] drm/i915: ELD precompute and readout

Ville Syrjala ville.syrjala at linux.intel.com
Tue Oct 11 16:59:49 UTC 2022


From: Ville Syrjälä <ville.syrjala at linux.intel.com>

There was some discussion around ELD precompute, so I
decided to have a quick look at hooking that up. Unfortunately
the i915 audio code is a bit of a mess so ended up with
a patchbomb of cleanups. Sorry about that.

The actually interesting stuff is at the end of the series.
The precumpute+readot+state checker is pretty self explanatory
stuff for the most part.

But I think we need to decide what to do with the hardware
ELD buffer in general. It's totally busted atm on HSW 
(and I'd expecpt BDW as well), but we had no idea since
we had no readout+state checker for it. 

So do we try to salvage it (I guess to mainly act as some
kind of "did we enable audio correctly?" canary) or do we
just stop programming it outright? And on which platforms
could we do that?

Cc: Chaitanya Kumar Borah <chaitanya.kumar.borah at intel.com>
Cc: Kai Vehmanen <kai.vehmanen at linux.intel.com>
Cc: Takashi Iwai <tiwai at suse.de>

Ville Syrjälä (22):
  drm/i915/audio: s/dev_priv/i915/
  drm/i915/audio: Nuke leftover ROUNDING_FACTOR
  drm/i915/audio: Remove CL/BLC audio stuff
  drm/i915/audio: Exract struct ilk_audio_regs
  drm/i915/audio: Use REG_BIT() & co.
  drm/i915/audio: Unify register bit naming
  drm/i915/audio: Protect singleton register with a lock
  drm/i915/audio: Nuke intel_eld_uptodate()
  drm/i915/audio: Read ELD buffer size from hardware
  drm/i915/audio: Make sure we write the whole ELD buffer
  drm/i915/audio: Use u32* for ELD
  drm/i915/audio: Use intel_de_rmw() for most audio registers
  drm/i915/audio: Split "ELD valid" vs. audio PD on hsw+
  drm/i915/audio: Do the vblank waits
  drm/i915/audio: Precompute the ELD
  drm/i915/audio: Hardware ELD readout
  drm/i915/sdvo: Extract intel_sdvo_has_audio()
  drm/i915/sdvo: Precompute the ELD
  drm/i915/sdvo: Do ELD hardware readout
  drm/i915/audio: Hook up ELD into the state checker
  drm/i915/audio: Include ELD in the state dump
  hax: drm/i915/audio: Make HSW hardware ELD buffer sort of work

 drivers/gpu/drm/i915/display/g4x_dp.c         |   2 +
 drivers/gpu/drm/i915/display/g4x_hdmi.c       |   2 +
 drivers/gpu/drm/i915/display/intel_audio.c    | 792 ++++++++++--------
 drivers/gpu/drm/i915/display/intel_audio.h    |   7 +
 .../gpu/drm/i915/display/intel_audio_regs.h   |  88 +-
 .../drm/i915/display/intel_crtc_state_dump.c  |  17 +
 drivers/gpu/drm/i915/display/intel_ddi.c      |   2 +
 drivers/gpu/drm/i915/display/intel_display.c  |  43 +
 .../drm/i915/display/intel_display_types.h    |   2 +
 drivers/gpu/drm/i915/display/intel_dp.c       |   4 +-
 drivers/gpu/drm/i915/display/intel_hdmi.c     |   4 +-
 drivers/gpu/drm/i915/display/intel_sdvo.c     |  54 +-
 12 files changed, 608 insertions(+), 409 deletions(-)

-- 
2.35.1



More information about the Intel-gfx mailing list