Re: [PATCH v4 2/3] dt-bindings: phy: rockchip,inno-usb2phy: add rk3576

From: Krzysztof Kozlowski
Date: Tue Oct 08 2024 - 10:38:43 EST


On 08/10/2024 05:04, Frank Wang wrote:
> Hi Krzysztof,
>
> On 2024/9/30 3:36, Krzysztof Kozlowski wrote:
>> On Sun, Sep 29, 2024 at 02:10:24PM +0800, Frank Wang wrote:
>>> From: Frank Wang <frank.wang@xxxxxxxxxxxxxx>
>>>
>>> Add compatible for the USB2 phy in the Rockchip RK3576 SoC.
>>>
>>> This change also refactor the clocks list as there are new clocks
>>> adding used for the USB MMU in RK3576 SoC.
>>>
>>> Signed-off-by: Frank Wang <frank.wang@xxxxxxxxxxxxxx>
>>> ---
>>> Changelog:
>>> v4:
>>> - refactor the clocks list used if:then:
>>>
>>> v3:
>>> - narrowed rk3576 clocks by compatible property.
>>>
>>> v2:
>>> - Categorize clock names by oneOf keyword.
>>>
>>> v1:
>>> - https://patchwork.kernel.org/project/linux-phy/patch/20240923025326.10467-1-frank.wang@xxxxxxxxxxxxxx/
>>>
>>> .../bindings/phy/rockchip,inno-usb2phy.yaml | 46 ++++++++++++++++++-
>>> 1 file changed, 44 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/phy/rockchip,inno-usb2phy.yaml b/Documentation/devicetree/bindings/phy/rockchip,inno-usb2phy.yaml
>>> index 5254413137c6..fc2c03d01a20 100644
>>> --- a/Documentation/devicetree/bindings/phy/rockchip,inno-usb2phy.yaml
>>> +++ b/Documentation/devicetree/bindings/phy/rockchip,inno-usb2phy.yaml
>>> @@ -20,6 +20,7 @@ properties:
>>> - rockchip,rk3366-usb2phy
>>> - rockchip,rk3399-usb2phy
>>> - rockchip,rk3568-usb2phy
>>> + - rockchip,rk3576-usb2phy
>>> - rockchip,rk3588-usb2phy
>>> - rockchip,rv1108-usb2phy
>>>
>>> @@ -34,10 +35,12 @@ properties:
>>> const: 0
>>>
>>> clocks:
>>> - maxItems: 1
>>> + minItems: 1
>>> + maxItems: 3
>>>
>>> clock-names:
>>> - const: phyclk
>>> + minItems: 1
>>> + maxItems: 3
>>>
>>> assigned-clocks:
>>> description:
>>> @@ -172,6 +175,45 @@ allOf:
>>> - interrupts
>>> - interrupt-names
>>>
>>> + - if:
>>> + properties:
>>> + compatible:
>>> + contains:
>>> + enum:
>>> + - rockchip,px30-usb2phy
>>> + - rockchip,rk3128-usb2phy
>>> + - rockchip,rk3228-usb2phy
>>> + - rockchip,rk3308-usb2phy
>>> + - rockchip,rk3328-usb2phy
>>> + - rockchip,rk3366-usb2phy
>>> + - rockchip,rk3399-usb2phy
>>> + - rockchip,rk3568-usb2phy
>>> + - rockchip,rk3588-usb2phy
>>> + - rockchip,rv1108-usb2phy
>>> + then:
>>> + properties:
>>> + clocks:
>>> + maxItems: 1
>>> + clock-names:
>>> + const: phyclk
>> maxItems: 1 instead
>
> Sorry for late reply.
>
> Do you mean use "maxItems: 1" instead of "const: phyclk" ?
>
>
>>> +
>>> + - 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
>> This list goes to the top property with minItems: 1. Here you have only
>> minItems: 3.
>>
>> This way you have only one definition of entire list with same order of
>> items between variants.
>
> For rockchip,rk3576-usb2phy, three clocks are all required, and the
> driver does not care about the order of the clocks.
>
> So is the above definition correct?

Of course not. What I wrote is correct.

Best regards,
Krzysztof