xref: /linux/Documentation/devicetree/bindings/spi/allwinner,sun6i-a31-spi.yaml (revision e2c9e67e44fedcf37b383d3cacc525674bed457f)
1101e6fceSMaxime Ripard# SPDX-License-Identifier: GPL-2.0
2101e6fceSMaxime Ripard%YAML 1.2
3101e6fceSMaxime Ripard---
4101e6fceSMaxime Ripard$id: http://devicetree.org/schemas/spi/allwinner,sun6i-a31-spi.yaml#
5101e6fceSMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml#
6101e6fceSMaxime Ripard
7101e6fceSMaxime Ripardtitle: Allwinner A31 SPI Controller Device Tree Bindings
8101e6fceSMaxime Ripard
9101e6fceSMaxime RipardallOf:
10101e6fceSMaxime Ripard  - $ref: "spi-controller.yaml"
11101e6fceSMaxime Ripard
12101e6fceSMaxime Ripardmaintainers:
13101e6fceSMaxime Ripard  - Chen-Yu Tsai <wens@csie.org>
145c7404bbSMaxime Ripard  - Maxime Ripard <mripard@kernel.org>
15101e6fceSMaxime Ripard
16101e6fceSMaxime Ripardproperties:
17101e6fceSMaxime Ripard  "#address-cells": true
18101e6fceSMaxime Ripard  "#size-cells": true
19101e6fceSMaxime Ripard
20101e6fceSMaxime Ripard  compatible:
21*e2c9e67eSAndre Przywara    oneOf:
22*e2c9e67eSAndre Przywara      - const: allwinner,sun6i-a31-spi
23*e2c9e67eSAndre Przywara      - const: allwinner,sun8i-h3-spi
24*e2c9e67eSAndre Przywara      - items:
25*e2c9e67eSAndre Przywara        - enum:
26*e2c9e67eSAndre Przywara          - allwinner,sun8i-r40-spi
27*e2c9e67eSAndre Przywara          - allwinner,sun50i-h6-spi
28*e2c9e67eSAndre Przywara        - const: allwinner,sun8i-h3-spi
29101e6fceSMaxime Ripard
30101e6fceSMaxime Ripard  reg:
31101e6fceSMaxime Ripard    maxItems: 1
32101e6fceSMaxime Ripard
33101e6fceSMaxime Ripard  interrupts:
34101e6fceSMaxime Ripard    maxItems: 1
35101e6fceSMaxime Ripard
36101e6fceSMaxime Ripard  clocks:
37101e6fceSMaxime Ripard    items:
38101e6fceSMaxime Ripard      - description: Bus Clock
39101e6fceSMaxime Ripard      - description: Module Clock
40101e6fceSMaxime Ripard
41101e6fceSMaxime Ripard  clock-names:
42101e6fceSMaxime Ripard    items:
43101e6fceSMaxime Ripard      - const: ahb
44101e6fceSMaxime Ripard      - const: mod
45101e6fceSMaxime Ripard
46101e6fceSMaxime Ripard  resets:
47101e6fceSMaxime Ripard    maxItems: 1
48101e6fceSMaxime Ripard
49101e6fceSMaxime Ripard  dmas:
50101e6fceSMaxime Ripard    items:
51101e6fceSMaxime Ripard      - description: RX DMA Channel
52101e6fceSMaxime Ripard      - description: TX DMA Channel
53101e6fceSMaxime Ripard
54101e6fceSMaxime Ripard  dma-names:
55101e6fceSMaxime Ripard    items:
56101e6fceSMaxime Ripard      - const: rx
57101e6fceSMaxime Ripard      - const: tx
58101e6fceSMaxime Ripard
59101e6fceSMaxime Ripard  num-cs: true
60101e6fceSMaxime Ripard
61101e6fceSMaxime RipardpatternProperties:
62101e6fceSMaxime Ripard  "^.*@[0-9a-f]+":
6315ffef1aSRob Herring    type: object
64101e6fceSMaxime Ripard    properties:
65101e6fceSMaxime Ripard      reg:
66101e6fceSMaxime Ripard        items:
67101e6fceSMaxime Ripard          minimum: 0
68101e6fceSMaxime Ripard          maximum: 4
69101e6fceSMaxime Ripard
70101e6fceSMaxime Ripard      spi-rx-bus-width:
71101e6fceSMaxime Ripard        const: 1
72101e6fceSMaxime Ripard
73101e6fceSMaxime Ripard      spi-tx-bus-width:
74101e6fceSMaxime Ripard        const: 1
75101e6fceSMaxime Ripard
76101e6fceSMaxime Ripardrequired:
77101e6fceSMaxime Ripard  - compatible
78101e6fceSMaxime Ripard  - reg
79101e6fceSMaxime Ripard  - interrupts
80101e6fceSMaxime Ripard  - clocks
81101e6fceSMaxime Ripard  - clock-names
82101e6fceSMaxime Ripard
83101e6fceSMaxime RipardadditionalProperties: false
84101e6fceSMaxime Ripard
85101e6fceSMaxime Ripardexamples:
86101e6fceSMaxime Ripard  - |
87101e6fceSMaxime Ripard    spi1: spi@1c69000 {
88101e6fceSMaxime Ripard        compatible = "allwinner,sun6i-a31-spi";
89101e6fceSMaxime Ripard        reg = <0x01c69000 0x1000>;
90101e6fceSMaxime Ripard        interrupts = <0 66 4>;
91101e6fceSMaxime Ripard        clocks = <&ahb1_gates 21>, <&spi1_clk>;
92101e6fceSMaxime Ripard        clock-names = "ahb", "mod";
93101e6fceSMaxime Ripard        resets = <&ahb1_rst 21>;
94101e6fceSMaxime Ripard        #address-cells = <1>;
95101e6fceSMaxime Ripard        #size-cells = <0>;
96101e6fceSMaxime Ripard    };
97101e6fceSMaxime Ripard
98101e6fceSMaxime Ripard  - |
99101e6fceSMaxime Ripard    spi0: spi@1c68000 {
100101e6fceSMaxime Ripard        compatible = "allwinner,sun8i-h3-spi";
101101e6fceSMaxime Ripard        reg = <0x01c68000 0x1000>;
102101e6fceSMaxime Ripard        interrupts = <0 65 4>;
103101e6fceSMaxime Ripard        clocks = <&ccu 30>, <&ccu 82>;
104101e6fceSMaxime Ripard        clock-names = "ahb", "mod";
105101e6fceSMaxime Ripard        dmas = <&dma 23>, <&dma 23>;
106101e6fceSMaxime Ripard        dma-names = "rx", "tx";
107101e6fceSMaxime Ripard        resets = <&ccu 15>;
108101e6fceSMaxime Ripard        #address-cells = <1>;
109101e6fceSMaxime Ripard        #size-cells = <0>;
110101e6fceSMaxime Ripard    };
111101e6fceSMaxime Ripard
112101e6fceSMaxime Ripard...
113