linux_dsm_epyc7002/sound/soc
Ranjani Sridharan 61e285caf4
ASoC: SOF: Move DSP power state transitions to platform-specific ops
The DSP device substates such as D0I0/D0I3
are platform-specific. Therefore, the d0_substate
field of struct snd_sof_dev is replaced
with the dsp_power_state field which represents the current
state of the DSP. This field holds both the device state
and the platform-specific substate values.

With the DSP device substates being platform-specific,
the DSP power state transitions need to be performed in
the platform-specific suspend/resume ops as well.

In order to achieve this, the ops signature has to be
modified to pass the target device state as an
argument. The target substate will be determined by
the platform-specific ops before performing the transition.
For example, in the case of the system suspending to S0IX,
the top-level SOF device suspend callback needs to
only determine if the DSP will be entering
D3 or remain in D0. The target substate in case the device
needs to remain in D0 (D0I0 or D0I3) will be determined
by the platform-specific suspend op.

With the addition of the extended set of power states for the DSP,
the set_power_state op for HDA platforms has to be extended
to handle only the appropriate state transitions. So, the
implementation for the Intel HDA platforms is also modified.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20200129220726.31792-6-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2020-02-11 11:48:05 +00:00
..
adi treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 2019-05-30 11:29:19 -07:00
amd ASoC: amd: Fix simultaneous playback and capture 2020-01-29 17:48:47 +00:00
atmel ASoC: atmel: atmel_ssc_dai: move .suspend/.resume to component 2020-01-21 17:03:15 +00:00
au1x sound updates for 5.6-rc1 2020-01-28 16:26:57 -08:00
bcm ASoC: bcm: cygnus-ssp: move .suspend/.resume to component 2020-01-21 17:02:56 +00:00
cirrus ASoC: soc-core: remove bus_control 2020-01-21 17:07:08 +00:00
codecs ASoC: wcd934x: Remove set but not unused variable 'hph_comp_ctrl7' 2020-02-11 11:47:58 +00:00
dwc ASoC: dwc: dwc-i2s: move .suspend/.resume to component 2020-01-21 17:05:35 +00:00
fsl ASoC: soc-core: remove bus_control 2020-01-21 17:07:08 +00:00
generic ASoC: simple-card: Don't create separate link when platform is present 2019-12-10 13:10:40 +00:00
hisilicon treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 340 2019-06-05 17:37:07 +02:00
img treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 2019-06-05 17:37:15 +02:00
intel ASoC: Intel: mrfld: return error codes when an error occurs 2020-02-11 11:25:05 +00:00
jz4740 ASoC: jz4740: jz4740-i2s: move .suspend/.resume to component 2020-01-21 17:03:32 +00:00
kirkwood ASoC: kirkwood: Drop superfluous ioctl PCM ops 2019-12-11 15:57:19 +00:00
mediatek ASoC: mediatek: mt8173-rt5650: support HDMI jack reporting 2020-02-11 11:47:57 +00:00
meson ASoC: meson: axg-fifo: relax period size constraints 2019-12-18 20:01:34 +00:00
mxs ASoC: Remove dev_err() usage after platform_get_irq() 2019-08-02 12:12:31 +01:00
pxa ASoC: soc-core: remove bus_control 2020-01-21 17:07:08 +00:00
qcom ASoC: qdsp6: q6asm-dai: constify copied structure 2020-01-01 21:38:48 +00:00
rockchip ASoC: Fixes for v5.4 2019-11-07 13:52:17 +01:00
samsung ASoC: samsung: i2s: move .suspend/.resume to component 2020-01-21 17:05:54 +00:00
sh sound updates for 5.6-rc1 2020-01-28 16:26:57 -08:00
sirf ASoC: sirf: use devm_platform_ioremap_resource() to simplify code 2019-07-31 12:05:39 +01:00
sof ASoC: SOF: Move DSP power state transitions to platform-specific ops 2020-02-11 11:48:05 +00:00
spear ASoC: spear: use devm_platform_ioremap_resource() to simplify code 2019-07-31 12:06:18 +01:00
sprd ASoC: sprd: Drop superfluous ioctl PCM ops 2019-12-11 15:59:40 +00:00
sti ASoC: sti: sti_uniperif: move .suspend/.resume to component 2020-01-21 17:04:37 +00:00
stm ASoC: stm32: i2s: improve error management on probe deferral 2020-02-11 11:24:43 +00:00
sunxi treewide: remove redundant IS_ERR() before error code check 2020-02-04 03:05:27 +00:00
tegra ASoC: tegra: Revert 24 and 32 bit support 2020-02-02 12:07:47 +00:00
ti ASoC: ti: davinci-mcasp: remove redundant assignment to variable ret 2020-02-11 11:47:59 +00:00
txx9 ASoC: soc-core: remove bus_control 2020-01-21 17:07:08 +00:00
uniphier ASoC: uniphier: move .suspend/.resume to component 2020-01-21 17:05:16 +00:00
ux500 ASoC: ux500: ux500_msp_dai: remove unused DAI .suspend/.resume 2020-01-21 17:06:13 +00:00
xilinx ASoC: xilinx: Use managed buffer allocation 2019-12-11 16:43:25 +00:00
xtensa ASoC: xtensa: Use managed buffer allocation 2019-12-11 16:43:26 +00:00
zte sound: Fix Kconfig indentation 2019-10-07 03:53:03 +02:00
Kconfig ASoC: remove w90x900/nuc900 platform drivers 2019-08-12 14:00:29 +01:00
Makefile ASoC: remove w90x900/nuc900 platform drivers 2019-08-12 14:00:29 +01:00
soc-ac97.c
soc-acpi.c ASoC: soc-acpi: fix implicit header use of module.h/export.h 2019-05-08 18:06:28 +09:00
soc-component.c ASoC: Fixes for v5.5 2020-01-16 14:14:26 +01:00
soc-compress.c ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP 2020-01-10 13:34:19 +00:00
soc-core.c ASoC: soc-core: remove null_snd_soc_ops 2020-01-23 12:20:06 +00:00
soc-dai.c ASoC: soc-core: remove DAI suspend/resume 2020-01-21 17:06:41 +00:00
soc-dapm.c ASoC: dapm: add snd_soc_dapm_put_enum_double_locked 2020-01-21 17:14:53 +00:00
soc-devres.c
soc-generic-dmaengine-pcm.c Merge branch 'asoc-5.6' into asoc-next 2020-01-23 12:36:45 +00:00
soc-io.c
soc-jack.c ASoC: Jack: Fix NULL pointer dereference in snd_soc_jack_report 2019-11-12 17:12:56 +00:00
soc-ops.c ASoC: soc-ops: use snd_soc_card_get_kcontrol() at snd_soc_limit_volume() 2019-10-03 14:37:20 +01:00
soc-pcm.c Merge branch 'asoc-5.6' into asoc-next 2020-01-23 12:36:45 +00:00
soc-topology.c Merge branch 'asoc-5.6' into asoc-next 2020-01-23 12:36:45 +00:00
soc-utils.c ASoC: utils: Drop superfluous ioctl PCM ops 2019-12-11 16:00:48 +00:00