Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 /*
0003  * mt2701-afe-clock-ctrl.h  --  Mediatek 2701 afe clock ctrl definition
0004  *
0005  * Copyright (c) 2016 MediaTek Inc.
0006  * Author: Garlic Tseng <garlic.tseng@mediatek.com>
0007  *     Ryder Lee <ryder.lee@mediatek.com>
0008  */
0009 
0010 #ifndef _MT2701_AFE_CLOCK_CTRL_H_
0011 #define _MT2701_AFE_CLOCK_CTRL_H_
0012 
0013 struct mtk_base_afe;
0014 struct mt2701_i2s_path;
0015 
0016 int mt2701_init_clock(struct mtk_base_afe *afe);
0017 int mt2701_afe_enable_clock(struct mtk_base_afe *afe);
0018 int mt2701_afe_disable_clock(struct mtk_base_afe *afe);
0019 
0020 int mt2701_afe_enable_i2s(struct mtk_base_afe *afe,
0021               struct mt2701_i2s_path *i2s_path,
0022               int dir);
0023 void mt2701_afe_disable_i2s(struct mtk_base_afe *afe,
0024                 struct mt2701_i2s_path *i2s_path,
0025                 int dir);
0026 int mt2701_afe_enable_mclk(struct mtk_base_afe *afe, int id);
0027 void mt2701_afe_disable_mclk(struct mtk_base_afe *afe, int id);
0028 
0029 int mt2701_enable_btmrg_clk(struct mtk_base_afe *afe);
0030 void mt2701_disable_btmrg_clk(struct mtk_base_afe *afe);
0031 
0032 int mt2701_mclk_configuration(struct mtk_base_afe *afe, int id);
0033 
0034 #endif