[PATCH 2/5] dt-bindings: mfd: atmel,at91-usart: convert to json-schema

Krzysztof Kozlowski krzysztof.kozlowski at linaro.org
Fri Aug 19 01:41:40 PDT 2022


On 19/08/2022 11:37, Sergiu.Moga at microchip.com wrote:

>>> +      - 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.
>>
> 
> Yes, this was for a DT node we have internally, my bad. You are right, 
> it does not really make sense and it should not be the other way around: 
> having the DT validate the binding. I will remove this combination in 
> the next version.

You need to fix any out of tree DTS or upstream it.
> 
> 
>>> +      - 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?
> 
> 
> Yes, this one is intended because the 9x60 IP has new functionalities on 
> top of 9260, and some nodes do keep all four as fallback.

Then all nodes should keep fallbacks.

> 
> 
>>> +
>>> +  reg:
>>> +    maxItems: 1
>>> +
>>> +  interrupts:
>>> +    maxItems: 1
>>> +
>>> +  clock-names:
>>> +    contains:
>>> +      const: usart
>> No, this has to be specific/fixed list.
> 
> 
> I wanted to highlight the fact that it must contain either:
> clock-names = "usart";
> or
> clock-names = "usart", "gclk";
> 
> What would be the recommended way of doing this then?

We have an example for this.

https://elixir.bootlin.com/linux/v5.19/source/Documentation/devicetree/bindings/example-schema.yaml#L91


Best regards,
Krzysztof



More information about the linux-arm-kernel mailing list