ASoC: Intel: catpt: Do not wake DSP just for volume setup

With the new control-operations in place, the controls no longer wake
the DSP just for the sake of updating volume (or mute) settings on the
firmware side. The values are cached and actual update occurs only when
streams are being opened for streaming or are already running. In those
cases the DSP must already be woken up and we avoid unnecessary power
consumption.

Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Link: https://patch.msgid.link/20260309091605.896307-5-cezary.rojewski@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Cezary Rojewski 2026-03-09 10:16:04 +01:00 committed by Mark Brown
parent 2464febd81
commit 150badf73e
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0

View File

@ -388,6 +388,15 @@ static int catpt_apply_mute(struct catpt_dev *cdev, struct snd_soc_card *card)
static int catpt_apply_controls(struct catpt_dev *cdev, struct snd_soc_card *card,
struct catpt_stream_runtime *stream)
{
int ret;
/* Update the master volume when the first stream is opened. */
if (list_empty(&cdev->stream_list)) {
ret = catpt_apply_volume(cdev, card, "Master Playback Volume");
if (ret)
return ret;
}
/* Only selected streams have individual controls. */
switch (stream->info.stream_hw_id) {
case CATPT_PIN_ID_OFFLOAD1: