blob: 3ec2d7b83775a9c1be30e9629e7bb4933acfd2cf [file] [log] [blame]
Pratyush Yadav8762b072021-11-09 23:49:09 +05301# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/spi/spi-peripheral-props.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Peripheral-specific properties for a SPI bus.
8
9description:
10 Many SPI controllers need to add properties to peripheral devices. They could
11 be common properties like spi-max-frequency, spi-cpha, etc. or they could be
12 controller specific like delay in clock or data lines, etc. These properties
13 need to be defined in the peripheral node because they are per-peripheral and
14 there can be multiple peripherals attached to a controller. All those
15 properties are listed here. The controller specific properties should go in
16 their own separate schema that should be referenced from here.
17
18maintainers:
19 - Pratyush Yadav <p.yadav@ti.com>
20
21properties:
22 reg:
23 minItems: 1
24 maxItems: 256
25 items:
Rob Herring60b1e972022-01-26 17:13:26 -060026 items:
27 - minimum: 0
28 maximum: 256
Pratyush Yadav8762b072021-11-09 23:49:09 +053029 description:
30 Chip select used by the device.
31
32 spi-3wire:
33 $ref: /schemas/types.yaml#/definitions/flag
34 description:
35 The device requires 3-wire mode.
36
37 spi-cpha:
38 $ref: /schemas/types.yaml#/definitions/flag
39 description:
40 The device requires shifted clock phase (CPHA) mode.
41
42 spi-cpol:
43 $ref: /schemas/types.yaml#/definitions/flag
44 description:
45 The device requires inverse clock polarity (CPOL) mode.
46
47 spi-cs-high:
48 $ref: /schemas/types.yaml#/definitions/flag
49 description:
50 The device requires the chip select active high.
51
52 spi-lsb-first:
53 $ref: /schemas/types.yaml#/definitions/flag
54 description:
55 The device requires the LSB first mode.
56
57 spi-max-frequency:
58 $ref: /schemas/types.yaml#/definitions/uint32
59 description:
60 Maximum SPI clocking speed of the device in Hz.
61
62 spi-rx-bus-width:
63 description:
64 Bus width to the SPI bus used for read transfers.
65 If 0 is provided, then no RX will be possible on this device.
66 $ref: /schemas/types.yaml#/definitions/uint32
67 enum: [0, 1, 2, 4, 8]
68 default: 1
69
70 spi-rx-delay-us:
71 description:
72 Delay, in microseconds, after a read transfer.
73
74 spi-tx-bus-width:
75 description:
76 Bus width to the SPI bus used for write transfers.
77 If 0 is provided, then no TX will be possible on this device.
78 $ref: /schemas/types.yaml#/definitions/uint32
79 enum: [0, 1, 2, 4, 8]
80 default: 1
81
82 spi-tx-delay-us:
83 description:
84 Delay, in microseconds, after a write transfer.
85
86# The controller specific properties go here.
Pratyush Yadavb6bdc6e2021-11-09 23:49:10 +053087allOf:
88 - $ref: cdns,qspi-nor-peripheral-props.yaml#
Pratyush Yadav8762b072021-11-09 23:49:09 +053089
90additionalProperties: true