ARM: tegra: enable audio on Dalmore
authorStephen Warren <swarren@nvidia.com>
Tue, 12 Mar 2013 23:03:42 +0000 (17:03 -0600)
committerStephen Warren <swarren@nvidia.com>
Wed, 12 Jun 2013 20:56:39 +0000 (14:56 -0600)
Dalmore uses the RT5640 audio CODEC. Instantiate this on the I2C bus.
Enable the relevant Tegra I2C controller. Add the top-level "sound" node
to hook everything together, and provide a "sound card" device.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
arch/arm/boot/dts/tegra114-dalmore.dts

index b92922f..cb640eb 100644 (file)
                        sbs,poll-retry-count = <100>;
                        power-supplies = <&charger>;
                };
+
+               rt5640: rt5640 {
+                       compatible = "realtek,rt5640";
+                       reg = <0x1c>;
+                       interrupt-parent = <&gpio>;
+                       interrupts = <TEGRA_GPIO(W, 3) GPIO_ACTIVE_HIGH>;
+                       realtek,ldo1-en-gpios =
+                               <&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_HIGH>;
+               };
        };
 
        i2c@7000d000 {
                nvidia,invert-interrupt;
        };
 
+       ahub {
+               i2s@70080400 {
+                       status = "okay";
+               };
+       };
+
        sdhci@78000400 {
                cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
                bus-width = <4>;
                        vin-supply = <&tps65090_dcdc1_reg>;
                };
        };
+
+       sound {
+               compatible = "nvidia,tegra-audio-rt5640-dalmore",
+                            "nvidia,tegra-audio-rt5640";
+               nvidia,model = "NVIDIA Tegra Dalmore";
+
+               nvidia,audio-routing =
+                       "Headphones", "HPOR",
+                       "Headphones", "HPOL",
+                       "Speakers", "SPORP",
+                       "Speakers", "SPORN",
+                       "Speakers", "SPOLP",
+                       "Speakers", "SPOLN";
+
+               nvidia,i2s-controller = <&tegra_i2s1>;
+               nvidia,audio-codec = <&rt5640>;
+
+               nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(R, 7) GPIO_ACTIVE_HIGH>;
+
+               clocks = <&tegra_car TEGRA114_CLK_PLL_A>,
+                        <&tegra_car TEGRA114_CLK_PLL_A_OUT0>,
+                        <&tegra_car TEGRA114_CLK_EXTERN1>;
+               clock-names = "pll_a", "pll_a_out0", "mclk";
+       };
 };