mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-14 00:39:30 -04:00
arm64: dts: imx8qm-mek: add sai and wm8960 support
Add sai[0,1,6,7], wm8960 and asrc0 support. Signed-off-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
This commit is contained in:
@@ -46,6 +46,46 @@ reg_vref_1v8: regulator-adc-vref {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
};
|
||||
|
||||
bt_sco_codec: audio-codec-bt {
|
||||
compatible = "linux,bt-sco";
|
||||
#sound-dai-cells = <1>;
|
||||
};
|
||||
|
||||
sound-bt-sco {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "bt-sco-audio";
|
||||
simple-audio-card,format = "dsp_a";
|
||||
simple-audio-card,bitclock-inversion;
|
||||
simple-audio-card,frame-master = <&btcpu>;
|
||||
simple-audio-card,bitclock-master = <&btcpu>;
|
||||
|
||||
btcpu: simple-audio-card,cpu {
|
||||
sound-dai = <&sai0>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <16>;
|
||||
};
|
||||
|
||||
simple-audio-card,codec {
|
||||
sound-dai = <&bt_sco_codec 1>;
|
||||
};
|
||||
};
|
||||
|
||||
sound-wm8960 {
|
||||
compatible = "fsl,imx-audio-wm8960";
|
||||
model = "wm8960-audio";
|
||||
audio-cpu = <&sai1>;
|
||||
audio-codec = <&wm8960>;
|
||||
hp-det-gpio = <&lsio_gpio0 31 GPIO_ACTIVE_HIGH>;
|
||||
audio-routing = "Headphone Jack", "HP_L",
|
||||
"Headphone Jack", "HP_R",
|
||||
"Ext Spk", "SPK_LP",
|
||||
"Ext Spk", "SPK_LN",
|
||||
"Ext Spk", "SPK_RP",
|
||||
"Ext Spk", "SPK_RN",
|
||||
"LINPUT1", "Mic Jack",
|
||||
"Mic Jack", "MICB";
|
||||
};
|
||||
};
|
||||
|
||||
&adc0 {
|
||||
@@ -55,6 +95,15 @@ &adc0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&amix {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&asrc0 {
|
||||
fsl,asrc-rate = <48000>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
@@ -65,6 +114,21 @@ &i2c1 {
|
||||
scl-gpios = <&lsio_gpio0 14 GPIO_ACTIVE_HIGH>;
|
||||
sda-gpios = <&lsio_gpio0 15 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
|
||||
wm8960: audio-codec@1a {
|
||||
compatible = "wlf,wm8960";
|
||||
reg = <0x1a>;
|
||||
clocks = <&mclkout0_lpcg IMX_LPCG_CLK_0>;
|
||||
clock-names = "mclk";
|
||||
assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
|
||||
<&mclkout0_lpcg IMX_LPCG_CLK_0>;
|
||||
assigned-clock-rates = <786432000>, <49152000>, <12288000>, <12288000>;
|
||||
wlf,shared-lrclk;
|
||||
wlf,hp-cfg = <2 2 3>;
|
||||
wlf,gpio-cfg = <1 3>;
|
||||
};
|
||||
};
|
||||
|
||||
&lpuart0 {
|
||||
@@ -160,7 +224,64 @@ &usdhc2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sai0 {
|
||||
#sound-dai-cells = <0>;
|
||||
assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
|
||||
<&sai0_lpcg IMX_LPCG_CLK_4>;
|
||||
assigned-clock-rates = <786432000>, <49152000>, <12288000>, <49152000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_sai0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sai1 {
|
||||
assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
|
||||
<&sai1_lpcg IMX_LPCG_CLK_4>;
|
||||
assigned-clock-rates = <786432000>, <49152000>, <12288000>, <49152000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_sai1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sai6 {
|
||||
assigned-clocks = <&acm IMX_ADMA_ACM_SAI6_MCLK_SEL>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_PLL>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_SLV_BUS>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_MST_BUS>,
|
||||
<&sai6_lpcg IMX_LPCG_CLK_4>;
|
||||
assigned-clock-parents = <&aud_pll_div1_lpcg IMX_LPCG_CLK_0>;
|
||||
assigned-clock-rates = <0>, <786432000>, <98304000>, <12288000>, <98304000>;
|
||||
fsl,sai-asynchronous;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sai7 {
|
||||
assigned-clocks = <&acm IMX_ADMA_ACM_SAI7_MCLK_SEL>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_PLL>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_SLV_BUS>,
|
||||
<&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_MST_BUS>,
|
||||
<&sai7_lpcg IMX_LPCG_CLK_4>;
|
||||
assigned-clock-parents = <&aud_pll_div1_lpcg IMX_LPCG_CLK_0>;
|
||||
assigned-clock-rates = <0>, <786432000>, <98304000>, <12288000>, <98304000>;
|
||||
fsl,sai-asynchronous;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&iomuxc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_hog>;
|
||||
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
IMX8QM_MCLK_OUT0_AUD_ACM_MCLK_OUT0 0x0600004c
|
||||
IMX8QM_SCU_GPIO0_03_LSIO_GPIO0_IO31 0x0600004c
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_i2c1: i2c1grp {
|
||||
fsl,pins = <
|
||||
IMX8QM_GPT0_CLK_DMA_I2C1_SCL 0x0600004c
|
||||
@@ -256,6 +377,24 @@ IMX8QM_M41_GPIO0_01_DMA_UART3_TX 0x06000020
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_sai0: sai0grp {
|
||||
fsl,pins = <
|
||||
IMX8QM_SPI0_CS1_AUD_SAI0_TXC 0x0600004c
|
||||
IMX8QM_SPI2_CS1_AUD_SAI0_TXFS 0x0600004c
|
||||
IMX8QM_SAI1_RXFS_AUD_SAI0_RXD 0x0600004c
|
||||
IMX8QM_SAI1_RXC_AUD_SAI0_TXD 0x0600006c
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_sai1: sai1grp {
|
||||
fsl,pins = <
|
||||
IMX8QM_SAI1_RXD_AUD_SAI1_RXD 0x06000040
|
||||
IMX8QM_SAI1_TXFS_AUD_SAI1_TXFS 0x06000040
|
||||
IMX8QM_SAI1_TXD_AUD_SAI1_TXD 0x06000060
|
||||
IMX8QM_SAI1_TXC_AUD_SAI1_TXC 0x06000040
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc1: usdhc1grp {
|
||||
fsl,pins = <
|
||||
IMX8QM_EMMC0_CLK_CONN_EMMC0_CLK 0x06000041
|
||||
|
||||
Reference in New Issue
Block a user