0001
0002
0003
0004
0005
0006
0007
0008 #ifndef __LINUX_SND_RT5682S_H
0009 #define __LINUX_SND_RT5682S_H
0010
0011 enum rt5682s_dmic1_data_pin {
0012 RT5682S_DMIC1_DATA_NULL,
0013 RT5682S_DMIC1_DATA_GPIO2,
0014 RT5682S_DMIC1_DATA_GPIO5,
0015 };
0016
0017 enum rt5682s_dmic1_clk_pin {
0018 RT5682S_DMIC1_CLK_NULL,
0019 RT5682S_DMIC1_CLK_GPIO1,
0020 RT5682S_DMIC1_CLK_GPIO3,
0021 };
0022
0023 enum rt5682s_jd_src {
0024 RT5682S_JD_NULL,
0025 RT5682S_JD1,
0026 };
0027
0028 enum rt5682s_dai_clks {
0029 RT5682S_DAI_WCLK_IDX,
0030 RT5682S_DAI_BCLK_IDX,
0031 RT5682S_DAI_NUM_CLKS,
0032 };
0033
0034 struct rt5682s_platform_data {
0035
0036 int ldo1_en;
0037
0038 enum rt5682s_dmic1_data_pin dmic1_data_pin;
0039 enum rt5682s_dmic1_clk_pin dmic1_clk_pin;
0040 enum rt5682s_jd_src jd_src;
0041 unsigned int dmic_clk_rate;
0042 unsigned int dmic_delay;
0043 unsigned int amic_delay;
0044 bool dmic_clk_driving_high;
0045
0046 const char *dai_clk_names[RT5682S_DAI_NUM_CLKS];
0047 };
0048
0049 #endif