[RFC v4 1/5] dt-bindings: usb: Add bindings to support multiport properties

From: Krishna Kurapati
Date: Sun Jan 15 2023 - 06:42:26 EST


Add bindings to indicate properties required to support multiport
on Snps Dwc3 controller.

Signed-off-by: Krishna Kurapati <quic_kriskura@xxxxxxxxxxx>
---
.../devicetree/bindings/usb/snps,dwc3.yaml | 53 ++++++++++++++++---
1 file changed, 47 insertions(+), 6 deletions(-)

diff --git a/Documentation/devicetree/bindings/usb/snps,dwc3.yaml b/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
index 6d78048c4613..3ea051beb2f8 100644
--- a/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
+++ b/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
@@ -81,15 +81,26 @@ properties:

phys:
minItems: 1
- maxItems: 2
+ maxItems: 8

phy-names:
minItems: 1
- maxItems: 2
- items:
- enum:
- - usb2-phy
- - usb3-phy
+ maxItems: 8
+ oneOf:
+ - items:
+ enum:
+ - usb2-phy
+ - usb3-phy
+ - items:
+ enum:
+ - usb2-phy_port0
+ - usb2-phy_port1
+ - usb2-phy_port2
+ - usb2-phy_port3
+ - usb3-phy_port0
+ - usb3-phy_port1
+ - usb3-phy_port2
+ - usb3-phy_port3

resets:
minItems: 1
@@ -360,6 +371,22 @@ properties:
description:
Enable USB remote wakeup.

+ num-ports:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ This property indicates the number of ports present on the target that
+ are to be serviced by the DWC3 controller.
+ minimum: 1
+ maximum: 4
+
+ num-ss-ports:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ This property indicates the number of SS capable ports present on the
+ target that are to be serviced by the DWC3 controller.
+ minimum: 1
+ maximum: 4
+
unevaluatedProperties: false

required:
@@ -388,4 +415,18 @@ examples:
snps,dis_u2_susphy_quirk;
snps,dis_enblslpm_quirk;
};
+ - |
+ usb@4a000000 {
+ compatible = "snps,dwc3";
+ reg = <0x4a000000 0xcfff>;
+ interrupts = <0 92 4>;
+ clocks = <&clk 1>, <&clk 2>, <&clk 3>;
+ clock-names = "bus_early", "ref", "suspend";
+ num-ports = <2>;
+ num-ss-ports = <1>;
+ phys = <&usb2_phy0>, <&usb3_phy0>, <&usb2_phy1>;
+ phy-names = "usb2-phy_port0", "usb3-phy_port0", "usb2-phy_port1";
+ snps,dis_u2_susphy_quirk;
+ snps,dis_enblslpm_quirk;
+ };
...
--
2.39.0