Commit 98bad5bc authored by Sebastian Reichel's avatar Sebastian Reichel Committed by Greg Kroah-Hartman
Browse files

dt-bindings: usb: add rk3588 compatible to rockchip,dwc3



RK3588 has three DWC3 controllers. Two of them are fully functional in
host, device and OTG mode including USB2 support. They are connected to
dedicated PHYs, that also support USB-C's DisplayPort alternate mode.

The third controller is connected to one of the combphy's shared
with PCIe and SATA. It can only be used in host mode and does not
support USB2. Compared to the other controllers this one needs
some extra clocks.

While adding the extra clocks required by RK3588, I noticed grf_clk
is not available on RK3568, so I disallowed it for that platform.

Signed-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
Reviewed-by: default avatarConor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20231020150022.48725-2-sebastian.reichel@collabora.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent de7ecc4e
Loading
Loading
Loading
Loading
+55 −5
Original line number Diff line number Diff line
@@ -20,9 +20,6 @@ description:
  Type-C PHY
  Documentation/devicetree/bindings/phy/phy-rockchip-typec.txt

allOf:
  - $ref: snps,dwc3.yaml#

select:
  properties:
    compatible:
@@ -30,6 +27,7 @@ select:
        enum:
          - rockchip,rk3328-dwc3
          - rockchip,rk3568-dwc3
          - rockchip,rk3588-dwc3
  required:
    - compatible

@@ -39,6 +37,7 @@ properties:
      - enum:
          - rockchip,rk3328-dwc3
          - rockchip,rk3568-dwc3
          - rockchip,rk3588-dwc3
      - const: snps,dwc3

  reg:
@@ -58,7 +57,9 @@ properties:
          Master/Core clock, must to be >= 62.5 MHz for SS
          operation and >= 30MHz for HS operation
      - description:
          Controller grf clock
          Controller grf clock OR UTMI clock
      - description:
          PIPE clock

  clock-names:
    minItems: 3
@@ -66,7 +67,10 @@ properties:
      - const: ref_clk
      - const: suspend_clk
      - const: bus_clk
      - const: grf_clk
      - enum:
          - grf_clk
          - utmi
      - const: pipe

  power-domains:
    maxItems: 1
@@ -86,6 +90,52 @@ required:
  - clocks
  - clock-names

allOf:
  - $ref: snps,dwc3.yaml#
  - if:
      properties:
        compatible:
          contains:
            const: rockchip,rk3328-dwc3
    then:
      properties:
        clocks:
          minItems: 3
          maxItems: 4
        clock-names:
          minItems: 3
          items:
            - const: ref_clk
            - const: suspend_clk
            - const: bus_clk
            - const: grf_clk
  - if:
      properties:
        compatible:
          contains:
            const: rockchip,rk3568-dwc3
    then:
      properties:
        clocks:
          maxItems: 3
        clock-names:
          maxItems: 3
  - if:
      properties:
        compatible:
          contains:
            const: rockchip,rk3588-dwc3
    then:
      properties:
        clock-names:
          minItems: 3
          items:
            - const: ref_clk
            - const: suspend_clk
            - const: bus_clk
            - const: utmi
            - const: pipe

examples:
  - |
    #include <dt-bindings/clock/rk3328-cru.h>