diff options
author | Mark Brown <broonie@kernel.org> | 2024-02-14 11:41:32 +0000 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2024-02-14 11:41:32 +0000 |
commit | 2775f88becc8190462527ab35ee1f7c05d0303cd (patch) | |
tree | 1f67b70b6b5108b1ccee33106b2e21b52a127500 /sound/soc/sof/sof-priv.h | |
parent | fd236653ab60bf64fde341ed9c940c04a542483a (diff) | |
parent | 2065610b5ddd5b58eed1dc3b3c3db27a26ebd4b6 (diff) |
ASoC: SOF: Extend ChainDMA and DSPless mode to LNL+
Merge series from Peter Ujfalusi <peter.ujfalusi@linux.intel.com>:
For both ChainDMA and DSPless mode the requirement is that the link must
be serviced by HD-DMA.
On pre Lunar Lake platforms this was only valid for HDAudio links but with
Lunar Lake all link types now serviced by HD-DMA.
This allows us to enable ChainDMA and DSPless mode for SoundWire links as
well.
Diffstat (limited to 'sound/soc/sof/sof-priv.h')
-rw-r--r-- | sound/soc/sof/sof-priv.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sound/soc/sof/sof-priv.h b/sound/soc/sof/sof-priv.h index 5755c997a9de..d453a4ce3b21 100644 --- a/sound/soc/sof/sof-priv.h +++ b/sound/soc/sof/sof-priv.h @@ -157,6 +157,13 @@ struct sof_firmware { u32 payload_offset; }; +enum sof_dai_access { + SOF_DAI_DSP_ACCESS, /* access from DSP only */ + SOF_DAI_HOST_ACCESS, /* access from host only */ + + SOF_DAI_ACCESS_NUM +}; + /* * SOF DSP HW abstraction operations. * Used to abstract DSP HW architecture and any IO busses between host CPU @@ -338,6 +345,8 @@ struct snd_sof_dsp_ops { struct snd_soc_dai_driver *drv; int num_drv; + bool (*is_chain_dma_supported)(struct snd_sof_dev *sdev, u32 dai_type); /* optional */ + /* ALSA HW info flags, will be stored in snd_pcm_runtime.hw.info */ u32 hw_info; |