ENGR00302353 ARM: dts: Add SSI<->WM8962 audio support for imx6sx-sdb
authorNicolin Chen <Guangyu.Chen@freescale.com>
Fri, 7 Mar 2014 12:25:45 +0000 (20:25 +0800)
committerNitin Garg <nitin.garg@freescale.com>
Wed, 16 Apr 2014 13:57:52 +0000 (08:57 -0500)
Append audio nodes to the devicetree to add audio support for imx6sx-sdb with
Wolfson WM8962 CODEC.

Acked-by: Wang Shengjiu <b02247@freescale.com>
Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
arch/arm/boot/dts/imx6sx-sdb.dts

index d3d81cfeea4098ff38a2fdbf72029c2e275ee6b6..5cdbd86e56dd4a945949ef3fdae22fc7ca4ca50e 100644 (file)
                        regulator-min-microvolt = <3300000>;
                        regulator-max-microvolt = <3300000>;
                };
+
+               reg_psu_5v: psu_5v0 {
+                       compatible = "regulator-fixed";
+                       regulator-name = "PSU-5V0";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       regulator-boot-on;
+               };
+       };
+
+       sound {
+               compatible = "fsl,imx6q-sabresd-wm8962",
+                          "fsl,imx-audio-wm8962";
+               model = "wm8962-audio";
+               ssi-controller = <&ssi2>;
+               audio-codec = <&codec>;
+               audio-routing =
+                       "Headphone Jack", "HPOUTL",
+                       "Headphone Jack", "HPOUTR",
+                       "Ext Spk", "SPKOUTL",
+                       "Ext Spk", "SPKOUTR",
+                       "AMIC", "MICBIAS",
+                       "IN3R", "AMIC";
+               mux-int-port = <2>;
+               mux-ext-port = <6>;
        };
 };
 
        status = "okay";
 };
 
+&audmux {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_audmux_1>;
+       status = "okay";
+};
+
 &fec1 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_enet1_1 &pinctrl_enet1_clkout_1>;
         pinctrl-names = "default";
         pinctrl-0 = <&pinctrl_i2c4_1>;
         status = "okay";
+
+       codec: wm8962@1a {
+               compatible = "wlf,wm8962";
+               reg = <0x1a>;
+               clocks = <&clks IMX6SX_CLK_AUDIO>;
+               DCVDD-supply = <&vgen4_reg>;
+               DBVDD-supply = <&vgen4_reg>;
+               AVDD-supply = <&vgen4_reg>;
+               CPVDD-supply = <&vgen4_reg>;
+               MICVDD-supply = <&vgen3_reg>;
+               PLLVDD-supply = <&vgen4_reg>;
+               SPKVDD1-supply = <&reg_psu_5v>;
+               SPKVDD2-supply = <&reg_psu_5v>;
+               amic-mono;
+       };
 };
 
 &iomuxc {
        };
 };
 
+&ssi2 {
+       status = "okay";
+};
+
 &uart1 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_uart1_1>;