Hi Rob, > > +properties: > > + compatible: > > + items: > > + - enum: > > + - realtek,rtd1295-dwc3 > > + - realtek,rtd1315e-dwc3 > > + - realtek,rtd1319-dwc3 > > + - realtek,rtd1319d-dwc3 > > + - realtek,rtd1395-dwc3 > > + - realtek,rtd1619-dwc3 > > + - realtek,rtd1619b-dwc3 > > + - const: realtek,rtd-dwc3 > > + > > + reg: > > + maxItems: 1 > > Some details on what these registers are would be useful. Or describing what's > in the 'glue' device? Ok, I will add the description. > > + realtek,unlink-usb3-port: > > + description: Disable link between USB 3.0 PHY and USB mac. > > + Only for RTD1619 SoC, if the board design support maximum 2.0 > speed. > > + type: boolean > > We have a property for this: maximum-speed > > That belongs in the USB controller node though. I can try to use this property. But I have a question. This property belongs to dwc3. When the dwc3-rtk setting disables USB 3.0 phy, dwc3 is not probed. So I can't use api usb_get_maximum_speed(dev) to get maximum_speed. I can add this property "maximum-speed" to the dwc3-rtk node, which is the same as the dwc3 core node. Is this configuration appropriate? For example usb@98013e00 { compatible = "realtek,rtd1319d-dwc3", "realtek,rtd-dwc3"; reg = <0x98013e00 0x200>; #address-cells = <1>; #size-cells = <1>; ranges; maximum-speed = "high-speed"; usb@98050000 { compatible = "snps,dwc3"; reg = <0x98050000 0x9000>; interrupts = <0 94 4>; phys = <&usb2phy &usb3phy>; phy-names = "usb2-phy", "usb3-phy"; dr_mode = "otg"; usb-role-switch; role-switch-default-mode = "host"; snps,dis_u2_susphy_quirk; snps,parkmode-disable-ss-quirk; snps,parkmode-disable-hs-quirk; maximum-speed = "high-speed"; }; }; > > + > > + realtek,disable-usb3-phy: > > + description: Close USB 3.0 PHY if the board design not support USB 3.0. > > + type: boolean > > Can't this be determined by not having a USB3 phy listed? I will try to use maximum-speed. > > +examples: > > + - | > > + usb@98013e00 { > > + compatible = "realtek,rtd1319d-dwc3", "realtek,rtd-dwc3"; > > + reg = <0x98013e00 0x200>; > > + #address-cells = <1>; > > + #size-cells = <1>; > > + ranges; > > + status = "okay"; > > Drop status from examples. Ok. Thanks, Stanley