3.6.3. USB Host Boot¶
3.6.3.1. Overview¶
Similar to MMCSD boot mode, AM64x USB Host boot mode boots U-Boot and Linux from a USB Mass Storage device, for example, a thumb driver attached to the USB host port.
This section demonstrates how to boot AM64x GPEVM to Linux prompt from a USB thumb drive.
3.6.3.2. Setup¶
Hardware
- Refer to EVM Boot Mode Switches to set the AM64x GPEVM boot mode switches to USB Host boot.
- Add headers onto Jumper J23 on AM64x GPEVM to let the USB port work in host mode.
Software
- The layout of U-Boot and Linux binaries on thumb drive is the same as that on the SDCard for MMCSD boot mode. Refer to Create a Linux Bootable SD Card to flash the Processor SDK U-Boot and Linux images to a thumb drive.
- The prebuilt kernel image and kernel defconfig provided in AM64x Processor SDK have all USB drivers built as modules. These drivers should be built in kernel image for USB Host boot mode, so that the USB module can be initialized prior to mounting the root filesystem from the USB thumb drive. Follow the next section Rebuild Kernel Image to build the required USB drivers into kernel image and update it to the bootable thumb drive.
3.6.3.3. Rebuild Kernel Image¶
Section Build Kernel explains how to configure and build kernel image. Follow the instruction below to re-configure the following USB drivers to build in kernel image.
Device Drivers --->
[*] USB support --->
<*> Support for Host-side USB --->
<*> xHCI HCD (USB 3.0) support
...
<*> USB Mass Storage support
...
<*> Cadence USB3 Dual-Role Controller
[*] Cadence USB3 host controller
<*> Cadence USB3 support on TI platforms
The following USB PHY drivers should be already built in kernel image by default.
Device Drivers --->
PHY Subsystem --->
<*> Cadence Torrent PHY driver
<*> TI J721E WIZ (SERDES Wrapper) support
After changing these kernel config options, follow Build Kernel to
rebuild the kernel image, then copy the new kernel image arch/arm64/boot/Image
to boot/
folder on second partition of the bootable thumb drive.
3.6.3.4. USB Host Boot Procedure¶
The AM64x GPEVM use an USB2.0 microAB receptacle. So a microA-to-typeA adapter, which is similar to the picture below, is required to connect the thumb drive to the GPEVM USB port.

Use this type of adapter to connect the bootable thumb drive to the AM64x GPEVM usb port, then power on the EVM, the U-Boot console will print U-Boot boot messages. Press any key on the console keyboard to stop the autoboot to enter the U-Boot prompt once the following messages appear on the U-Boot console:
U-Boot 2021.01-g53e79d0e89 (Jul 23 2021 - 21:08:19 +0000)
SoC: AM64X SR1.0
Model: Texas Instruments AM642 EVM
Board: AM64-GPEVM rev E2
DRAM: 2 GiB
MMC: mmc@fa10000: 0, mmc@fa00000: 1
In: serial@2800000
Out: serial@2800000
Err: serial@2800000
Net: eth0: ethernet@8000000
Hit any key to stop autoboot: 2
Type the following commands on the U-Boot prompt to boot into Linux from the thumb drive:
=> run usbboot