[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0871f3af-cb37-e490-f0b3-88703652b089@linaro.org>
Date: Fri, 19 Aug 2022 15:06:22 +0300
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: Sergiu.Moga@...rochip.com, lee@...nel.org, robh+dt@...nel.org,
krzysztof.kozlowski+dt@...aro.org, Nicolas.Ferre@...rochip.com,
alexandre.belloni@...tlin.com, Claudiu.Beznea@...rochip.com,
radu_nicolae.pirea@....ro, richard.genoud@...il.com,
mturquette@...libre.com, sboyd@...nel.org,
gregkh@...uxfoundation.org, jirislaby@...nel.org,
admin@...iphile.com, Kavyasree.Kotagiri@...rochip.com
Cc: devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org, linux-spi@...r.kernel.org,
linux-clk@...r.kernel.org, linux-serial@...r.kernel.org
Subject: Re: [PATCH 2/5] dt-bindings: mfd: atmel,at91-usart: convert to
json-schema
On 19/08/2022 12:25, Sergiu.Moga@...rochip.com wrote:
> On 18.08.2022 11:38, Krzysztof Kozlowski wrote:
>> On 17/08/2022 10:55, Sergiu Moga wrote:
>>> Convert at91 USART DT Binding for Atmel/Microchip SoCs to
>>> json-schema format.
>>>
>>> Signed-off-by: Sergiu Moga <sergiu.moga@...rochip.com>
>>> ---
>>> .../bindings/mfd/atmel,at91-usart.yaml | 190 ++++++++++++++++++
>>> .../devicetree/bindings/mfd/atmel-usart.txt | 98 ---------
>>> 2 files changed, 190 insertions(+), 98 deletions(-)
>>> create mode 100644 Documentation/devicetree/bindings/mfd/atmel,at91-usart.yaml
>>> delete mode 100644 Documentation/devicetree/bindings/mfd/atmel-usart.txt
>>>
>>> diff --git a/Documentation/devicetree/bindings/mfd/atmel,at91-usart.yaml b/Documentation/devicetree/bindings/mfd/atmel,at91-usart.yaml
>>> new file mode 100644
>>> index 000000000000..cf15d73fa1e8
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/mfd/atmel,at91-usart.yaml
>>> @@ -0,0 +1,190 @@
>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>> +# Copyright (C) 2022 Microchip Technology, Inc. and its subsidiaries
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/mfd/atmel,at91-usart.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: Atmel Universal Synchronous Asynchronous Receiver/Transmitter (USART)
>>> +
>>> +maintainers:
>>> + - Richard Genoud <richard.genoud@...il.com>
>>> +
>>> +properties:
>>> + compatible:
>>> + oneOf:
>> This looks quite different than bindings and you commit msg is saying it
>> is only a conversion. Mention any changes against original bindings.
>>
>>> + - const: atmel,at91rm9200-usart
>>> + - const: atmel,at91sam9260-usart
>>> + - const: microchip,sam9x60-usart
>> That's an enum
>>
>>> + - items:
>>> + - const: atmel,at91rm9200-dbgu
>>> + - const: atmel,at91rm9200-usart
>>> + - items:
>>> + - const: atmel,at91sam9260-dbgu
>>> + - const: atmel,at91sam9260-usart
>>> + - items:
>>> + - const: microchip,sam9x60-dbgu
>>> + - const: microchip,sam9x60-usart
>>> + - items:
>>> + - const: microchip,sam9x60-usart
>>> + - const: atmel,at91sam9260-usart
>> This is not correct - contradicts earlier one.
>>
>>> + - items:
>>> + - const: microchip,sam9x60-dbgu
>>> + - const: microchip,sam9x60-usart
>>> + - const: atmel,at91sam9260-dbgu
>>> + - const: atmel,at91sam9260-usart
>> What? You wrote above that microchip,sam9x60-dbgu is compatible only
>> with microchip,sam9x60-usart. Now you write it is also compatible with
>> other ones?
>>
>>> +
>>> + reg:
>>> + maxItems: 1
>>> +
>>> + interrupts:
>>> + maxItems: 1
>>> +
>>> + clock-names:
>>> + contains:
>>> + const: usart
>> No, this has to be specific/fixed list.
>>
>>> +
>>> + clocks:
>>> + minItems: 1
>>> + maxItems: 2
>> Not really - define the items. One item could be optional, though.
>>
>>> +
>>> + dmas:
>>> + items:
>>> + - description: TX DMA Channel
>>> + - description: RX DMA Channel
>>> +
>>> + dma-names:
>>> + items:
>>> + - const: tx
>>> + - const: rx
>>> +
>>> + atmel,usart-mode:
>>> + $ref: /schemas/types.yaml#/definitions/uint32
>>> + description: |
>> No need for |
>>
>>> + Must be either 1 for SPI or 0 for USART.
>> Mention the header.
>>
>>> + enum: [ 0, 1 ]
>>> +
>>> +required:
>>> + - compatible
>>> + - reg
>>> + - interrupts
>>> + - clock-names
>>> + - clocks
>>> +
>>> +if:
>> Put it under allOf.
>
>
> I missed this in the first read, but what do you mean by under allOf?
> The only allOf's in this file are under the then:'s.
>
It means that "if:" is preferred to be under allOf, just like example
schema is showing:
https://elixir.bootlin.com/linux/v5.19/source/Documentation/devicetree/bindings/example-schema.yaml
Not some other allOf, which could be many in your bindings. The one
allOf in top-level, just like example schema.
Best regards,
Krzysztof
Powered by blists - more mailing lists