On Mon, Jan 17, 2022 at 7:46 PM Fabio Estevam <feste...@gmail.com> wrote: > > Hi Adam, > > On Mon, Jan 17, 2022 at 9:21 PM Adam Ford <aford...@gmail.com> wrote: > > > > The imx8mm and imx8mn appear compatible with imx7d-usb > > flags in the OTG driver. If the dr_mode is defined as > > host or peripheral, the device appears to operate correctly, > > however the auto host/peripheral detection results in an error. > > > > The solution isn't just adding checks for imx8mm and imx8mn to > > the check for imx7, because the USB clock needs to be running > > to read from the USBNC_PHY_STATUS_OFFSET register or it will hang. > > > > Marek requested that I not enable the clocks in ehci_usb_of_to_plat, > > so I modified that function to return an unknown state if the > > device tree does not explicitly state whether it is a host > > or a peripheral. > > > > When the driver probes, it looks to see if it's in the unknown > > state, and only then will it read the register to auto-detect. > > > > Signed-off-by: Adam Ford <aford...@gmail.com> > > --- > > V3: Keep ehci_usb_of_to_plat but add the ability to return > > and unknown state instead of reading the register. > > If the probe determines the states is unknown, it will > > query the register after the clocks have been enabled. > > Because of the slight behavior change, I removed any > > review or tested tags. > > Unfortunately, v3 breaks 'ums 0 mmc 0' on the imx7s-warp board.
Thanks for testing it. I am not really sure what's significantly different between them. Do you get any errors when you run UMS? > > The eMMC is no longer mounted and the board hangs.