OSDN Git Service

arm64: dts: imx8mn-evk: add bt-sco sound card support
authorShengjiu Wang <shengjiu.wang@nxp.com>
Tue, 21 Jun 2022 02:16:03 +0000 (10:16 +0800)
committerShawn Guo <shawnguo@kernel.org>
Mon, 27 Jun 2022 07:35:05 +0000 (15:35 +0800)
Add bt-sco sound card, which supports wb profile as default

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi

index 8db9d11..261c365 100644 (file)
                linux,autosuspend-period = <125>;
        };
 
+       audio_codec_bt_sco: audio-codec-bt-sco {
+               compatible = "linux,bt-sco";
+               #sound-dai-cells = <1>;
+       };
+
        wm8524: audio-codec {
                #sound-dai-cells = <0>;
                compatible = "wlf,wm8524";
                clock-names = "mclk";
        };
 
+       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 = <&sai2>;
+                       dai-tdm-slot-num = <2>;
+                       dai-tdm-slot-width = <16>;
+               };
+
+               simple-audio-card,codec {
+                       sound-dai = <&audio_codec_bt_sco 1>;
+               };
+       };
+
        sound-wm8524 {
                compatible = "fsl,imx-audio-wm8524";
                model = "wm8524-audio";
        };
 };
 
+&sai2 {
+       #sound-dai-cells = <0>;
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_sai2>;
+       assigned-clocks = <&clk IMX8MN_CLK_SAI2>;
+       assigned-clock-parents = <&clk IMX8MN_AUDIO_PLL1_OUT>;
+       assigned-clock-rates = <24576000>;
+       status = "okay";
+};
+
 &sai3 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_sai3>;
                >;
        };
 
+       pinctrl_sai2: sai2grp {
+               fsl,pins = <
+                       MX8MN_IOMUXC_SAI2_TXC_SAI2_TX_BCLK      0xd6
+                       MX8MN_IOMUXC_SAI2_TXFS_SAI2_TX_SYNC     0xd6
+                       MX8MN_IOMUXC_SAI2_TXD0_SAI2_TX_DATA0    0xd6
+                       MX8MN_IOMUXC_SAI2_RXD0_SAI2_RX_DATA0    0xd6
+               >;
+       };
+
        pinctrl_sai3: sai3grp {
                fsl,pins = <
                        MX8MN_IOMUXC_SAI3_TXFS_SAI3_TX_SYNC     0xd6