Merge tag 'arm-defconfig-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / sound / google,sc7180-trogdor.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/google,sc7180-trogdor.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Google SC7180-Trogdor ASoC sound card driver
8
9 maintainers:
10   - Rohit kumar <rohitkr@codeaurora.org>
11   - Cheng-Yi Chiang <cychiang@chromium.org>
12
13 description:
14   This binding describes the SC7180 sound card which uses LPASS for audio.
15
16 properties:
17   compatible:
18     enum:
19       - google,sc7180-trogdor
20       - google,sc7180-coachz
21
22   audio-routing:
23     $ref: /schemas/types.yaml#/definitions/non-unique-string-array
24     description:
25       A list of the connections between audio components. Each entry is a
26       pair of strings, the first being the connection's sink, the second
27       being the connection's source.
28
29   model:
30     $ref: /schemas/types.yaml#/definitions/string
31     description: User specified audio sound card name
32
33   "#address-cells":
34     const: 1
35
36   "#size-cells":
37     const: 0
38
39   dmic-gpios:
40     maxItems: 1
41     description: GPIO for switching between DMICs
42
43 patternProperties:
44   "^dai-link(@[0-9])?$":
45     description:
46       Each subnode represents a dai link. Subnodes of each dai links would be
47       cpu/codec dais.
48
49     type: object
50
51     properties:
52       link-name:
53         description: Indicates dai-link name and PCM stream name.
54         $ref: /schemas/types.yaml#/definitions/string
55         maxItems: 1
56
57       reg:
58         maxItems: 1
59         description: dai link address.
60
61       cpu:
62         description: Holds subnode which indicates cpu dai.
63         type: object
64         properties:
65           sound-dai: true
66
67       codec:
68         description: Holds subnode which indicates codec dai.
69         type: object
70         properties:
71           sound-dai: true
72
73     required:
74       - link-name
75       - cpu
76       - codec
77
78     additionalProperties: false
79
80 required:
81   - compatible
82   - model
83   - "#address-cells"
84   - "#size-cells"
85
86 additionalProperties: false
87
88 examples:
89
90   - |
91     sound {
92         compatible = "google,sc7180-trogdor";
93         model = "sc7180-rt5682-max98357a-2mic";
94
95         audio-routing =
96                     "Headphone Jack", "HPOL",
97                     "Headphone Jack", "HPOR";
98
99         #address-cells = <1>;
100         #size-cells = <0>;
101
102         dmic-gpios = <&tlmm 86 0>;
103
104         dai-link@0 {
105             link-name = "MultiMedia0";
106             reg = <0>;
107             cpu {
108                 sound-dai = <&lpass_cpu 0>;
109             };
110
111             codec {
112                 sound-dai = <&alc5682 0>;
113             };
114         };
115
116         dai-link@1 {
117             link-name = "MultiMedia1";
118             reg = <1>;
119             cpu {
120                 sound-dai = <&lpass_cpu 1>;
121             };
122
123             codec {
124                 sound-dai = <&max98357a>;
125             };
126         };
127
128         dai-link@2 {
129             link-name = "MultiMedia2";
130             reg = <2>;
131             cpu {
132                 sound-dai = <&lpass_hdmi 0>;
133             };
134
135             codec {
136                 sound-dai = <&msm_dp>;
137             };
138         };
139     };