Merge branch 'asoc-5.3' into asoc-linus
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / spi / allwinner,sun6i-a31-spi.yaml
1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/spi/allwinner,sun6i-a31-spi.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Allwinner A31 SPI Controller Device Tree Bindings
8
9 allOf:
10   - $ref: "spi-controller.yaml"
11
12 maintainers:
13   - Chen-Yu Tsai <wens@csie.org>
14   - Maxime Ripard <maxime.ripard@bootlin.com>
15
16 properties:
17   "#address-cells": true
18   "#size-cells": true
19
20   compatible:
21     enum:
22       - allwinner,sun6i-a31-spi
23       - allwinner,sun8i-h3-spi
24
25   reg:
26     maxItems: 1
27
28   interrupts:
29     maxItems: 1
30
31   clocks:
32     items:
33       - description: Bus Clock
34       - description: Module Clock
35
36   clock-names:
37     items:
38       - const: ahb
39       - const: mod
40
41   resets:
42     maxItems: 1
43
44   dmas:
45     items:
46       - description: RX DMA Channel
47       - description: TX DMA Channel
48
49   dma-names:
50     items:
51       - const: rx
52       - const: tx
53
54   num-cs: true
55
56 patternProperties:
57   "^.*@[0-9a-f]+":
58     type: object
59     properties:
60       reg:
61         items:
62           minimum: 0
63           maximum: 4
64
65       spi-rx-bus-width:
66         const: 1
67
68       spi-tx-bus-width:
69         const: 1
70
71 required:
72   - compatible
73   - reg
74   - interrupts
75   - clocks
76   - clock-names
77
78 additionalProperties: false
79
80 examples:
81   - |
82     spi1: spi@1c69000 {
83         compatible = "allwinner,sun6i-a31-spi";
84         reg = <0x01c69000 0x1000>;
85         interrupts = <0 66 4>;
86         clocks = <&ahb1_gates 21>, <&spi1_clk>;
87         clock-names = "ahb", "mod";
88         resets = <&ahb1_rst 21>;
89         #address-cells = <1>;
90         #size-cells = <0>;
91     };
92
93   - |
94     spi0: spi@1c68000 {
95         compatible = "allwinner,sun8i-h3-spi";
96         reg = <0x01c68000 0x1000>;
97         interrupts = <0 65 4>;
98         clocks = <&ccu 30>, <&ccu 82>;
99         clock-names = "ahb", "mod";
100         dmas = <&dma 23>, <&dma 23>;
101         dma-names = "rx", "tx";
102         resets = <&ccu 15>;
103         #address-cells = <1>;
104         #size-cells = <0>;
105     };
106
107 ...