diff options
author | Stephen Warren <swarren@nvidia.com> | 2013-03-12 23:03:42 (GMT) |
---|---|---|
committer | Stephen Warren <swarren@nvidia.com> | 2013-06-12 20:56:39 (GMT) |
commit | aa5ae424952fe2d1c2ca2340a433c3e3407262f7 (patch) | |
tree | e7e52df34a68299047c9e60c5b6089629ada566b | |
parent | d5284a67a939764d9a4ab90c7f6882e9c0b0c812 (diff) | |
download | linux-fsl-qoriq-aa5ae424952fe2d1c2ca2340a433c3e3407262f7.tar.xz |
ARM: tegra: enable audio on Dalmore
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>
-rw-r--r-- | arch/arm/boot/dts/tegra114-dalmore.dts | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/tegra114-dalmore.dts b/arch/arm/boot/dts/tegra114-dalmore.dts index b92922f..cb640eb 100644 --- a/arch/arm/boot/dts/tegra114-dalmore.dts +++ b/arch/arm/boot/dts/tegra114-dalmore.dts @@ -729,6 +729,15 @@ 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 { @@ -843,6 +852,12 @@ nvidia,invert-interrupt; }; + ahub { + i2s@70080400 { + status = "okay"; + }; + }; + sdhci@78000400 { cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; bus-width = <4>; @@ -937,4 +952,28 @@ 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"; + }; }; |