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

Rob Herring robh at kernel.org
Mon Aug 31 06:33:28 PDT 2026


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 at gmail.com>
> ---
>  .../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 at kernel.org>
> +
> +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 at 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 at kernel.org>



More information about the linux-arm-kernel mailing list