18c2ecf20Sopenharmony_ciNVIDIA Tegra audio complex, with RT5640 CODEC
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciRequired properties:
48c2ecf20Sopenharmony_ci- compatible : "nvidia,tegra-audio-rt5640"
58c2ecf20Sopenharmony_ci- clocks : Must contain an entry for each entry in clock-names.
68c2ecf20Sopenharmony_ci  See ../clocks/clock-bindings.txt for details.
78c2ecf20Sopenharmony_ci- clock-names : Must include the following entries:
88c2ecf20Sopenharmony_ci  - pll_a
98c2ecf20Sopenharmony_ci  - pll_a_out0
108c2ecf20Sopenharmony_ci  - mclk (The Tegra cdev1/extern1 clock, which feeds the CODEC's mclk)
118c2ecf20Sopenharmony_ci- nvidia,model : The user-visible name of this sound complex.
128c2ecf20Sopenharmony_ci- nvidia,audio-routing : A list of the connections between audio components.
138c2ecf20Sopenharmony_ci  Each entry is a pair of strings, the first being the connection's sink,
148c2ecf20Sopenharmony_ci  the second being the connection's source. Valid names for sources and
158c2ecf20Sopenharmony_ci  sinks are the RT5640's pins (as documented in its binding), and the jacks
168c2ecf20Sopenharmony_ci  on the board:
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ci  * Headphones
198c2ecf20Sopenharmony_ci  * Speakers
208c2ecf20Sopenharmony_ci  * Mic Jack
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci- nvidia,i2s-controller : The phandle of the Tegra I2S controller that's
238c2ecf20Sopenharmony_ci  connected to the CODEC.
248c2ecf20Sopenharmony_ci- nvidia,audio-codec : The phandle of the RT5640 audio codec. This binding
258c2ecf20Sopenharmony_ci  assumes that AIF1 on the CODEC is connected to Tegra.
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ciOptional properties:
288c2ecf20Sopenharmony_ci- nvidia,hp-det-gpios : The GPIO that detects headphones are plugged in
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ciExample:
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_cisound {
338c2ecf20Sopenharmony_ci	compatible = "nvidia,tegra-audio-rt5640-dalmore",
348c2ecf20Sopenharmony_ci			"nvidia,tegra-audio-rt5640";
358c2ecf20Sopenharmony_ci	nvidia,model = "NVIDIA Tegra Dalmore";
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci	nvidia,audio-routing =
388c2ecf20Sopenharmony_ci		"Headphones", "HPOR",
398c2ecf20Sopenharmony_ci		"Headphones", "HPOL",
408c2ecf20Sopenharmony_ci		"Speakers", "SPORP",
418c2ecf20Sopenharmony_ci		"Speakers", "SPORN",
428c2ecf20Sopenharmony_ci		"Speakers", "SPOLP",
438c2ecf20Sopenharmony_ci		"Speakers", "SPOLN";
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_ci	nvidia,i2s-controller = <&tegra_i2s1>;
468c2ecf20Sopenharmony_ci	nvidia,audio-codec = <&rt5640>;
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ci	nvidia,hp-det-gpios = <&gpio 143 0>; /* GPIO PR7 */
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ci	clocks = <&tegra_car 216>, <&tegra_car 217>, <&tegra_car 120>;
518c2ecf20Sopenharmony_ci	clock-names = "pll_a", "pll_a_out0", "mclk";
528c2ecf20Sopenharmony_ci};
53