Check if the DFU can detect the USB target.
$ sudo dfu-util -l
The USB device should be enumerated with the vendor and product ID (
03fd:0050
). You should see something like the following message:Found DFU: [03fd:0050] ver=0100, devnum=30, cfg=1, intf=0, alt=0, name="Xilinx DFU Downloader", serial="2A49876D9CC1AA4"
Note
If you do not see the “Found DFU” message, verify the connection and retry.
Download the BOOT.bin that was created in Creating Boot Images for USB Boot.
$ sudo dfu-util -d 03fd:0050 -D <USB_Boot_Image_Path>/Boot.bin
Verify from the Serial Terminal if FSBL has loaded successfully.
Download the
usb_boot.bin
. Before this, start another terminal session for the UART-1 serial console.$ sudo dfu-util -d 03fd:0050 -D <USB_Boot_Image_Path>/usb_boot.bin
Check the UART 0 terminal and wait until U-Boot loads.
On the U-Boot prompt, press Enter to terminate autoboot. Verify from the UART1 console that the R5 application has also loaded successfully.
Run the following commands to set up the DFU environment in the U-Boot command line:
$ setenv loadaddr 0x10000000 $ setenv kernel_addr 0x10000000 $ setenv kernel_size 0x1e00000 $ setenv dfu_ram_info "setenv dfu_alt_info image.ub ram $kernel_addr $kernel_size"
In the U-Boot console, start DFU_RAM to enable downloading Linux images:
U-boot\ run dfu_ram
Download the Linux image (
image.ub
) using the following command from the host machine terminal:$ sudo dfu-util -d 03fd:0300 -D <PetaLinux_project>/images/linux/image.ub -a 0
Execute Ctrl+C on the U-Boot console to stop dfu_ram.
Run the
bootm
command from the U-Boot console.U-boot\ bootm
Verify that Linux loads successfully on the target.
Note
In this example,
image.ub
is copied to the DDR location based on the#define DFU_ALT_INFO_RAM
settings in U-Boot configuration. These settings can be modified to copy other image files to the DDR location. Then, if required, these images can be copied to QSPI using U-Boot commands listed in Boot Sequence for QSPI-Boot Mode Using JTAG.