[PATCH 1/2] dt-bindings: misc: xlnx,sd-fec: convert bindings to yaml

Krzysztof Kozlowski krzysztof.kozlowski at linaro.org
Tue Jan 16 07:44:30 PST 2024


On 16/01/2024 16:36, Michal Simek wrote:
>>> +  clock-names:
>>> +    additionalItems: true
>>
>> Nope
>>
>>> +    minItems: 2
>>> +    maxItems: 8
>>
>> Nope
>>
>>> +    items:
>>> +      - const: core_clk
>>> +      - const: s_axi_aclk
>>> +      - enum:
>>> +          - s_axis_ctrl_aclk
>>> +          - s_axis_din_aclk
>>> +          - m_axis_status_aclk
>>> +          - m_axis_dout_aclk
>>> +          - s_axis_din_words_aclk
>>> +          - m_axis_dout_words_aclk
>>
>> Why order is not enforced?
> 
> Let me comment this one. Based on my discussion with Dragan IP itself is 
> configurable and only the first two clocks are in all combinations. But based on 
> his description that last 6 clocks can be present in some of them.
> It means order is not really fixed and any combination is possible.
> That's why I have suggested him to use this description because I didn't find 
> any better one.
> I actually tested this schema here but didn't get a feedback on it yet.
> https://lore.kernel.org/r/3e86244a840a45c970289ba6d2fa700a74f5b259.1705051222.git.michal.simek@amd.com
> 
> It means not sure about not defining maxItems but when I don't do it it is not 
> passing dtbs_check.


This would explain why you want additionalItems:true, but it should be
also explained in commit msg. Old code did not have such relaxed
statement, at least not explicitly written, and commit msg explicitly
says it is 1-to-1 conversion.

Anyway, current solution won't work, because additional items can be
anything. Try it. Put as fourth clock "yellow_duck" and see what happens.

I don't find such names as useful and maybe the drivers should just get
by index. Especially that Linux driver does not care. It would be a ABI
change, though, so up to you.

If you want to keep the names, then:
1. Look at snps,dwmac.yaml
2. or just list 6 enums with all possibilities.


Best regards,
Krzysztof




More information about the linux-arm-kernel mailing list