1*a708078eSLi-hao Kuo# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*a708078eSLi-hao Kuo# Copyright (C) Sunplus Co., Ltd. 2021
3*a708078eSLi-hao Kuo%YAML 1.2
4*a708078eSLi-hao Kuo---
5*a708078eSLi-hao Kuo$id: http://devicetree.org/schemas/spi/spi-sunplus-sp7021.yaml#
6*a708078eSLi-hao Kuo$schema: http://devicetree.org/meta-schemas/core.yaml#
7*a708078eSLi-hao Kuo
8*a708078eSLi-hao Kuotitle: Sunplus sp7021 SPI controller
9*a708078eSLi-hao Kuo
10*a708078eSLi-hao KuoallOf:
11*a708078eSLi-hao Kuo  - $ref: "spi-controller.yaml"
12*a708078eSLi-hao Kuo
13*a708078eSLi-hao Kuomaintainers:
14*a708078eSLi-hao Kuo  - Li-hao Kuo <lhjeff911@gmail.com>
15*a708078eSLi-hao Kuo
16*a708078eSLi-hao Kuoproperties:
17*a708078eSLi-hao Kuo  compatible:
18*a708078eSLi-hao Kuo    enum:
19*a708078eSLi-hao Kuo      - sunplus,sp7021-spi
20*a708078eSLi-hao Kuo
21*a708078eSLi-hao Kuo  reg:
22*a708078eSLi-hao Kuo    items:
23*a708078eSLi-hao Kuo      - the SPI master registers
24*a708078eSLi-hao Kuo      - the SPI slave registers
25*a708078eSLi-hao Kuo
26*a708078eSLi-hao Kuo  reg-names:
27*a708078eSLi-hao Kuo    items:
28*a708078eSLi-hao Kuo      - const: master
29*a708078eSLi-hao Kuo      - const: slave
30*a708078eSLi-hao Kuo
31*a708078eSLi-hao Kuo  interrupt-names:
32*a708078eSLi-hao Kuo    items:
33*a708078eSLi-hao Kuo      - const: dma_w
34*a708078eSLi-hao Kuo      - const: master_risc
35*a708078eSLi-hao Kuo      - const: slave_risc
36*a708078eSLi-hao Kuo
37*a708078eSLi-hao Kuo  interrupts:
38*a708078eSLi-hao Kuo    minItems: 3
39*a708078eSLi-hao Kuo
40*a708078eSLi-hao Kuo  clocks:
41*a708078eSLi-hao Kuo    maxItems: 1
42*a708078eSLi-hao Kuo
43*a708078eSLi-hao Kuo  resets:
44*a708078eSLi-hao Kuo    maxItems: 1
45*a708078eSLi-hao Kuo
46*a708078eSLi-hao Kuorequired:
47*a708078eSLi-hao Kuo  - compatible
48*a708078eSLi-hao Kuo  - reg
49*a708078eSLi-hao Kuo  - reg-names
50*a708078eSLi-hao Kuo  - interrupts
51*a708078eSLi-hao Kuo  - interrupt-names
52*a708078eSLi-hao Kuo  - clocks
53*a708078eSLi-hao Kuo  - clocks-names
54*a708078eSLi-hao Kuo  - resets
55*a708078eSLi-hao Kuo  - pinctrl-names
56*a708078eSLi-hao Kuo  - pinctrl-0
57*a708078eSLi-hao Kuo
58*a708078eSLi-hao KuounevaluatedProperties: false
59*a708078eSLi-hao Kuo
60*a708078eSLi-hao Kuoexamples:
61*a708078eSLi-hao Kuo  - |
62*a708078eSLi-hao Kuo    #include <dt-bindings/clock/sp-sp7021.h>
63*a708078eSLi-hao Kuo    #include <dt-bindings/reset/sp-sp7021.h>
64*a708078eSLi-hao Kuo    #include <dt-bindings/interrupt-controller/irq.h>
65*a708078eSLi-hao Kuo    spi@9C002D80 {
66*a708078eSLi-hao Kuo        compatible = "sunplus,sp7021-spi";
67*a708078eSLi-hao Kuo        reg = <0x9C002D80 0x80>, <0x9C002E00 0x80>;
68*a708078eSLi-hao Kuo        reg-names = "master", "slave";
69*a708078eSLi-hao Kuo        interrupt-parent = <&intc>;
70*a708078eSLi-hao Kuo        interrupt-names = "dma_w",
71*a708078eSLi-hao Kuo                          "master_risc",
72*a708078eSLi-hao Kuo                          "slave_risc";
73*a708078eSLi-hao Kuo        interrupts = <144 IRQ_TYPE_LEVEL_HIGH>,
74*a708078eSLi-hao Kuo                     <146 IRQ_TYPE_LEVEL_HIGH>,
75*a708078eSLi-hao Kuo                     <145 IRQ_TYPE_LEVEL_HIGH>;
76*a708078eSLi-hao Kuo        clocks = <&clkc SPI_COMBO_0>;
77*a708078eSLi-hao Kuo        resets = <&rstc RST_SPI_COMBO_0>;
78*a708078eSLi-hao Kuo        pinctrl-names = "default";
79*a708078eSLi-hao Kuo        pinctrl-0 = <&pins_spi0>;
80*a708078eSLi-hao Kuo    };
81*a708078eSLi-hao Kuo...
82