[PATCH V3] usb: ehci-mx6: Enable OTG detection on imx8mm and imx8mn
Fabio Estevam
festevam at gmail.com
Tue Jan 18 02:45:57 CET 2022
Hi Adam,
On Mon, Jan 17, 2022 at 9:21 PM Adam Ford <aford173 at 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 <aford173 at 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.
The eMMC is no longer mounted and the board hangs.
More information about the U-Boot
mailing list