Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: tegra: add clocks property to sound nodes

Audio-related clocks need to be represented in the device tree. Update
bindings to describe which clocks are needed, and DT files to include
those clocks.

Signed-off-by: Stephen Warren <swarren@nvidia.com>

+61
+8
Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt
··· 2 2 3 3 Required properties: 4 4 - compatible : "nvidia,tegra-audio-alc5632" 5 + - clocks : Must contain an entry for each entry in clock-names. 6 + - clock-names : Must include the following entries: 7 + "pll_a" (The Tegra clock of that name), 8 + "pll_a_out0" (The Tegra clock of that name), 9 + "mclk" (The Tegra cdev1/extern1 clock, which feeds the CODEC's mclk) 5 10 - nvidia,model : The user-visible name of this sound complex. 6 11 - nvidia,audio-routing : A list of the connections between audio components. 7 12 Each entry is a pair of strings, the first being the connection's sink, ··· 61 56 62 57 nvidia,i2s-controller = <&tegra_i2s1>; 63 58 nvidia,audio-codec = <&alc5632>; 59 + 60 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 61 + clock-names = "pll_a", "pll_a_out0", "mclk"; 64 62 };
+7
Documentation/devicetree/bindings/sound/nvidia,tegra-audio-trimslice.txt
··· 2 2 3 3 Required properties: 4 4 - compatible : "nvidia,tegra-audio-trimslice" 5 + - clocks : Must contain an entry for each entry in clock-names. 6 + - clock-names : Must include the following entries: 7 + "pll_a" (The Tegra clock of that name), 8 + "pll_a_out0" (The Tegra clock of that name), 9 + "mclk" (The Tegra cdev1/extern1 clock, which feeds the CODEC's mclk) 5 10 - nvidia,i2s-controller : The phandle of the Tegra I2S1 controller 6 11 - nvidia,audio-codec : The phandle of the WM8903 audio codec 7 12 ··· 16 11 compatible = "nvidia,tegra-audio-trimslice"; 17 12 nvidia,i2s-controller = <&tegra_i2s1>; 18 13 nvidia,audio-codec = <&codec>; 14 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 15 + clock-names = "pll_a", "pll_a_out0", "mclk"; 19 16 };
+8
Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8753.txt
··· 2 2 3 3 Required properties: 4 4 - compatible : "nvidia,tegra-audio-wm8753" 5 + - clocks : Must contain an entry for each entry in clock-names. 6 + - clock-names : Must include the following entries: 7 + "pll_a" (The Tegra clock of that name), 8 + "pll_a_out0" (The Tegra clock of that name), 9 + "mclk" (The Tegra cdev1/extern1 clock, which feeds the CODEC's mclk) 5 10 - nvidia,model : The user-visible name of this sound complex. 6 11 - nvidia,audio-routing : A list of the connections between audio components. 7 12 Each entry is a pair of strings, the first being the connection's sink, ··· 55 50 56 51 nvidia,i2s-controller = <&i2s1>; 57 52 nvidia,audio-codec = <&wm8753>; 53 + 54 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 55 + clock-names = "pll_a", "pll_a_out0", "mclk"; 58 56 }; 59 57
+8
Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt
··· 2 2 3 3 Required properties: 4 4 - compatible : "nvidia,tegra-audio-wm8903" 5 + - clocks : Must contain an entry for each entry in clock-names. 6 + - clock-names : Must include the following entries: 7 + "pll_a" (The Tegra clock of that name), 8 + "pll_a_out0" (The Tegra clock of that name), 9 + "mclk" (The Tegra cdev1/extern1 clock, which feeds the CODEC's mclk) 5 10 - nvidia,model : The user-visible name of this sound complex. 6 11 - nvidia,audio-routing : A list of the connections between audio components. 7 12 Each entry is a pair of strings, the first being the connection's sink, ··· 72 67 nvidia,hp-det-gpios = <&gpio 178 0>; /* gpio PW2 */ 73 68 nvidia,int-mic-en-gpios = <&gpio 184 0>; /*gpio PX0 */ 74 69 nvidia,ext-mic-en-gpios = <&gpio 185 0>; /* gpio PX1 */ 70 + 71 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 72 + clock-names = "pll_a", "pll_a_out0", "mclk"; 75 73 }; 76 74
+3
arch/arm/boot/dts/tegra20-harmony.dts
··· 669 669 nvidia,hp-det-gpios = <&gpio 178 0>; /* gpio PW2 */ 670 670 nvidia,int-mic-en-gpios = <&gpio 184 0>; /*gpio PX0 */ 671 671 nvidia,ext-mic-en-gpios = <&gpio 185 0>; /* gpio PX1 */ 672 + 673 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 674 + clock-names = "pll_a", "pll_a_out0", "mclk"; 672 675 }; 673 676 };
+3
arch/arm/boot/dts/tegra20-medcom-wide.dts
··· 58 58 59 59 nvidia,spkr-en-gpios = <&wm8903 2 0>; 60 60 nvidia,hp-det-gpios = <&gpio 178 0>; /* gpio PW2 */ 61 + 62 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 63 + clock-names = "pll_a", "pll_a_out0", "mclk"; 61 64 }; 62 65 };
+3
arch/arm/boot/dts/tegra20-paz00.dts
··· 514 514 nvidia,audio-codec = <&alc5632>; 515 515 nvidia,i2s-controller = <&tegra_i2s1>; 516 516 nvidia,hp-det-gpios = <&gpio 178 0>; /* gpio PW2 */ 517 + 518 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 519 + clock-names = "pll_a", "pll_a_out0", "mclk"; 517 520 }; 518 521 };
+3
arch/arm/boot/dts/tegra20-plutux.dts
··· 52 52 53 53 nvidia,spkr-en-gpios = <&wm8903 2 0>; 54 54 nvidia,hp-det-gpios = <&gpio 178 0>; /* gpio PW2 */ 55 + 56 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 57 + clock-names = "pll_a", "pll_a_out0", "mclk"; 55 58 }; 56 59 };
+3
arch/arm/boot/dts/tegra20-seaboard.dts
··· 821 821 822 822 nvidia,spkr-en-gpios = <&wm8903 2 0>; 823 823 nvidia,hp-det-gpios = <&gpio 185 0>; /* gpio PX1 */ 824 + 825 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 826 + clock-names = "pll_a", "pll_a_out0", "mclk"; 824 827 }; 825 828 };
+3
arch/arm/boot/dts/tegra20-tec.dts
··· 52 52 53 53 nvidia,spkr-en-gpios = <&wm8903 2 0>; 54 54 nvidia,hp-det-gpios = <&gpio 178 0>; /* gpio PW2 */ 55 + 56 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 57 + clock-names = "pll_a", "pll_a_out0", "mclk"; 55 58 }; 56 59 };
+3
arch/arm/boot/dts/tegra20-trimslice.dts
··· 376 376 compatible = "nvidia,tegra-audio-trimslice"; 377 377 nvidia,i2s-controller = <&tegra_i2s1>; 378 378 nvidia,audio-codec = <&codec>; 379 + 380 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 381 + clock-names = "pll_a", "pll_a_out0", "mclk"; 379 382 }; 380 383 };
+3
arch/arm/boot/dts/tegra20-ventana.dts
··· 620 620 nvidia,hp-det-gpios = <&gpio 178 0>; /* gpio PW2 */ 621 621 nvidia,int-mic-en-gpios = <&gpio 184 0>; /* gpio PX0 */ 622 622 nvidia,ext-mic-en-gpios = <&gpio 185 0>; /* gpio PX1 */ 623 + 624 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 625 + clock-names = "pll_a", "pll_a_out0", "mclk"; 623 626 }; 624 627 };
+3
arch/arm/boot/dts/tegra20-whistler.dts
··· 573 573 574 574 nvidia,i2s-controller = <&tegra_i2s1>; 575 575 nvidia,audio-codec = <&codec>; 576 + 577 + clocks = <&tegra_car 112>, <&tegra_car 113>, <&tegra_car 93>; 578 + clock-names = "pll_a", "pll_a_out0", "mclk"; 576 579 }; 577 580 };
+3
arch/arm/boot/dts/tegra30-cardhu.dtsi
··· 509 509 510 510 nvidia,spkr-en-gpios = <&wm8903 2 0>; 511 511 nvidia,hp-det-gpios = <&gpio 178 0>; /* gpio PW2 */ 512 + 513 + clocks = <&tegra_car 184>, <&tegra_car 185>, <&tegra_car 120>; 514 + clock-names = "pll_a", "pll_a_out0", "mclk"; 512 515 }; 513 516 };