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