[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