xref: /linux/Documentation/devicetree/bindings/spi/spi-cadence.yaml (revision 09b1704f5b02c18dd02b21343530463fcfc92c54)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/spi/spi-cadence.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Cadence SPI controller
8
9maintainers:
10  - Michal Simek <michal.simek@amd.com>
11
12allOf:
13  - $ref: spi-controller.yaml#
14
15properties:
16  compatible:
17    oneOf:
18      - enum:
19          - xlnx,zynq-spi-r1p6
20      - items:
21          - enum:
22              - xlnx,zynqmp-spi-r1p6
23              - xlnx,versal-net-spi-r1p6
24          - const: cdns,spi-r1p6
25
26  reg:
27    maxItems: 1
28
29  interrupts:
30    maxItems: 1
31
32  clock-names:
33    items:
34      - const: ref_clk
35      - const: pclk
36
37  clocks:
38    maxItems: 2
39
40  num-cs:
41    description: |
42      Number of chip selects used. If a decoder is used,
43      this will be the number of chip selects after the
44      decoder.
45    $ref: /schemas/types.yaml#/definitions/uint32
46    minimum: 1
47    maximum: 4
48    default: 4
49
50  is-decoded-cs:
51    description: |
52      Flag to indicate whether decoder is used or not.
53    $ref: /schemas/types.yaml#/definitions/uint32
54    enum: [ 0, 1 ]
55    default: 0
56
57  power-domains:
58    maxItems: 1
59
60  label:
61    description: Descriptive name of the SPI controller.
62
63  resets:
64    maxItems: 1
65
66  reset-names:
67    items:
68      - const: spi
69
70required:
71  - compatible
72  - reg
73  - interrupts
74  - clock-names
75  - clocks
76
77unevaluatedProperties: false
78
79examples:
80  - |
81    spi@e0007000 {
82      compatible = "xlnx,zynq-spi-r1p6";
83      clock-names = "ref_clk", "pclk";
84      clocks = <&clkc 26>, <&clkc 35>;
85      interrupt-parent = <&intc>;
86      interrupts = <0 49 4>;
87      num-cs = <4>;
88      is-decoded-cs = <0>;
89      reg = <0xe0007000 0x1000>;
90    };
91...
92