[0/9] ASoC: SOF: update S0ix/D0ix support
mbox series

Message ID 20200129220726.31792-1-pierre-louis.bossart@linux.intel.com
Headers show
Series
  • ASoC: SOF: update S0ix/D0ix support
Related show

Message

Pierre-Louis Bossart Jan. 29, 2020, 10:07 p.m. UTC
The initial support for S0ix had limitations that were identified
during testing, and opportunitic transitions such as S0/D0ix was not a
case that was handled.

Ranjani suggested a major rework reviewed at length on GitHub
[1][2]. So far all known issues are solved and no regressions are
identified on 5 different platforms, so it's time to share
upstream.

This is not intended for 5.6 and can wait after the merge window
closes. But since the code isn't simple we want to allow plenty of
time for further reviews.

Thanks Ranjani for this important update!

[1] https://github.com/thesofproject/linux/pull/1631
[2] https://github.com/thesofproject/linux/pull/1702

Ranjani Sridharan (9):
  ASoC: SOF: Do not reset hw_params for streams that ignored suspend
  ASoC: SOF: pm: Unify suspend/resume routines
  ASoC: SOF: Add system_suspend_target field to struct snd_sof_dev
  ASoC: SOF: pm: Introduce DSP power states
  ASoC: SOF: Move DSP power state transitions to platform-specific ops
  ASoC: SOF: audio: Add helper to check if only D0i3 streams are active
  ASoC: SOF: Intel: hda: Amend the DSP state transition diagram
  ASoC: SOF: Intel: cnl: Implement feature to support DSP D0i3 in S0
  ASoC: SOF: Intel: hda: Allow trace DMA in S0 when DSP is in D0I3 for
    debug

 sound/soc/sof/core.c          |   4 +-
 sound/soc/sof/intel/cnl.c     |  37 ++++-
 sound/soc/sof/intel/hda-dsp.c | 289 +++++++++++++++++++++++++++++++---
 sound/soc/sof/intel/hda.c     |   5 +
 sound/soc/sof/intel/hda.h     |  21 ++-
 sound/soc/sof/ipc.c           |  29 +++-
 sound/soc/sof/ops.h           |  16 +-
 sound/soc/sof/pcm.c           |   2 +-
 sound/soc/sof/pm.c            | 176 ++++++++-------------
 sound/soc/sof/sof-audio.c     |  42 ++++-
 sound/soc/sof/sof-audio.h     |   3 +-
 sound/soc/sof/sof-priv.h      |  43 +++--
 12 files changed, 502 insertions(+), 165 deletions(-)