13a280ed1SRyder Lee /* SPDX-License-Identifier: GPL-2.0 */ 2283b6124SGarlic Tseng /* 3283b6124SGarlic Tseng * mtk-afe-platform-driver.h -- Mediatek afe platform driver definition 4283b6124SGarlic Tseng * 5283b6124SGarlic Tseng * Copyright (c) 2016 MediaTek Inc. 6283b6124SGarlic Tseng * Author: Garlic Tseng <garlic.tseng@mediatek.com> 7283b6124SGarlic Tseng */ 8283b6124SGarlic Tseng 9283b6124SGarlic Tseng #ifndef _MTK_AFE_PLATFORM_DRIVER_H_ 10283b6124SGarlic Tseng #define _MTK_AFE_PLATFORM_DRIVER_H_ 11283b6124SGarlic Tseng 12f1b5bf07SKuninori Morimoto #define AFE_PCM_NAME "mtk-afe-pcm" 13b3c702f5SKaiChieh Chuang extern const struct snd_pcm_ops mtk_afe_pcm_ops; 14f1b5bf07SKuninori Morimoto extern const struct snd_soc_component_driver mtk_afe_pcm_platform; 15283b6124SGarlic Tseng 1613be427eSKaiChieh Chuang struct mtk_base_afe; 17b3c702f5SKaiChieh Chuang struct snd_pcm; 1813be427eSKaiChieh Chuang struct snd_soc_component; 19b3c702f5SKaiChieh Chuang struct snd_soc_pcm_runtime; 20b3c702f5SKaiChieh Chuang 21b3c702f5SKaiChieh Chuang 22b3c702f5SKaiChieh Chuang int mtk_afe_pcm_new(struct snd_soc_pcm_runtime *rtd); 23b3c702f5SKaiChieh Chuang void mtk_afe_pcm_free(struct snd_pcm *pcm); 2413be427eSKaiChieh Chuang 2513be427eSKaiChieh Chuang int mtk_afe_combine_sub_dai(struct mtk_base_afe *afe); 2613be427eSKaiChieh Chuang int mtk_afe_add_sub_dai_control(struct snd_soc_component *component); 27283b6124SGarlic Tseng #endif 28283b6124SGarlic Tseng 29