lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4027f2f8-4d60-3907-ec36-4c9b0ca52214@linaro.org>
Date:   Thu, 20 Jul 2023 08:25:39 +0200
From:   Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To:     Sebastian Reichel <sebastian.reichel@...labora.com>,
        Heiko Stuebner <heiko@...ech.de>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc:     Rob Herring <robh+dt@...nel.org>,
        Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
        Conor Dooley <conor+dt@...nel.org>,
        linux-rockchip@...ts.infradead.org, linux-usb@...r.kernel.org,
        devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
        linux-arm-kernel@...ts.infradead.org, kernel@...labora.com
Subject: Re: [PATCH v1 1/2] dt-bindings: usb: rockchip,dwc3: Add RK3588
 binding

On 19/07/2023 19:40, Sebastian Reichel wrote:
> RK3588 contains three DWC3 cores. Two of them are connected to
> dedicated USBDP PHY and can be used in dual-role. The third is
> connected to one of the shared combo PHYs used for PCIe/SATA/USB3
> and can only be used in host mode. Since the binding is all about
> the PHY glueing and involved clocks, separate compatible values
> have been created for these two types.

The cores are the same. To which phy they are connected to, does not
justify difference in compatibles. It's still the same devoce.

> 
> Signed-off-by: Sebastian Reichel <sebastian.reichel@...labora.com>
> ---
>  .../bindings/usb/rockchip,rk3399-dwc3.yaml    | 107 ++++++++++++++----
>  1 file changed, 85 insertions(+), 22 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/usb/rockchip,rk3399-dwc3.yaml b/Documentation/devicetree/bindings/usb/rockchip,rk3399-dwc3.yaml
> index 3159f9a6a0f7..0db4dc86e506 100644
> --- a/Documentation/devicetree/bindings/usb/rockchip,rk3399-dwc3.yaml
> +++ b/Documentation/devicetree/bindings/usb/rockchip,rk3399-dwc3.yaml
> @@ -11,7 +11,13 @@ maintainers:
>  
>  properties:
>    compatible:
> -    const: rockchip,rk3399-dwc3
> +    oneOf:
> +      - items:
> +          - enum:
> +              - rockchip,rk3588-dwc3-otg
> +              - rockchip,rk3588-dwc3-host
> +          - const: rockchip,rk3399-dwc3
> +      - const: rockchip,rk3399-dwc3
>  
>    '#address-cells':
>      const: 2
> @@ -22,35 +28,37 @@ properties:
>    ranges: true
>  
>    clocks:
> -    items:
> -      - description:
> -          Controller reference clock, must to be 24 MHz
> -      - description:
> -          Controller suspend clock, must to be 24 MHz or 32 KHz
> -      - description:
> -          Master/Core clock, must to be >= 62.5 MHz for SS
> -          operation and >= 30MHz for HS operation
> -      - description:
> -          USB3 aclk peri
> -      - description:
> -          USB3 aclk
> -      - description:
> -          Controller grf clock
> +    minItems: 3
> +    maxItems: 6
>  
>    clock-names:
>      items:
> -      - const: ref_clk
> -      - const: suspend_clk
> -      - const: bus_clk
> -      - const: aclk_usb3_rksoc_axi_perf
> -      - const: aclk_usb3
> -      - const: grf_clk
> +      oneOf:
> +        - enum:
> +            - ref
> +            - ref_clk

This is not oneOf. You cannot have here one clock. There is also no
point in making all these changes here,.

> +        - enum:
> +            - suspend
> +            - suspend_clk
> +        - enum:
> +            - bus
> +            - bus_clk
> +        - const: aclk_usb3_rksoc_axi_perf
> +        - const: aclk_usb3
> +        - const: grf_clk
> +        - const: utmi
> +        - const: php
> +        - const: pipe
> +    minItems: 3
> +    maxItems: 6
>  
>    resets:
>      maxItems: 1
>  
>    reset-names:
> -    const: usb3-otg
> +    enum:
> +      - usb3-host
> +      - usb3-otg

I don't see a point in changing this.

>  
>  patternProperties:
>    '^usb@':
> @@ -68,6 +76,61 @@ required:
>    - resets
>    - reset-names
>  
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          const: rockchip,rk3399-dwc3
> +    then:
> +      properties:
> +        clocks:
> +          minItems: 6
> +        clock-names:
> +          items:
> +            - const: ref_clk
> +            - const: suspend_clk
> +            - const: bus_clk
> +            - const: aclk_usb3_rksoc_axi_perf
> +            - const: aclk_usb3
> +            - const: grf_clk
> +        reset-names:
> +          const: usb3-otg
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: rockchip,rk3588-dwc3-otg
> +    then:
> +      properties:
> +        clocks:
> +          maxItems: 3
> +        clock-names:
> +          items:
> +            - const: ref
> +            - const: suspend
> +            - const: bus

Use the same clock names.

> +        reset-names:
> +          const: usb3-otg
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: rockchip,rk3588-dwc3-host
> +    then:
> +      properties:
> +        clocks:
> +          minItems: 6
> +        clock-names:
> +          items:
> +            - const: ref
> +            - const: suspend
> +            - const: bus
> +            - const: utmi
> +            - const: php
> +            - const: pipe

Same clock names

> +        reset-names:
> +          const: usb3-host

Same reset name.


Best regards,
Krzysztof

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ