xref: /linux/Documentation/devicetree/bindings/sound/amlogic,aiu.yaml (revision 06b72824386795bf6f0a6ac0f0cfef6b7f0165c1)
1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/sound/amlogic,aiu.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Amlogic AIU audio output controller
8
9maintainers:
10  - Jerome Brunet <jbrunet@baylibre.com>
11
12properties:
13  $nodename:
14    pattern: "^audio-controller@.*"
15
16  "#sound-dai-cells":
17    const: 2
18
19  compatible:
20    items:
21      - enum:
22        - amlogic,aiu-gxbb
23        - amlogic,aiu-gxl
24      - const:
25          amlogic,aiu
26
27  clocks:
28    items:
29      - description: AIU peripheral clock
30      - description: I2S peripheral clock
31      - description: I2S output clock
32      - description: I2S master clock
33      - description: I2S mixer clock
34      - description: SPDIF peripheral clock
35      - description: SPDIF output clock
36      - description: SPDIF master clock
37      - description: SPDIF master clock multiplexer
38
39  clock-names:
40    items:
41      - const: pclk
42      - const: i2s_pclk
43      - const: i2s_aoclk
44      - const: i2s_mclk
45      - const: i2s_mixer
46      - const: spdif_pclk
47      - const: spdif_aoclk
48      - const: spdif_mclk
49      - const: spdif_mclk_sel
50
51  interrupts:
52    items:
53      - description: I2S interrupt line
54      - description: SPDIF interrupt line
55
56  interrupt-names:
57    items:
58      - const: i2s
59      - const: spdif
60
61  reg:
62    maxItems: 1
63
64  resets:
65    maxItems: 1
66
67required:
68  - "#sound-dai-cells"
69  - compatible
70  - clocks
71  - clock-names
72  - interrupts
73  - interrupt-names
74  - reg
75  - resets
76
77examples:
78  - |
79    #include <dt-bindings/clock/gxbb-clkc.h>
80    #include <dt-bindings/interrupt-controller/irq.h>
81    #include <dt-bindings/interrupt-controller/arm-gic.h>
82    #include <dt-bindings/reset/amlogic,meson-gxbb-reset.h>
83
84    aiu: audio-controller@5400 {
85        compatible = "amlogic,aiu-gxl", "amlogic,aiu";
86        #sound-dai-cells = <2>;
87        reg = <0x0 0x5400 0x0 0x2ac>;
88        interrupts = <GIC_SPI 48 IRQ_TYPE_EDGE_RISING>,
89                     <GIC_SPI 50 IRQ_TYPE_EDGE_RISING>;
90        interrupt-names = "i2s", "spdif";
91        clocks = <&clkc CLKID_AIU_GLUE>,
92                 <&clkc CLKID_I2S_OUT>,
93                 <&clkc CLKID_AOCLK_GATE>,
94                 <&clkc CLKID_CTS_AMCLK>,
95                 <&clkc CLKID_MIXER_IFACE>,
96                 <&clkc CLKID_IEC958>,
97                 <&clkc CLKID_IEC958_GATE>,
98                 <&clkc CLKID_CTS_MCLK_I958>,
99                 <&clkc CLKID_CTS_I958>;
100        clock-names = "pclk",
101                      "i2s_pclk",
102                      "i2s_aoclk",
103                      "i2s_mclk",
104                      "i2s_mixer",
105                      "spdif_pclk",
106                      "spdif_aoclk",
107                      "spdif_mclk",
108                      "spdif_mclk_sel";
109        resets = <&reset RESET_AIU>;
110    };
111
112