diff options
author | Takashi Iwai <tiwai@suse.de> | 2023-06-26 16:38:02 +0300 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2023-06-26 16:38:02 +0300 |
commit | d6048fdc870240e5020343f8af0c825829c232bd (patch) | |
tree | d83ca76eaac5f8bf1c4c16f003aad64baa8fae62 /sound/soc/sof/intel/tgl.c | |
parent | a15b51375684c2bfa6017bb185139477e7a3b96c (diff) | |
parent | 2d0cad0473bd1ffbc5842be0b9f2546265acb011 (diff) | |
download | linux-d6048fdc870240e5020343f8af0c825829c232bd.tar.xz |
Merge tag 'asoc-v6.5' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
ASoC: Updates for v6.5
A fairly quiet release from a core and framework point of view, but a
very big one from the point of view of new drivers:
- More refectoring from Morimoto-san, this time mainly around DAI
links and how we control the ordering of trigger() callbacks.
- Convert a lot of drivers to use maple tree based caches.
- Lots of work on the x86 driver stack.
- Compressed audio support for Qualcomm.
- Support for AMD SoundWire, Analog Devices SSM3515, Google Chameleon,
Ingenic X1000, Intel systems with various CODECs, Longsoon platforms,
Maxim MAX98388, Mediatek MT8188, Nuvoton NAU8825C, NXP platforms with
NAU8822, Qualcomm WSA884x, StarFive JH7110, Texas Instruments TAS2781.
Diffstat (limited to 'sound/soc/sof/intel/tgl.c')
-rw-r--r-- | sound/soc/sof/intel/tgl.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/sound/soc/sof/intel/tgl.c b/sound/soc/sof/intel/tgl.c index 2713b7dc7931..8e2b07e1612b 100644 --- a/sound/soc/sof/intel/tgl.c +++ b/sound/soc/sof/intel/tgl.c @@ -39,14 +39,18 @@ static int tgl_dsp_core_get(struct snd_sof_dev *sdev, int core) static int tgl_dsp_core_put(struct snd_sof_dev *sdev, int core) { const struct sof_ipc_pm_ops *pm_ops = sdev->ipc->ops->pm; + int ret; + + if (pm_ops->set_core_state) { + ret = pm_ops->set_core_state(sdev, core, false); + if (ret < 0) + return ret; + } /* power down primary core and return */ if (core == SOF_DSP_PRIMARY_CORE) return hda_dsp_core_reset_power_down(sdev, BIT(core)); - if (pm_ops->set_core_state) - return pm_ops->set_core_state(sdev, core, false); - return 0; } |