Hi community,
I have a question about i.MX6 Linux BSP.
I want to know whether u-boot for i.MX6 Linux BSP (L3.0.35_4.1.0) supports USB OTG Host mode, because I could not find the code for USB OTG Host mode.
Could you let me know it?
And if it supports USB OTG Host, could you let me know what source code supports it?
Best Regards,
Satoshi Shimoda
已解决! 转到解答。
In mainline U-boot:
drivers/usb/host/ehci-mx6.c
You can see the mx6 nitrogen board that supports USB host:
board/boundary/nitrogen6x/nitrogen6x.c
and its config file:
include/configs/nitrogen6x.h
I'm using OTG Host mode to run USB-NET from U-boot, implemented per Fabio's references. It works great after a soft reboot from userspace, but fails on a hard power-cycle. The kernel/FDT seems to properly setup the USB ID pin to identify this as Host mode, but from U-boot the pin is not correctly read, always thinks its in Device mode. What setup am I missing here?
I was missing an IOMUX setup for the USB_OTG_ID, but am now getting failures in the ehci_submit_async(). The handshake fails with "EHCI fail timeout STS_ASS set". Interestingly, now I hit this failure even after a soft reboot, where it was successful before my IOMUX fix.
Argh... I was tinkering with the ethact environment variable earlier. Do not set it to usb_ether. You can let it stay as FEC, and will switch to the proper device, in my case mcs0. All is well.
In mainline U-boot:
drivers/usb/host/ehci-mx6.c
You can see the mx6 nitrogen board that supports USB host:
board/boundary/nitrogen6x/nitrogen6x.c
and its config file:
include/configs/nitrogen6x.h