This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

USB not working with non-TI u-boot/kernel

I have an AM335X EVM which we're using until we get hardware in on a board we're designing. When booted with the TI kernel and TI u-boot, the USB ports work just fine. We also have an existing toolchain and build system, which we plan to use on the final product. Using this toolchain/build system, which was customized for the beaglebone platform, the USB ports don't work.

I figured this was a problem with u-boot not mapping the pins correctly (since I do not even get power to the USB port, much less data), so I changed TI's u-boot to expect an ext4 image and to give the kernel more room to uncompress, and tried this. Still no luck - the non-TI image boots fine, I get a command prompt, but the USB ports are still dead. As the kernel boots, I can see the USB subsystem initialize and load modules (such as the HID module), and this all appears to happen fine with no warnings or errors.

Is this a u-boot issue? A kernel issue? Any suggestions on how to troubleshoot this would be appreciated.

  • Ok, I think I've proved it's kernel-related. I finally got a TI kernel and a TI-uboot working with the existing toolchain FS image, and the USB ports worked. Then I tried a TI kernel and non-TI u-boot, and the USB still worked.

    I've gone through the kernel config and all of the USB configuration looks right, but it looks like process of elimination is pointing to that being the cause. Once again, any suggestions on debugging would be appreciated, or if there's a known patch that needs to be applied to the vanilla kernel to get USB support on this board/processor, that would be great.

    As a side suggestion, this would be a lot easier to figure out if TI provided a vanilla kernel/u-boot and a set of patches, instead of a pre-patched version in the SDK. Many of those patches would be useful to people trying to port their own systems to TI products.