[PATCH v4 1/3] dt-bindings: mfd: atmel,flexcom: Convert to json-schema

Kavyasree.Kotagiri at microchip.com Kavyasree.Kotagiri at microchip.com
Mon Jun 20 04:43:06 PDT 2022


> >> Convert the Atmel flexcom device tree bindings to json schema.
> >>
> >> Signed-off-by: Kavyasree Kotagiri <kavyasree.kotagiri at microchip.com>
> >> ---
> >> v3 -> v4:
> >>  - Corrected format of enum used for compatible string.
> >>
> >> v2 -> v3:
> >>  - used enum for compatible string.
> >>  - changed irq flag to IRQ_TYPE_LEVEL_HIGH in example.
> >>  - fixed dtschema errors.
> >>
> >> v1 -> v2:
> >>  - Fix title.
> >>
> >>  .../bindings/mfd/atmel,flexcom.yaml           | 104 ++++++++++++++++++
> >>  .../devicetree/bindings/mfd/atmel-flexcom.txt |  63 -----------
> >>  2 files changed, 104 insertions(+), 63 deletions(-)
> >>  create mode 100644
> Documentation/devicetree/bindings/mfd/atmel,flexcom.yaml
> >>  delete mode 100644 Documentation/devicetree/bindings/mfd/atmel-
> flexcom.txt
> >>
> >> diff --git a/Documentation/devicetree/bindings/mfd/atmel,flexcom.yaml
> b/Documentation/devicetree/bindings/mfd/atmel,flexcom.yaml
> >> new file mode 100644
> >> index 000000000000..fdb1645d123f
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/mfd/atmel,flexcom.yaml
> >> @@ -0,0 +1,104 @@
> >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> >> +%YAML 1.2
> >> +---
> >> +$id: http://devicetree.org/schemas/mfd/atmel,flexcom.yaml#
> >> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >> +
> >> +title: Atmel Flexcom (Flexible Serial Communication Unit)
> >> +
> >> +maintainers:
> >> +  - Kavyasree Kotagiri <kavyasree.kotagiri at microchip.com>
> >> +
> >> +description:
> >> +  The Atmel Flexcom is just a wrapper which embeds a SPI controller,
> >> +  an I2C controller and an USART. Only one function can be used at a
> >> +  time and is chosen at boot time according to the device tree.
> >> +
> >> +properties:
> >> +  compatible:
> >> +    enum:
> >> +      - atmel,sama5d2-flexcom
> >> +
> >> +  reg:
> >> +    maxItems: 1
> >> +
> >> +  clocks:
> >> +    maxItems: 1
> >> +
> >> +  "#address-cells":
> >> +    const: 1
> >> +
> >> +  "#size-cells":
> >> +    const: 1
> >> +
> >> +  ranges:
> >> +    description:
> >> +      One range for the full I/O register region. (including USART,
> >> +      TWI and SPI registers).
> >> +    items:
> >> +      maxItems: 3
> >> +
> >> +  atmel,flexcom-mode:
> >> +    description: |
> >> +      Specifies the flexcom mode as follows:
> >> +      1: USART
> >> +      2: SPI
> >> +      3: I2C.
> >> +    $ref: /schemas/types.yaml#/definitions/uint32
> >> +    enum: [1, 2, 3]
> >> +
> >> +patternProperties:
> >> +  "^serial@[0-9a-f]+$":
> >> +    description: See atmel-usart.txt for details of USART bindings.
> >> +    type: object
> >> +
> >> +  "^spi@[0-9a-f]+$":
> >> +    description: See ../spi/spi_atmel.txt for details of SPI bindings.
> >> +    type: object
> >> +
> >> +    properties:
> >> +      compatible:
> >> +        const: atmel,at91rm9200-spi
> >> +
> >> +  "^i2c@[0-9a-f]+$":
> >> +    description: See ../i2c/i2c-at91.txt for details of I2C bindings.
> >> +    type: object
> >> +
> >> +required:
> >> +  - compatible
> >> +  - reg
> >> +  - clocks
> >> +  - "#address-cells"
> >> +  - "#size-cells"
> >> +  - ranges
> >> +  - atmel,flexcom-mode
> >> +
> >> +additionalProperties: false
> >> +
> >> +examples:
> >> +  - |
> >> +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> >> +
> >> +    flx0: flexcom at f8034000 {
> >> +          compatible = "atmel,sama5d2-flexcom";
> >
> > The bindings look good, but you have here weird indentation. I don't
> > remember if I pointed out this already, so in any case sorry for
> > bringing it up so late. The indentation should be four spaces which
> > nicely aligns with " - |".
> >
> >
> >
> >> +          reg = <0xf8034000 0x200>;
> >> +          clocks = <&flx0_clk>;
> >> +          #address-cells = <1>;
> >> +          #size-cells = <1>;
> >> +          ranges = <0x0 0xf8034000 0x800>;
> >> +          atmel,flexcom-mode = <2>;
> >> +
> >> +          spi0: spi at 400 {
> >> +                compatible = "atmel,at91rm9200-spi";
> >
> > 4 spaces
> >
> > Rob's bot also complained about compatible. Are you sure you use here
> > correct compatible?
> 
> It's in Documentation/devicetree/bindings/spi/spi_atmel.txt
> So that'll explain the error..
> 
> Thanks,
> Conor.
> 
Yes, you are right.
It is because of the spi dt-bindings are still in txt format.

> Conor


More information about the linux-arm-kernel mailing list