Skip to content

Commit b9ad605

Browse files
author
Jyri Sarha
committed
ASoC: SOF: ipc4: add D0I3 stream compatibility support for S0ix
Enable ipc4 D0I3 stream compatibility support for S0ix by removing d0i3_supported_in_s0ix, the feature gating flag in struct sof_ipc_pcm_ops. Since both ipc3 an ipc4 now support the feature, there is no need for the flag anymore. After this change the suspend_ignored logic in pcm.c applies also to IPC4 streams, allowing the DSP to remain in D0i3 during S0ix when D0I3-compatible streams are active (e.g. wake-on-voice keyword detection). Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
1 parent 60efcc4 commit b9ad605

3 files changed

Lines changed: 3 additions & 7 deletions

File tree

‎sound/soc/sof/ipc3-pcm.c‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -431,7 +431,6 @@ const struct sof_ipc_pcm_ops ipc3_pcm_ops = {
431431
.trigger = sof_ipc3_pcm_trigger,
432432
.dai_link_fixup = sof_ipc3_pcm_dai_link_fixup,
433433
.reset_hw_params_during_stop = true,
434-
.d0i3_supported_in_s0ix = true,
435434
#if IS_ENABLED(CONFIG_SND_SOC_SOF_COMPRESS)
436435
.compress_ops = &sof_ipc3_compressed_ops,
437436
#endif

‎sound/soc/sof/pcm.c‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -430,11 +430,10 @@ static int sof_pcm_trigger(struct snd_soc_component *component,
430430
break;
431431
case SNDRV_PCM_TRIGGER_SUSPEND:
432432
/*
433-
* If DSP D0I3 is allowed during S0iX, set the suspend_ignored flag for
434-
* D0I3-compatible streams to keep the firmware pipeline running
433+
* Set the suspend_ignored flag for D0I3-compatible
434+
* streams to keep the firmware pipeline running
435435
*/
436-
if (pcm_ops && pcm_ops->d0i3_supported_in_s0ix &&
437-
sdev->system_suspend_target == SOF_SUSPEND_S0IX &&
436+
if (sdev->system_suspend_target == SOF_SUSPEND_S0IX &&
438437
spcm->stream[substream->stream].d0i3_compatible) {
439438
spcm->stream[substream->stream].suspend_ignored = true;
440439
return 0;

‎sound/soc/sof/sof-audio.h‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,6 @@ struct snd_sof_dai_config_data {
121121
* triggers. The FW keeps the host DMA running in this case and
122122
* therefore the host must do the same and should stop the DMA during
123123
* hw_free.
124-
* @d0i3_supported_in_s0ix: Allow DSP D0I3 during S0iX
125124
* @compress_ops: Pointer to ops for compressed streams
126125
*/
127126
struct sof_ipc_pcm_ops {
@@ -143,7 +142,6 @@ struct sof_ipc_pcm_ops {
143142
bool reset_hw_params_during_stop;
144143
bool ipc_first_on_start;
145144
bool platform_stop_during_hw_free;
146-
bool d0i3_supported_in_s0ix;
147145
const struct snd_compress_ops *compress_ops;
148146
};
149147

0 commit comments

Comments
 (0)