Commit | Line | Data |
---|---|---|
129a5d48 PC |
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: | |
f516fb70 RH |
19 | - ingenic,jz4740-i2s |
20 | - ingenic,jz4760-i2s | |
21 | - ingenic,jz4770-i2s | |
22 | - ingenic,jz4780-i2s | |
129a5d48 | 23 | - items: |
f516fb70 RH |
24 | - const: ingenic,jz4725b-i2s |
25 | - const: ingenic,jz4740-i2s | |
129a5d48 PC |
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 | }; |