1*88dffe43SDavid Heidelberg# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*88dffe43SDavid Heidelberg%YAML 1.2
3*88dffe43SDavid Heidelberg---
4*88dffe43SDavid Heidelberg$id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-rt5640.yaml#
5*88dffe43SDavid Heidelberg$schema: http://devicetree.org/meta-schemas/core.yaml#
6*88dffe43SDavid Heidelberg
7*88dffe43SDavid Heidelbergtitle: NVIDIA Tegra audio complex with RT5639 or RT5640 CODEC
8*88dffe43SDavid Heidelberg
9*88dffe43SDavid Heidelbergmaintainers:
10*88dffe43SDavid Heidelberg  - Jon Hunter <jonathanh@nvidia.com>
11*88dffe43SDavid Heidelberg  - Thierry Reding <thierry.reding@gmail.com>
12*88dffe43SDavid Heidelberg
13*88dffe43SDavid HeidelbergallOf:
14*88dffe43SDavid Heidelberg  - $ref: nvidia,tegra-audio-common.yaml#
15*88dffe43SDavid Heidelberg
16*88dffe43SDavid Heidelbergproperties:
17*88dffe43SDavid Heidelberg  compatible:
18*88dffe43SDavid Heidelberg    items:
19*88dffe43SDavid Heidelberg      - pattern: '^[a-z0-9]+,tegra-audio-rt56(39|40)(-[a-z0-9]+)+$'
20*88dffe43SDavid Heidelberg      - const: nvidia,tegra-audio-rt5640
21*88dffe43SDavid Heidelberg
22*88dffe43SDavid Heidelberg  nvidia,audio-routing:
23*88dffe43SDavid Heidelberg    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
24*88dffe43SDavid Heidelberg    description: |
25*88dffe43SDavid Heidelberg      A list of the connections between audio components.
26*88dffe43SDavid Heidelberg      Each entry is a pair of strings, the first being the connection's sink,
27*88dffe43SDavid Heidelberg      the second being the connection's source. Valid names for sources and
28*88dffe43SDavid Heidelberg      sinks are the pins (documented in the binding document),
29*88dffe43SDavid Heidelberg      and the jacks on the board.
30*88dffe43SDavid Heidelberg    minItems: 2
31*88dffe43SDavid Heidelberg    items:
32*88dffe43SDavid Heidelberg      enum:
33*88dffe43SDavid Heidelberg        # Board Connectors
34*88dffe43SDavid Heidelberg        - "Headphones"
35*88dffe43SDavid Heidelberg        - "Speakers"
36*88dffe43SDavid Heidelberg        - "Mic Jack"
37*88dffe43SDavid Heidelberg
38*88dffe43SDavid Heidelberg        # CODEC Pins
39*88dffe43SDavid Heidelberg        - DMIC1
40*88dffe43SDavid Heidelberg        - DMIC2
41*88dffe43SDavid Heidelberg        - MICBIAS1
42*88dffe43SDavid Heidelberg        - IN1P
43*88dffe43SDavid Heidelberg        - IN1R
44*88dffe43SDavid Heidelberg        - IN2P
45*88dffe43SDavid Heidelberg        - IN2R
46*88dffe43SDavid Heidelberg        - HPOL
47*88dffe43SDavid Heidelberg        - HPOR
48*88dffe43SDavid Heidelberg        - LOUTL
49*88dffe43SDavid Heidelberg        - LOUTR
50*88dffe43SDavid Heidelberg        - MONOP
51*88dffe43SDavid Heidelberg        - MONON
52*88dffe43SDavid Heidelberg        - SPOLP
53*88dffe43SDavid Heidelberg        - SPOLN
54*88dffe43SDavid Heidelberg        - SPORP
55*88dffe43SDavid Heidelberg        - SPORN
56*88dffe43SDavid Heidelberg
57*88dffe43SDavid Heidelbergrequired:
58*88dffe43SDavid Heidelberg  - nvidia,i2s-controller
59*88dffe43SDavid Heidelberg
60*88dffe43SDavid HeidelbergunevaluatedProperties: false
61*88dffe43SDavid Heidelberg
62*88dffe43SDavid Heidelbergexamples:
63*88dffe43SDavid Heidelberg  - |
64*88dffe43SDavid Heidelberg    sound {
65*88dffe43SDavid Heidelberg        compatible = "nvidia,tegra-audio-rt5640-dalmore",
66*88dffe43SDavid Heidelberg                     "nvidia,tegra-audio-rt5640";
67*88dffe43SDavid Heidelberg        nvidia,model = "NVIDIA Tegra Dalmore";
68*88dffe43SDavid Heidelberg
69*88dffe43SDavid Heidelberg        nvidia,audio-routing =
70*88dffe43SDavid Heidelberg                "Headphones", "HPOR",
71*88dffe43SDavid Heidelberg                "Headphones", "HPOL",
72*88dffe43SDavid Heidelberg                "Speakers", "SPORP",
73*88dffe43SDavid Heidelberg                "Speakers", "SPORN",
74*88dffe43SDavid Heidelberg                "Speakers", "SPOLP",
75*88dffe43SDavid Heidelberg                "Speakers", "SPOLN";
76*88dffe43SDavid Heidelberg
77*88dffe43SDavid Heidelberg        nvidia,i2s-controller = <&tegra_i2s1>;
78*88dffe43SDavid Heidelberg        nvidia,audio-codec = <&rt5640>;
79*88dffe43SDavid Heidelberg
80*88dffe43SDavid Heidelberg        nvidia,hp-det-gpios = <&gpio 143 0>;
81*88dffe43SDavid Heidelberg
82*88dffe43SDavid Heidelberg        clocks = <&clk 216>, <&clk 217>, <&clk 120>;
83*88dffe43SDavid Heidelberg        clock-names = "pll_a", "pll_a_out0", "mclk";
84*88dffe43SDavid Heidelberg    };
85*88dffe43SDavid Heidelberg
86