Hi Adrien, Thanks for improving Nitrogen upstream, much appreciated. On Tue, Jan 26, 2021 at 10:55:11PM +0100, Adrien Grassein wrote: > add USB support for imx8mq-nitrogen. It consists > in 2 phys: OTG and host. > > The OTG port uses a dedicated regulator for vbus. > > Signed-off-by: Adrien Grassein <adrien.grassein@xxxxxxxxx> > --- > .../boot/dts/freescale/imx8mq-nitrogen.dts | 36 +++++++++++++++++++ > 1 file changed, 36 insertions(+) > > diff --git a/arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts b/arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts > index 81d269296610..fb8acd83a280 100644 > --- a/arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts > +++ b/arch/arm64/boot/dts/freescale/imx8mq-nitrogen.dts > @@ -34,6 +34,17 @@ power { > }; > }; > > + reg_usb_otg_vbus: regulator-usb-otg-vbus { > + compatible = "regulator-fixed"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_reg_usbotg_vbus>; > + regulator-name = "usb_otg_vbus"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio1 12 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + }; > + > reg_vref_0v9: regulator-vref-0v9 { > compatible = "regulator-fixed"; > regulator-name = "vref-0v9"; > @@ -190,6 +201,25 @@ &uart2 { > status = "okay"; > }; > > +&usb_dwc3_0 { > + dr_mode = "otg"; > + status = "okay"; Please add a pinctrl here to mux GPIO1_IO13 as over current pin. But I confirm the port is working. > +}; > + > +&usb3_phy0 { > + vbus-supply = <®_usb_otg_vbus>; > + status = "okay"; > +}; > + > +&usb_dwc3_1 { > + dr_mode = "host"; > + status = "okay"; > +}; The Host port doesn't work for me. This is because of the missing reset signal. Maybe it's time to revive the gpio-reset driver [1]? Anyway, here is how to fix the USB Host ports: # gpioset 0 14=1 I guess it'd be best to have a proper reset solution before merging the host port addition. Regards, Gary [1] https://patchwork.kernel.org/project/linux-arm-kernel/patch/1374834384-8071-1-git-send-email-p.zabel@xxxxxxxxxxxxxx/