Merge tag 'block-6.13-20242901' of git://git.kernel.dk/linux
[drm/drm-misc.git] / Documentation / devicetree / bindings / sound / cirrus,ep9301-i2s.yaml
blob4693e85aed37fc682f10c33db26cad5f62bd44a1
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/sound/cirrus,ep9301-i2s.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Cirrus EP93xx I2S Controller
9 description: |
10   The I2S controller is used to stream serial audio data between the external
11   I2S CODECs’, ADCs/DACs, and the ARM Core. The controller supports I2S, Left-
12   and Right-Justified DSP formats.
14 maintainers:
15   - Alexander Sverdlin <alexander.sverdlin@gmail.com>
17 allOf:
18   - $ref: dai-common.yaml#
20 properties:
21   compatible:
22     const: cirrus,ep9301-i2s
24   '#sound-dai-cells':
25     const: 0
27   reg:
28     maxItems: 1
30   interrupts:
31     maxItems: 1
33   clocks:
34     minItems: 3
35     maxItems: 3
37   clock-names:
38     items:
39       - const: mclk
40       - const: sclk
41       - const: lrclk
43   dmas:
44     items:
45       - description: out DMA channel
46       - description: in DMA channel
48   dma-names:
49     items:
50       - const: tx
51       - const: rx
53   port:
54     $ref: audio-graph-port.yaml#
55     unevaluatedProperties: false
57 required:
58   - compatible
59   - '#sound-dai-cells'
60   - reg
61   - clocks
62   - clock-names
64 additionalProperties: false
66 examples:
67   - |
68     i2s: i2s@80820000 {
69         compatible = "cirrus,ep9301-i2s";
70         #sound-dai-cells = <0>;
71         reg = <0x80820000 0x100>;
72         interrupt-parent = <&vic1>;
73         interrupts = <28>;
74         clocks = <&syscon 29>,
75                  <&syscon 30>,
76                  <&syscon 31>;
77         clock-names = "mclk", "sclk", "lrclk";
78         dmas = <&dma0 0 1>, <&dma0 0 2>;
79         dma-names = "tx", "rx";
80     };
82 ...