Hi Krzysztof
However you have there multiple ifs, thus finding the one related to clocks is not obvious now and won't be anyhow easier later. What's more, clocks have constraints in top-level, thus seeing clock-names without the constraints also raises reviewers question. Someone might bring a new compatible with another set of clocks (quite likely), thus else won't be valid anymore and you will have to define constraints per *each* variant (each if:then:).
Do you mean you want to tell was keeping minItems/maxItems on top ??
I think I could understand what you want to tell if your indicated link was pointing to "clock-name" line, and/or if you indicated like "please keep minItems/maxItems on top for constraints" or something. But pointed link was to "allOf:" line with very unclear comment, and no response to my question mail. And your words of "constraints". I have been thoughting that you are indicating was "if-then-else" need to catch all "compatible" (but don't use "else if").
It is using "if-then-else", and "else" has minItems/maxItems, I think it is there is no difference. But if my above assumption was correct and Krzysztof agreed to it, I will post v4 patch which keeps min/maxItems on top. Otherwise I will do nothing to avoid endless pointless ping-pong, becuase it already got Reviewed-by.
To avoid pointless ping-pong, I think v4 will be like this
---------- clock-names: description: List of necessary clock names. minItems: 1 maxItems: 31
...
- if: properties: compatible: contains: const: renesas,rcar_sound-gen4 then: properties: clock-names: maxItems: 3 ... else properties: clock-names: ... -------------
Thank you for your help !!
Best regards --- Kuninori Morimoto