Linux 6.7-rc7
[linux-modified.git] / Documentation / devicetree / bindings / sound / allwinner,sun50i-h6-dmic.yaml
1 # SPDX-License-Identifier: (GPL-2.0+ OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/sound/allwinner,sun50i-h6-dmic.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Allwinner H6 DMIC
8
9 maintainers:
10   - Ban Tao <fengzheng923@gmail.com>
11
12 allOf:
13   - $ref: dai-common.yaml#
14
15 properties:
16   compatible:
17     oneOf:
18       - items:
19           - enum:
20               - allwinner,sun20i-d1-dmic
21           - const: allwinner,sun50i-h6-dmic
22       - const: allwinner,sun50i-h6-dmic
23
24   "#sound-dai-cells":
25     const: 0
26
27   reg:
28     maxItems: 1
29
30   interrupts:
31     maxItems: 1
32
33   clocks:
34     items:
35       - description: Bus Clock
36       - description: Module Clock
37
38   clock-names:
39     items:
40       - const: bus
41       - const: mod
42
43   dmas:
44     items:
45       - description: RX DMA Channel
46
47   dma-names:
48     items:
49       - const: rx
50
51   resets:
52     maxItems: 1
53
54 required:
55   - "#sound-dai-cells"
56   - compatible
57   - reg
58   - interrupts
59   - clocks
60   - clock-names
61   - dmas
62   - dma-names
63   - resets
64
65 unevaluatedProperties: false
66
67 examples:
68   - |
69     #include <dt-bindings/interrupt-controller/arm-gic.h>
70     #include <dt-bindings/interrupt-controller/irq.h>
71
72     #include <dt-bindings/clock/sun50i-h6-ccu.h>
73     #include <dt-bindings/reset/sun50i-h6-ccu.h>
74
75     dmic: dmic@5095000 {
76       #sound-dai-cells = <0>;
77       compatible = "allwinner,sun50i-h6-dmic";
78       reg = <0x05095000 0x400>;
79       interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
80       clocks = <&ccu CLK_BUS_DMIC>, <&ccu CLK_DMIC>;
81       clock-names = "bus", "mod";
82       dmas = <&dma 7>;
83       dma-names = "rx";
84       resets = <&ccu RST_BUS_DMIC>;
85     };
86
87 ...