Merge tag 'integrity-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / sound / ingenic,aic.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/ingenic,aic.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Ingenic SoCs AC97 / I2S Controller (AIC) DT bindings
8
9 maintainers:
10   - Paul Cercueil <paul@crapouillou.net>
11
12 properties:
13   $nodename:
14     pattern: '^audio-controller@'
15
16   compatible:
17     oneOf:
18       - enum:
19           - ingenic,jz4740-i2s
20           - ingenic,jz4760-i2s
21           - ingenic,jz4770-i2s
22           - ingenic,jz4780-i2s
23       - items:
24           - const: ingenic,jz4725b-i2s
25           - const: ingenic,jz4740-i2s
26
27   '#sound-dai-cells':
28     const: 0
29
30   reg:
31     maxItems: 1
32
33   interrupts:
34     maxItems: 1
35
36   clocks:
37     items:
38       - description: AIC clock
39       - description: I2S clock
40       - description: EXT clock
41       - description: PLL/2 clock
42
43   clock-names:
44     items:
45       - const: aic
46       - const: i2s
47       - const: ext
48       - const: pll half
49
50   dmas:
51     items:
52       - description: DMA controller phandle and request line for I2S RX
53       - description: DMA controller phandle and request line for I2S TX
54
55   dma-names:
56     items:
57       - const: rx
58       - const: tx
59
60 additionalProperties: false
61
62 required:
63   - compatible
64   - reg
65   - interrupts
66   - clocks
67   - clock-names
68   - dmas
69   - dma-names
70   - '#sound-dai-cells'
71
72 examples:
73   - |
74     #include <dt-bindings/clock/jz4740-cgu.h>
75     aic: audio-controller@10020000 {
76       compatible = "ingenic,jz4740-i2s";
77       reg = <0x10020000 0x38>;
78
79       #sound-dai-cells = <0>;
80
81       interrupt-parent = <&intc>;
82       interrupts = <18>;
83
84       clocks = <&cgu JZ4740_CLK_AIC>,
85                <&cgu JZ4740_CLK_I2S>,
86                <&cgu JZ4740_CLK_EXT>,
87                <&cgu JZ4740_CLK_PLL_HALF>;
88       clock-names = "aic", "i2s", "ext", "pll half";
89
90       dmas = <&dmac 25 0xffffffff>, <&dmac 24 0xffffffff>;
91       dma-names = "rx", "tx";
92     };