summaryrefslogtreecommitdiffstats
path: root/sound/soc/sof/sof-priv.h
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2024-02-14 11:41:32 +0000
committerMark Brown <broonie@kernel.org>2024-02-14 11:41:32 +0000
commit2775f88becc8190462527ab35ee1f7c05d0303cd (patch)
tree1f67b70b6b5108b1ccee33106b2e21b52a127500 /sound/soc/sof/sof-priv.h
parentfd236653ab60bf64fde341ed9c940c04a542483a (diff)
parent2065610b5ddd5b58eed1dc3b3c3db27a26ebd4b6 (diff)
downloadlinux-stable-2775f88becc8190462527ab35ee1f7c05d0303cd.tar.gz
linux-stable-2775f88becc8190462527ab35ee1f7c05d0303cd.tar.bz2
linux-stable-2775f88becc8190462527ab35ee1f7c05d0303cd.zip
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.h9
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;