diff options
| author | Takashi Iwai <[email protected]> | 2024-03-11 15:18:47 +0000 |
|---|---|---|
| committer | Takashi Iwai <[email protected]> | 2024-03-11 15:18:47 +0000 |
| commit | f5d9ddf1214bf878ca69c905c2f410c5b51de99c (patch) | |
| tree | 3ea7bf6f519a490f72cf5f9023b5c0a6dff0fea0 /sound/soc/sof/core.c | |
| parent | ALSA: scarlett2: Fix Scarlett 4th Gen input gain range again (diff) | |
| parent | ASoC: Intel: catpt: Carefully use PCI bitwise constants (diff) | |
| download | kernel-f5d9ddf1214bf878ca69c905c2f410c5b51de99c.tar.gz kernel-f5d9ddf1214bf878ca69c905c2f410c5b51de99c.zip | |
Merge tag 'asoc-v6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
ASoC: Updates for v6.9
This has been quite a small release, there's a lot of driver specific
cleanups and minor enhancements but hardly anything on the core and only
one new driver. Highlights include:
- SoundWire support for AMD ACP 6.3 systems.
- Support for reporting version information for AVS firmware.
- Support DSPless mode for Intel Soundwire systems.
- Support for configuring CS35L56 amplifiers using EFI calibration
data.
- Log which component is being operated on as part of power management
trace events.
- Support for Microchip SAM9x7, NXP i.MX95 and Qualcomm WCD939x
Diffstat (limited to 'sound/soc/sof/core.c')
| -rw-r--r-- | sound/soc/sof/core.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sound/soc/sof/core.c b/sound/soc/sof/core.c index 425b023b03b4..9b00ede2a486 100644 --- a/sound/soc/sof/core.c +++ b/sound/soc/sof/core.c @@ -679,6 +679,16 @@ int snd_sof_device_remove(struct device *dev) */ snd_sof_machine_unregister(sdev, pdata); + /* + * Balance the runtime pm usage count in case we are faced with an + * exception and we forcably prevented D3 power state to preserve + * context + */ + if (sdev->d3_prevented) { + sdev->d3_prevented = false; + pm_runtime_put_noidle(sdev->dev); + } + if (sdev->fw_state > SOF_FW_BOOT_NOT_STARTED) { sof_fw_trace_free(sdev); ret = snd_sof_dsp_power_down_notify(sdev); |
