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