Hi Krzysztof, Am Freitag, 27. September 2024, 09:30:30 CEST schrieb Krzysztof Kozlowski: > On 27/09/2024 09:01, Frank Wang wrote: > > Hi Krzysztof, > > > > On 2024/9/26 22:19, Krzysztof Kozlowski wrote: > >> On 26/09/2024 12:32, Frank Wang wrote: > >>> + - if: > >>> + properties: > >>> + compatible: > >>> + contains: > >>> + enum: > >>> + - rockchip,rk3576-usb2phy > >>> + then: > >>> + properties: > >>> + clocks: > >>> + minItems: 3 > >>> + maxItems: 3 > >> Read one more time the example I gave you. Top-level constraints are > >> saying max one clock. > >> > >> Best regards, > >> Krzysztof > >> > > > > Sorry for overlooking this, I will set both "clocks" and "clock-names" > > to true, and add the else case below the above codes for the "old" SoCs. > > Just like the below. > > > > - clocks: > > - maxItems: 1 > > + clocks: true > > > > - clock-names: > > - const: phyclk > > + clock-names: true > > For the third time, read the code I gave you. Do you see something like > this there? Why doing all the time something different than existing code? On vacation right now so late to the party, and somewhat confused :-) . I've tried to find the code you mentioned, but did fail. In [0] you mention "maybe oneOf". The other replies in that version were about the ordering needing to stay for the older phy variants. [1] in v2 has that NAK thing and [2] from v3 references that example again I am probably just blind, but could use a pointer. Because I think going with a - if: properties: compatible: contains: enum: - rockchip,rk3576-usb2phy then: properties: clocks: minItems: 3 maxItems: 3 clock-names: items: - const: phyclk - const: aclk - const: aclk_slv else: properties: clocks: maxItems: 1 clock-names: const: phyclk block should actually make sure each variant will check for the appropriate number of clocks? And having clocks:true in the main part then makes sure that the property is not getting marked as: arch/arm64/boot/dts/rockchip/rk3576-armsom-sige5.dtb: usb2-phy@0: 'clock-names', 'clocks' do not match any of the regexes: 'pinctrl-[0-9]+' from schema $id: http://devicetree.org/schemas/phy/rockchip,inno-usb2phy.yaml# Heiko [0] https://lore.kernel.org/lkml/snccizbw6thn3lhwad4xppp7vqii4p56ttl2gufwc3ke7vfckf@e4b7nvwwtdfr/ [1] https://lore.kernel.org/lkml/2a4200ac-3ea2-4449-94ac-c4b9f37ad800@xxxxxxxxxx/#t [2] https://lore.kernel.org/lkml/ed829240-d4f7-471f-84f6-3509f87f11a1@xxxxxxxxxx/