xref: /linux/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml (revision 3fd6c59042dbba50391e30862beac979491145fe)
113b1b952SAlexander Sverdlin# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
213b1b952SAlexander Sverdlin%YAML 1.2
313b1b952SAlexander Sverdlin---
413b1b952SAlexander Sverdlin$id: http://devicetree.org/schemas/sound/cirrus,ep9301-i2s.yaml#
513b1b952SAlexander Sverdlin$schema: http://devicetree.org/meta-schemas/core.yaml#
613b1b952SAlexander Sverdlin
713b1b952SAlexander Sverdlintitle: Cirrus EP93xx I2S Controller
813b1b952SAlexander Sverdlin
913b1b952SAlexander Sverdlindescription: |
1013b1b952SAlexander Sverdlin  The I2S controller is used to stream serial audio data between the external
1113b1b952SAlexander Sverdlin  I2S CODECs’, ADCs/DACs, and the ARM Core. The controller supports I2S, Left-
1213b1b952SAlexander Sverdlin  and Right-Justified DSP formats.
1313b1b952SAlexander Sverdlin
1413b1b952SAlexander Sverdlinmaintainers:
1513b1b952SAlexander Sverdlin  - Alexander Sverdlin <alexander.sverdlin@gmail.com>
1613b1b952SAlexander Sverdlin
1713b1b952SAlexander SverdlinallOf:
1813b1b952SAlexander Sverdlin  - $ref: dai-common.yaml#
1913b1b952SAlexander Sverdlin
2013b1b952SAlexander Sverdlinproperties:
2113b1b952SAlexander Sverdlin  compatible:
2213b1b952SAlexander Sverdlin    const: cirrus,ep9301-i2s
2313b1b952SAlexander Sverdlin
2413b1b952SAlexander Sverdlin  '#sound-dai-cells':
2513b1b952SAlexander Sverdlin    const: 0
2613b1b952SAlexander Sverdlin
2713b1b952SAlexander Sverdlin  reg:
2813b1b952SAlexander Sverdlin    maxItems: 1
2913b1b952SAlexander Sverdlin
3013b1b952SAlexander Sverdlin  interrupts:
3113b1b952SAlexander Sverdlin    maxItems: 1
3213b1b952SAlexander Sverdlin
3313b1b952SAlexander Sverdlin  clocks:
3413b1b952SAlexander Sverdlin    minItems: 3
3513b1b952SAlexander Sverdlin    maxItems: 3
3613b1b952SAlexander Sverdlin
3713b1b952SAlexander Sverdlin  clock-names:
3813b1b952SAlexander Sverdlin    items:
3913b1b952SAlexander Sverdlin      - const: mclk
4013b1b952SAlexander Sverdlin      - const: sclk
4113b1b952SAlexander Sverdlin      - const: lrclk
4213b1b952SAlexander Sverdlin
43bae9f789SNikita Shubin  dmas:
44bae9f789SNikita Shubin    items:
45bae9f789SNikita Shubin      - description: out DMA channel
46bae9f789SNikita Shubin      - description: in DMA channel
47bae9f789SNikita Shubin
48bae9f789SNikita Shubin  dma-names:
49bae9f789SNikita Shubin    items:
50bae9f789SNikita Shubin      - const: tx
51bae9f789SNikita Shubin      - const: rx
52bae9f789SNikita Shubin
53*fb37c3a9SNikita Shubin  port:
54*fb37c3a9SNikita Shubin    $ref: audio-graph-port.yaml#
55*fb37c3a9SNikita Shubin    unevaluatedProperties: false
56*fb37c3a9SNikita Shubin
5713b1b952SAlexander Sverdlinrequired:
5813b1b952SAlexander Sverdlin  - compatible
5913b1b952SAlexander Sverdlin  - '#sound-dai-cells'
6013b1b952SAlexander Sverdlin  - reg
6113b1b952SAlexander Sverdlin  - clocks
6213b1b952SAlexander Sverdlin  - clock-names
6313b1b952SAlexander Sverdlin
6413b1b952SAlexander SverdlinadditionalProperties: false
6513b1b952SAlexander Sverdlin
6613b1b952SAlexander Sverdlinexamples:
6713b1b952SAlexander Sverdlin  - |
6813b1b952SAlexander Sverdlin    i2s: i2s@80820000 {
6913b1b952SAlexander Sverdlin        compatible = "cirrus,ep9301-i2s";
7013b1b952SAlexander Sverdlin        #sound-dai-cells = <0>;
7113b1b952SAlexander Sverdlin        reg = <0x80820000 0x100>;
7213b1b952SAlexander Sverdlin        interrupt-parent = <&vic1>;
7313b1b952SAlexander Sverdlin        interrupts = <28>;
7413b1b952SAlexander Sverdlin        clocks = <&syscon 29>,
7513b1b952SAlexander Sverdlin                 <&syscon 30>,
7613b1b952SAlexander Sverdlin                 <&syscon 31>;
7713b1b952SAlexander Sverdlin        clock-names = "mclk", "sclk", "lrclk";
78bae9f789SNikita Shubin        dmas = <&dma0 0 1>, <&dma0 0 2>;
79bae9f789SNikita Shubin        dma-names = "tx", "rx";
8013b1b952SAlexander Sverdlin    };
8113b1b952SAlexander Sverdlin
8213b1b952SAlexander Sverdlin...
83