Переглянути джерело

asoc: audio-ext-clk: Add support for multiple lpass clock sources

In bolero, Rx and Tx macros require multiple
lpass clock sources. Update audio clock driver
to support multiple lpass clock instances as required for
Rx and Tx macros.

Change-Id: Ia7d766c52c8edb65f3ceb0585c6fd5a2fee6c5a6
Signed-off-by: Aditya Bavanari <[email protected]>
Aditya Bavanari 6 роки тому
батько
коміт
7259ca6cfe
1 змінених файлів з 48 додано та 0 видалено
  1. 48 0
      asoc/codecs/audio-ext-clk-up.c

+ 48 - 0
asoc/codecs/audio-ext-clk-up.c

@@ -29,6 +29,10 @@ enum {
 	AUDIO_EXT_CLK_LPASS,
 	AUDIO_EXT_CLK_LPASS2,
 	AUDIO_EXT_CLK_LPASS3,
+	AUDIO_EXT_CLK_LPASS4,
+	AUDIO_EXT_CLK_LPASS5,
+	AUDIO_EXT_CLK_LPASS6,
+	AUDIO_EXT_CLK_LPASS7,
 	AUDIO_EXT_CLK_LPASS_MAX,
 	AUDIO_EXT_CLK_MAX = AUDIO_EXT_CLK_LPASS_MAX,
 };
@@ -211,6 +215,50 @@ static struct audio_ext_clk audio_clk_array[] = {
 			},
 		},
 	},
+	{
+		.pnctrl_info = {NULL},
+		.fact = {
+			.mult = 1,
+			.div = 1,
+			.hw.init = &(struct clk_init_data){
+				.name = "audio_lpass_mclk4",
+				.ops = &audio_ext_clk_ops,
+			},
+		},
+	},
+	{
+		.pnctrl_info = {NULL},
+		.fact = {
+			.mult = 1,
+			.div = 1,
+			.hw.init = &(struct clk_init_data){
+				.name = "audio_lpass_mclk5",
+				.ops = &audio_ext_clk_ops,
+			},
+		},
+	},
+	{
+		.pnctrl_info = {NULL},
+		.fact = {
+			.mult = 1,
+			.div = 1,
+			.hw.init = &(struct clk_init_data){
+				.name = "audio_lpass_mclk6",
+				.ops = &audio_ext_clk_ops,
+			},
+		},
+	},
+	{
+		.pnctrl_info = {NULL},
+		.fact = {
+			.mult = 1,
+			.div = 1,
+			.hw.init = &(struct clk_init_data){
+				.name = "audio_lpass_mclk7",
+				.ops = &audio_ext_clk_ops,
+			},
+		},
+	},
 };
 
 static int audio_get_pinctrl(struct platform_device *pdev)