Re: [PATCH v3 2/2] dt-bindings: spi: ti,davinci-spi: convert to DT schema

From: Rob Herring

Date: Mon Aug 31 2026 - 09:43:14 EST


On Mon, Aug 17, 2026 at 03:25:26AM +0530, Bhargav Joshi wrote:
> Convert the TI DaVinci/Keystone SPI controller binding from text format
> to DT schema.
>
> Changes during the conversion:
> - Create a separate ti,davinci-spi-peripheral-props.yaml schema to
> properly define the ti,spi-wdelay peripheral property.
> - Add missing dmas and dma-names properties.
> - Add constraints to ti,spi-wdelay based on the 6-bit width
> of the SPIFMTn.WDELAY hardware register field.
>
> Signed-off-by: Bhargav Joshi <j.bhargav.u@xxxxxxxxx>
> ---
> .../devicetree/bindings/spi/spi-davinci.txt | 100 -----------------
> .../bindings/spi/spi-peripheral-props.yaml | 1 +
> .../spi/ti,davinci-spi-peripheral-props.yaml | 25 +++++
> .../devicetree/bindings/spi/ti,davinci-spi.yaml | 124 +++++++++++++++++++++
> 4 files changed, 150 insertions(+), 100 deletions(-)


> diff --git a/Documentation/devicetree/bindings/spi/ti,davinci-spi.yaml b/Documentation/devicetree/bindings/spi/ti,davinci-spi.yaml
> new file mode 100644
> index 000000000000..5bf74f3ca588
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/spi/ti,davinci-spi.yaml
> @@ -0,0 +1,124 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/spi/ti,davinci-spi.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: TI DaVinci/Keystone SPI Controller
> +
> +maintainers:
> + - Bartosz Golaszewski <brgl@xxxxxxxxxx>
> +
> +properties:
> + compatible:
> + oneOf:
> + - enum:
> + - ti,da830-spi
> + - ti,keystone-spi
> + - ti,dm6441-spi
> + - items:
> + - const: ti,keystone-spi
> + - const: ti,dm6441-spi
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> +
> + power-domains:
> + maxItems: 1
> + description:
> + Should contain a phandle to a PM domain provider node
> + and an args specifier containing the SPI device id
> + value.
> +
> + num-cs:
> + minimum: 1
> + default: 1
> + description:
> + Number of chip selects supported by the controller. This
> + includes both internal and GPIO chip selects.
> +
> + ti,davinci-spi-intr-line:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum: [0, 1]
> + description:
> + Interrupt line used to connect the SPI IP to the interrupt
> + controller within the SoC. The SPI peripheral can route its
> + interrupt output to one of two lines (INT0 or INT1). Set
> + this based on the SoC-specific wiring to the interrupt
> + controller.
> +
> + dmas:
> + items:
> + - description: RX DMA channel
> + - description: TX DMA channel
> +
> + dma-names:
> + items:
> + - const: rx
> + - const: tx
> +
> + "#address-cells":
> + const: 1
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - clocks
> + - ti,davinci-spi-intr-line
> + - num-cs
> + - "#address-cells"
> + - "#size-cells"
> +
> +allOf:
> + - $ref: spi-controller.yaml#
> + - if:
> + properties:
> + compatible:
> + const: ti,keystone-spi
> + then:
> + required:
> + - power-domains
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + spi@20bf0000 {
> + compatible = "ti,keystone-spi","ti,dm6441-spi";

Missing space between compatible strings. The newish dt-check-style
should catch this.

Reviewed-by: Rob Herring (Arm) <robh@xxxxxxxxxx>