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