xref: /openbmc/linux/sound/soc/qcom/qdsp6/q6dsp-lpass-ports.h (revision 03ab8e6297acd1bc0eedaa050e2a1635c576fd11)
1*95b6cd57SSrinivas Kandagatla /* SPDX-License-Identifier: GPL-2.0 */
2*95b6cd57SSrinivas Kandagatla 
3*95b6cd57SSrinivas Kandagatla #ifndef __Q6DSP_AUDIO_PORTS_H__
4*95b6cd57SSrinivas Kandagatla #define __Q6DSP_AUDIO_PORTS_H__
5*95b6cd57SSrinivas Kandagatla 
6*95b6cd57SSrinivas Kandagatla struct q6dsp_audio_port_dai_driver_config {
7*95b6cd57SSrinivas Kandagatla 	int (*probe)(struct snd_soc_dai *dai);
8*95b6cd57SSrinivas Kandagatla 	int (*remove)(struct snd_soc_dai *dai);
9*95b6cd57SSrinivas Kandagatla 	const struct snd_soc_dai_ops *q6hdmi_ops;
10*95b6cd57SSrinivas Kandagatla 	const struct snd_soc_dai_ops *q6slim_ops;
11*95b6cd57SSrinivas Kandagatla 	const struct snd_soc_dai_ops *q6i2s_ops;
12*95b6cd57SSrinivas Kandagatla 	const struct snd_soc_dai_ops *q6tdm_ops;
13*95b6cd57SSrinivas Kandagatla 	const struct snd_soc_dai_ops *q6dma_ops;
14*95b6cd57SSrinivas Kandagatla };
15*95b6cd57SSrinivas Kandagatla 
16*95b6cd57SSrinivas Kandagatla struct snd_soc_dai_driver *q6dsp_audio_ports_set_config(struct device *dev,
17*95b6cd57SSrinivas Kandagatla 					struct q6dsp_audio_port_dai_driver_config *cfg,
18*95b6cd57SSrinivas Kandagatla 					int *num_dais);
19*95b6cd57SSrinivas Kandagatla int q6dsp_audio_ports_of_xlate_dai_name(struct snd_soc_component *component,
20*95b6cd57SSrinivas Kandagatla 					const struct of_phandle_args *args,
21*95b6cd57SSrinivas Kandagatla 					const char **dai_name);
22*95b6cd57SSrinivas Kandagatla #endif /* __Q6DSP_AUDIO_PORTS_H__ */
23