Skip to content

Commit

Permalink
ARM: dt: tegra: Enable audio on WM8903 boards, disable others
Browse files Browse the repository at this point in the history
Add complete bindings to instantiate and configure the codec and
top-level audio complex on all currently supported boards using the
Tegra+WM8903 audio driver.

On those boards, disable the I2S2 controller since it isn't used.

On boards not using the WM8903 codec, disable all the audio devices;
they can be re-enabled once the relevant codec and ASoC machine drivers
have been ported to device-tree.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
  • Loading branch information
Stephen Warren authored and Olof Johansson committed Feb 7, 2012
1 parent c404af0 commit 797acf7
Show file tree
Hide file tree
Showing 5 changed files with 137 additions and 10 deletions.
41 changes: 31 additions & 10 deletions arch/arm/boot/dts/tegra-harmony.dts
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,18 @@
i2c@7000c000 {
clock-frequency = <400000>;

codec: wm8903@1a {
wm8903: wm8903@1a {
compatible = "wlf,wm8903";
reg = <0x1a>;
interrupts = < 347 >;
interrupt-parent = <&gpio>;
interrupts = < 187 0x04 >;

gpio-controller;
#gpio-cells = <2>;

/* 0x8000 = Not configured */
gpio-cfg = < 0x8000 0x8000 0 0x8000 0x8000 >;
micdet-cfg = <0>;
micdet-delay = <100>;
gpio-cfg = < 0xffffffff 0xffffffff 0 0xffffffff 0xffffffff >;
};
};

Expand All @@ -38,13 +40,32 @@
clock-frequency = <400000>;
};

sound {
compatible = "nvidia,harmony-sound", "nvidia,tegra-wm8903";
i2s@70002a00 {
status = "disable";
};

spkr-en-gpios = <&codec 2 0>;
hp-det-gpios = <&gpio 178 0>;
int-mic-en-gpios = <&gpio 184 0>;
ext-mic-en-gpios = <&gpio 185 0>;
sound {
compatible = "nvidia,tegra-audio-wm8903-harmony",
"nvidia,tegra-audio-wm8903";
nvidia,model = "NVIDIA Tegra Harmony";

nvidia,audio-routing =
"Headphone Jack", "HPOUTR",
"Headphone Jack", "HPOUTL",
"Int Spk", "ROP",
"Int Spk", "RON",
"Int Spk", "LOP",
"Int Spk", "LON",
"Mic Jack", "MICBIAS",
"IN1L", "Mic Jack";

nvidia,i2s-controller = <&tegra_i2s1>;
nvidia,audio-codec = <&wm8903>;

nvidia,spkr-en-gpios = <&wm8903 2 0>;
nvidia,hp-det-gpios = <&gpio 178 0>; /* gpio PW2 */
nvidia,int-mic-en-gpios = <&gpio 184 0>; /*gpio PX0 */
nvidia,ext-mic-en-gpios = <&gpio 185 0>; /* gpio PX1 */
};

serial@70006000 {
Expand Down
12 changes: 12 additions & 0 deletions arch/arm/boot/dts/tegra-paz00.dts
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,18 @@
clock-frequency = <400000>;
};

i2s@70002800 {
status = "disable";
};

i2s@70002a00 {
status = "disable";
};

das@70000c00 {
status = "disable";
};

serial@70006000 {
clock-frequency = <216000000>;
};
Expand Down
40 changes: 40 additions & 0 deletions arch/arm/boot/dts/tegra-seaboard.dts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,20 @@

i2c@7000c000 {
clock-frequency = <400000>;

wm8903: wm8903@1a {
compatible = "wlf,wm8903";
reg = <0x1a>;
interrupt-parent = <&gpio>;
interrupts = < 187 0x04 >;

gpio-controller;
#gpio-cells = <2>;

micdet-cfg = <0>;
micdet-delay = <100>;
gpio-cfg = < 0xffffffff 0xffffffff 0 0xffffffff 0xffffffff >;
};
};

i2c@7000c400 {
Expand All @@ -32,6 +46,32 @@
};
};

i2s@70002a00 {
status = "disable";
};

sound {
compatible = "nvidia,tegra-audio-wm8903-seaboard",
"nvidia,tegra-audio-wm8903";
nvidia,model = "NVIDIA Tegra Seaboard";

nvidia,audio-routing =
"Headphone Jack", "HPOUTR",
"Headphone Jack", "HPOUTL",
"Int Spk", "ROP",
"Int Spk", "RON",
"Int Spk", "LOP",
"Int Spk", "LON",
"Mic Jack", "MICBIAS",
"IN1R", "Mic Jack";

nvidia,i2s-controller = <&tegra_i2s1>;
nvidia,audio-codec = <&wm8903>;

nvidia,spkr-en-gpios = <&wm8903 2 0>;
nvidia,hp-det-gpios = <&gpio 185 0>; /* gpio PX1 */
};

serial@70006000 {
status = "disable";
};
Expand Down
12 changes: 12 additions & 0 deletions arch/arm/boot/dts/tegra-trimslice.dts
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,18 @@
status = "disable";
};

i2s@70002800 {
status = "disable";
};

i2s@70002a00 {
status = "disable";
};

das@70000c00 {
status = "disable";
};

serial@70006000 {
clock-frequency = < 216000000 >;
};
Expand Down
42 changes: 42 additions & 0 deletions arch/arm/boot/dts/tegra-ventana.dts
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,20 @@

i2c@7000c000 {
clock-frequency = <400000>;

wm8903: wm8903@1a {
compatible = "wlf,wm8903";
reg = <0x1a>;
interrupt-parent = <&gpio>;
interrupts = < 187 0x04 >;

gpio-controller;
#gpio-cells = <2>;

micdet-cfg = <0>;
micdet-delay = <100>;
gpio-cfg = < 0xffffffff 0xffffffff 0 0xffffffff 0xffffffff >;
};
};

i2c@7000c400 {
Expand All @@ -26,6 +40,34 @@
clock-frequency = <400000>;
};

i2s@70002a00 {
status = "disable";
};

sound {
compatible = "nvidia,tegra-audio-wm8903-ventana",
"nvidia,tegra-audio-wm8903";
nvidia,model = "NVIDIA Tegra Ventana";

nvidia,audio-routing =
"Headphone Jack", "HPOUTR",
"Headphone Jack", "HPOUTL",
"Int Spk", "ROP",
"Int Spk", "RON",
"Int Spk", "LOP",
"Int Spk", "LON",
"Mic Jack", "MICBIAS",
"IN1L", "Mic Jack";

nvidia,i2s-controller = <&tegra_i2s1>;
nvidia,audio-codec = <&wm8903>;

nvidia,spkr-en-gpios = <&wm8903 2 0>;
nvidia,hp-det-gpios = <&gpio 178 0>; /* gpio PW2 */
nvidia,int-mic-en-gpios = <&gpio 184 0>; /*gpio PX0 */
nvidia,ext-mic-en-gpios = <&gpio 185 0>; /* gpio PX1 */
};

serial@70006000 {
status = "disable";
};
Expand Down

0 comments on commit 797acf7

Please sign in to comment.