xref: /linux/sound/soc/mediatek/common/mtk-dsp-sof-common.h (revision 5e0266f0e5f57617472d5aac4013f58a3ef264ac)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * mtk-dsp-sof-common.h  --  MediaTek dsp sof common definition
4  *
5  * Copyright (c) 2022 MediaTek Inc.
6  * Author: Chunxu Li <chunxu.li@mediatek.com>
7  */
8 
9 #ifndef _MTK_DSP_SOF_COMMON_H_
10 #define _MTK_DSP_SOF_COMMON_H_
11 
12 #include <sound/soc.h>
13 
14 struct sof_conn_stream {
15 	const char *normal_link;
16 	const char *sof_link;
17 	const char *sof_dma;
18 	int stream_dir;
19 };
20 
21 struct mtk_sof_priv {
22 	const struct sof_conn_stream *conn_streams;
23 	int num_streams;
24 	int (*sof_dai_link_fixup)(struct snd_soc_pcm_runtime *rtd,
25 				  struct snd_pcm_hw_params *params);
26 };
27 
28 int mtk_sof_dai_link_fixup(struct snd_soc_pcm_runtime *rtd,
29 			   struct snd_pcm_hw_params *params);
30 int mtk_sof_card_probe(struct snd_soc_card *card);
31 int mtk_sof_card_late_probe(struct snd_soc_card *card);
32 int mtk_sof_dailink_parse_of(struct snd_soc_card *card, struct device_node *np,
33 			     const char *propname, struct snd_soc_dai_link *pre_dai_links,
34 			     int pre_num_links);
35 
36 #endif
37