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