> -----Original Message----- > From: Tim Harvey <tharvey@xxxxxxxxxxxxx> > Sent: Tuesday, October 18, 2022 3:31 AM > To: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> > Cc: Alexander Stein <alexander.stein@xxxxxxxxxxxxxxx>; Shawn Guo > <shawnguo@xxxxxxxxxx>; Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>; > devicetree@xxxxxxxxxxxxxxx; dl-linux-imx <linux-imx@xxxxxxx>; Pengutronix > Kernel Team <kernel@xxxxxxxxxxxxxx>; Fabio Estevam <festevam@xxxxxxxxx>; > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; Jun Li <jun.li@xxxxxxx> > Subject: Re: [PATCH v3 1/1] arm64: dts: tqma8mpql: add USB DR support > > On Fri, Oct 14, 2022 at 7:18 AM Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> wrote: > > > > Hello Alexander, > > > > On 05.09.22 09:37, Alexander Stein wrote: > > > + pinctrl_usb0: usb0grp { > > > + fsl,pins = <MX8MP_IOMUXC_GPIO1_IO13__USB1_OTG_OC > 0x1c0>, > > > + <MX8MP_IOMUXC_GPIO1_IO12__USB1_OTG_PWR > 0x1c0>; > > > + }; > > > + > > > + pinctrl_usbcon0: usb0congrp { > > > + fsl,pins = <MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10 > 0x1c0>; > > > + }; > > > > I am wondering: You can mux for MX8MP_IOMUXC_GPIO1_IO10__USB1_OTG_ID, > > why did you decide against using the hardware function here? > > > > Ahmad, > > The IMX8MP USB OTG_ID pins are internally not connected. I can't recall where > this is mentioned but due to this they can not be used to select host/device > mode. There is no *OTG* block in iMX8MP HW due to dwc3 IP upgrade, the OTG ID pin cannot generate a normal USB irq for host/device selection, instead, we can use GPIO function to generate ID state change event for it, this is well supported via usb-conn-gpio.c like this patch is using. Li Jun > > Best Regards, > > Tim