Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / imx7d-sdb.dts
index 17cca8a9f77bdeb2a45facac719bcd1e85af013f..ac0751bc1177e1544c3c00b9a9073a7e89252d71 100644 (file)
                        };
                };
        };
+
+       sound {
+               compatible = "fsl,imx7d-evk-wm8960",
+                            "fsl,imx-audio-wm8960";
+               model = "wm8960-audio";
+               audio-cpu = <&sai1>;
+               audio-codec = <&codec>;
+               hp-det-gpio = <&gpio2 28 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", "AMIC",
+                       "AMIC", "MICB";
+       };
 };
 
 &adc1 {
 &ecspi3 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_ecspi3>;
-       cs-gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>;
+       cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
        status = "okay";
 
        tsc2046@0 {
                clocks = <&clks IMX7D_AUDIO_MCLK_ROOT_CLK>;
                clock-names = "mclk";
                wlf,shared-lrclk;
+               wlf,hp-cfg = <2 2 3>;
+               wlf,gpio-cfg = <1 3>;
+               assigned-clocks = <&clks IMX7D_AUDIO_MCLK_ROOT_SRC>,
+                                 <&clks IMX7D_PLL_AUDIO_POST_DIV>,
+                                 <&clks IMX7D_AUDIO_MCLK_ROOT_CLK>;
+               assigned-clock-parents = <&clks IMX7D_PLL_AUDIO_POST_DIV>;
+               assigned-clock-rates = <0>, <884736000>, <12288000>;
        };
 };
 
        vin-supply = <&sw2_reg>;
 };
 
+&sai1 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_sai1>;
+       assigned-clocks = <&clks IMX7D_SAI1_ROOT_SRC>,
+                         <&clks IMX7D_PLL_AUDIO_POST_DIV>,
+                         <&clks IMX7D_SAI1_ROOT_CLK>;
+       assigned-clock-parents = <&clks IMX7D_PLL_AUDIO_POST_DIV>;
+       assigned-clock-rates = <0>, <884736000>, <36864000>;
+       status = "okay";
+};
+
+&sai3 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_sai3 &pinctrl_sai3_mclk>;
+       assigned-clocks = <&clks IMX7D_SAI3_ROOT_SRC>,
+                         <&clks IMX7D_PLL_AUDIO_POST_DIV>,
+                         <&clks IMX7D_SAI3_ROOT_CLK>;
+       assigned-clock-parents = <&clks IMX7D_PLL_AUDIO_POST_DIV>;
+       assigned-clock-rates = <0>, <884736000>, <36864000>;
+       status = "okay";
+};
+
 &snvs_pwrkey {
        status = "okay";
 };
                pinctrl_hog: hoggrp {
                        fsl,pins = <
                                MX7D_PAD_ECSPI2_SS0__GPIO4_IO23         0x34  /* bt reg on */
+                               MX7D_PAD_EPDC_BDR0__GPIO2_IO28          0x59  /* headphone detect */
                        >;
                };
 
                        >;
                };
 
+               pinctrl_sai1: sai1grp {
+                       fsl,pins = <
+                               MX7D_PAD_SAI1_MCLK__SAI1_MCLK           0x1f
+                               MX7D_PAD_ENET1_RX_CLK__SAI1_TX_BCLK     0x1f
+                               MX7D_PAD_ENET1_CRS__SAI1_TX_SYNC        0x1f
+                               MX7D_PAD_ENET1_COL__SAI1_TX_DATA0       0x30
+                               MX7D_PAD_ENET1_TX_CLK__SAI1_RX_DATA0    0x1f
+                       >;
+               };
+
+               pinctrl_sai2: sai2grp {
+                       fsl,pins = <
+                               MX7D_PAD_SAI2_TX_BCLK__SAI2_TX_BCLK     0x1f
+                               MX7D_PAD_SAI2_TX_SYNC__SAI2_TX_SYNC     0x1f
+                               MX7D_PAD_SAI2_TX_DATA__SAI2_TX_DATA0    0x30
+                               MX7D_PAD_SAI2_RX_DATA__SAI2_RX_DATA0    0x1f
+                       >;
+               };
+
+               pinctrl_sai3: sai3grp {
+                       fsl,pins = <
+                               MX7D_PAD_UART3_TX_DATA__SAI3_TX_BCLK   0x1f
+                               MX7D_PAD_UART3_CTS_B__SAI3_TX_SYNC     0x1f
+                               MX7D_PAD_UART3_RTS_B__SAI3_TX_DATA0    0x30
+                       >;
+               };
+
                pinctrl_spi4: spi4grp {
                        fsl,pins = <
                                MX7D_PAD_GPIO1_IO09__GPIO1_IO9  0x59
                        MX7D_PAD_LPSR_GPIO1_IO07__GPIO1_IO7       0x14
                >;
        };
+
+       pinctrl_sai3_mclk: sai3grp_mclk {
+               fsl,pins = <
+                       MX7D_PAD_LPSR_GPIO1_IO03__SAI3_MCLK     0x1f
+               >;
+       };
 };