Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / sound / imx-audio-card.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/imx-audio-card.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: NXP i.MX audio sound card.
8
9 maintainers:
10   - Shengjiu Wang <shengjiu.wang@nxp.com>
11
12 properties:
13   compatible:
14     enum:
15       - fsl,imx-audio-card
16
17   model:
18     $ref: /schemas/types.yaml#/definitions/string
19     description: User specified audio sound card name
20
21   audio-routing:
22     $ref: /schemas/types.yaml#/definitions/non-unique-string-array
23     description:
24       A list of the connections between audio components. Each entry is a
25       pair of strings, the first being the connection's sink, the second
26       being the connection's source. Valid names could be power supplies,
27       MicBias of codec and the jacks on the board.
28
29 patternProperties:
30   ".*-dai-link$":
31     description:
32       Each subnode represents a dai link. Subnodes of each dai links would be
33       cpu/codec dais.
34
35     type: object
36
37     properties:
38       link-name:
39         description: Indicates dai-link name and PCM stream name.
40         $ref: /schemas/types.yaml#/definitions/string
41         maxItems: 1
42
43       format:
44         description: audio format.
45         items:
46           enum:
47             - i2s
48             - dsp_b
49
50       dai-tdm-slot-num:
51         description: see tdm-slot.txt.
52         $ref: /schemas/types.yaml#/definitions/uint32
53
54       dai-tdm-slot-width:
55         description: see tdm-slot.txt.
56         $ref: /schemas/types.yaml#/definitions/uint32
57
58       cpu:
59         description: Holds subnode which indicates cpu dai.
60         type: object
61         properties:
62           sound-dai: true
63
64       codec:
65         description: Holds subnode which indicates codec dai.
66         type: object
67         properties:
68           sound-dai: true
69
70       fsl,mclk-equal-bclk:
71         description: Indicates mclk can be equal to bclk, especially for sai interface
72         $ref: /schemas/types.yaml#/definitions/flag
73
74     required:
75       - link-name
76       - cpu
77
78     additionalProperties: false
79
80 required:
81   - compatible
82   - model
83
84 additionalProperties: false
85
86 examples:
87   - |
88     sound-ak4458 {
89         compatible = "fsl,imx-audio-card";
90         model = "ak4458-audio";
91         pri-dai-link {
92             link-name = "akcodec";
93             format = "i2s";
94             fsl,mclk-equal-bclk;
95             cpu {
96                  sound-dai = <&sai1>;
97             };
98             codec {
99                  sound-dai = <&ak4458_1>, <&ak4458_2>;
100             };
101         };
102         fe-dai-link {
103             link-name = "HiFi-ASRC-FE";
104             format = "i2s";
105             cpu {
106                 sound-dai = <&easrc>;
107             };
108         };
109         be-dai-link {
110             link-name = "HiFi-ASRC-BE";
111             format = "dsp_b";
112             dai-tdm-slot-num = <8>;
113             dai-tdm-slot-width = <32>;
114             fsl,mclk-equal-bclk;
115             cpu {
116                 sound-dai = <&sai1>;
117             };
118             codec {
119                 sound-dai = <&ak4458_1>, <&ak4458_2>;
120             };
121         };
122     };