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 14struct sof_conn_stream { 15 const char *normal_link; 16 const char *sof_link; 17 const char *sof_dma; 18 int stream_dir; 19}; 20 21struct mtk_dai_link { 22 const char *name; 23 int (*be_hw_params_fixup)(struct snd_soc_pcm_runtime *rtd, 24 struct snd_pcm_hw_params *params); 25 struct list_head list; 26}; 27 28struct mtk_sof_priv { 29 const struct sof_conn_stream *conn_streams; 30 int num_streams; 31 int (*sof_dai_link_fixup)(struct snd_soc_pcm_runtime *rtd, 32 struct snd_pcm_hw_params *params); 33 struct list_head dai_link_list; 34}; 35 36int mtk_sof_dai_link_fixup(struct snd_soc_pcm_runtime *rtd, 37 struct snd_pcm_hw_params *params); 38int mtk_sof_card_probe(struct snd_soc_card *card); 39int mtk_sof_card_late_probe(struct snd_soc_card *card); 40int mtk_sof_dailink_parse_of(struct snd_soc_card *card, struct device_node *np, 41 const char *propname, struct snd_soc_dai_link *pre_dai_links, 42 int pre_num_links); 43 44#endif 45