1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * mt2701-afe-clock-ctrl.h -- Mediatek 2701 afe clock ctrl definition 4 * 5 * Copyright (c) 2016 MediaTek Inc. 6 * Author: Garlic Tseng <garlic.tseng@mediatek.com> 7 * Ryder Lee <ryder.lee@mediatek.com> 8 */ 9 10 #ifndef _MT2701_AFE_CLOCK_CTRL_H_ 11 #define _MT2701_AFE_CLOCK_CTRL_H_ 12 13 struct mtk_base_afe; 14 struct mt2701_i2s_path; 15 16 int mt2701_init_clock(struct mtk_base_afe *afe); 17 int mt2701_afe_enable_clock(struct mtk_base_afe *afe); 18 int mt2701_afe_disable_clock(struct mtk_base_afe *afe); 19 20 int mt2701_afe_enable_i2s(struct mtk_base_afe *afe, 21 struct mt2701_i2s_path *i2s_path, 22 int dir); 23 void mt2701_afe_disable_i2s(struct mtk_base_afe *afe, 24 struct mt2701_i2s_path *i2s_path, 25 int dir); 26 int mt2701_afe_enable_mclk(struct mtk_base_afe *afe, int id); 27 void mt2701_afe_disable_mclk(struct mtk_base_afe *afe, int id); 28 29 int mt2701_enable_btmrg_clk(struct mtk_base_afe *afe); 30 void mt2701_disable_btmrg_clk(struct mtk_base_afe *afe); 31 32 int mt2701_mclk_configuration(struct mtk_base_afe *afe, int id); 33 34 #endif 35