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