1 # SPDX-License-Identifier: GPL-2.0
4 $id: http://devicetree.org/schemas/spi/spi-pl022.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: ARM PL022 SPI controller
10 - Linus Walleij <linus.walleij@linaro.org>
13 - $ref: "spi-controller.yaml#"
15 # We need a select here so we don't match all nodes with 'arm,primecell'
28 - const: arm,primecell
44 pl022,autosuspend-delay:
45 description: delay in ms following transfer completion before the
46 runtime power management system suspends the device. A setting of 0
47 indicates no delay and the device will be suspended immediately.
48 $ref: "/schemas/types.yaml#/definitions/uint32"
51 description: indicates the controller should run the message pump with realtime
52 priority to minimise the transfer latency on the bus (boolean)
57 Two or more DMA channel specifiers following the convention outlined
58 in bindings/dma/dma.txt
64 There must be at least one channel named "tx" for transmit and named "rx"
77 "^[a-zA-Z][a-zA-Z0-9,+\\-._]{0,63}@[0-9a-f]+$":
79 # SPI slave nodes must be children of the SPI master node and can
80 # contain the following properties.
83 description: SPI interface type
84 $ref: "/schemas/types.yaml#/definitions/uint32"
87 - 1 # Texas Instruments Synchronous Serial Frame Format
88 - 2 # Microwire (Half Duplex)
91 description: Specifies the transfer mode
92 $ref: "/schemas/types.yaml#/definitions/uint32"
100 description: Rx FIFO watermark level
101 $ref: "/schemas/types.yaml#/definitions/uint32"
106 description: Tx FIFO watermark level
107 $ref: "/schemas/types.yaml#/definitions/uint32"
112 description: Microwire interface - Control length
113 $ref: "/schemas/types.yaml#/definitions/uint32"
118 description: Microwire interface - Wait state
119 $ref: "/schemas/types.yaml#/definitions/uint32"
123 description: Microwire interface - Full/Half duplex
124 $ref: "/schemas/types.yaml#/definitions/uint32"
132 unevaluatedProperties: false
137 compatible = "arm,pl022", "arm,primecell";
138 reg = <0xe0100000 0x1000>;
139 #address-cells = <1>;
141 interrupts = <0 31 0x4>;
142 dmas = <&dma_controller 23 1>,
143 <&dma_controller 24 0>;
144 dma-names = "rx", "tx";
147 compatible = "st,m25p80";
149 spi-max-frequency = <12000000>;
152 pl022,interface = <0>;
153 pl022,com-mode = <0x2>;
154 pl022,rx-level-trig = <0>;
155 pl022,tx-level-trig = <0>;
156 pl022,ctrl-len = <0x11>;
157 pl022,wait-state = <0>;