Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Download Binaries to Device

Download PMUFW and FSBL

...

ZCU102 Host

ZCU102 Device

Use the command below to download BOOT.bin to Device

Code Block
root@xilinx-zcu102-2021_1:~# dfu-util -d 03fd:0050 -D BOOT.bin

Verify from Device’s Serial Terminal whether the FSBL is loaded successfully.

ZCU102 Device’s log as follows

Code Block
Xilinx Zynq MP First Stage Boot Loader
Release 2021.1 Apr 15 2021 - 13:29:46

Info

As Device mode is enabled in FSBL, after FSBL gets loaded, USB DFU will be re-enumerated on Host.

Download U-Boot and ATF

...

ZCU102 Host

ZCU102 Device

Use the command below to download usb_boot.bin to Device

Code Block
root@xilinx-zcu102-2021_1:~# dfu-util -d 03fd:0050 -D usb_boot.bin

...

Check UART 0 terminal and wait until U-Boot loads.

On U-Boot prompt, press Enter key to terminate autoboot

...

Enable Rootfs Download on Device

...

.

Code Block

...

PMU 

...

Firmware 2021.1	Mar 24 2021   17:58:53
PMU_ROM ê
ATF running on XCZU9EG/silicon v4/RTL5.1 at 0xfffea000
NOTICE:  BL31: v2.2(release):xilinx-v2020.2
NOTICE:  BL31: Built : 16:49:36, Apr  8 2021

U-Boot 2021.01 (Feb 02 2021 - 16:42:22 +0000)

Model: ZynqMP ZCU102 Rev1.0
Board: Xilinx ZynqMP
DRAM:  4 GiB
PMUFW:	v1.1
EL Level:	EL2
Chip ID:	zu9eg
NAND:  0 MiB
MMC:   mmc@ff170000: 0
In:    serial
Out:   serial
Err:   serial
Bootmode: USB_MODE
Reset reason:	EXTERNAL 
Net:   
ZYNQ GEM: ff0e0000, mdio bus ff0e0000, phyaddr 12, interface rgmii-id

Warning: ethernet@ff0e0000 (eth0) using random MAC address - 42:fe:41:9a:7a:30
eth0: ethernet@ff0e0000
Hit any key to stop autoboot:  2 1 0 

Enable Rootfs Download on Device

  • On Device’s U-Boot console, modify dfu_ram_info to enable rootfs download via DFU.

Code Block
ZynqMP> setenv dfu_ram_info "setenv dfu_alt_info Image ram 0x80000 $kernel_size_r\\;system.dtb ram $fdt_addr_r $fdt_size_r\\;rootfs.cpio.gz.u-boot ram 0x7000000 0x10000000"

...

Code Block
ZynqMP> printenv dfu_ram_info
dfu_ram_info=setenv dfu_alt_info Image ram 0x80000 0x10000000\;system.dtb ram 0x40000000 0x400000\;rootfs.cpio.gz.u-boot ram 0x7000000 0x10000000

...

Download Linux Image

ZCU102 Device

ZCU102 Host

On Device’s U-Boot console start DFU_RAM to download Linux Image

After executing the command below, Device gets detected on Host

Code Block
ZynqMP> run dfu_ram

...

Check if the DFU can detect the USB target.

Code Block
root@xilinx-zcu102-2021_1:~# dfu-util -l
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

Found DFU: [03fd:0300] ver=0223, devnum=2, cfg=1, intf=0, path="2-1", alt=2, name="rootfs.cpio.gz.u-boot", serial="UNKNOWN"
Found DFU: [03fd:0300] ver=0223, devnum=2, cfg=1, intf=0, path="2-1", alt=1, name="system.dtb", serial="UNKNOWN"
Found DFU: [03fd:0300] ver=0223, devnum=2, cfg=1, intf=0, path="2-1", alt=0, name="Image

...

", serial="UNKNOWN"

After successful download of Linux Image, execute CTRL+C on U-Boot console to stop dfu_ram.

Code Block
ZynqMP> run dfu_ram
##DOWNLOAD ... OK
Ctrl+C to exit ...

Download Linux Image using following command from Host

Code Block
root@xilinx-zcu102-2021_1:~# dfu-util -d 03fd:0300 -D Image --alt 0
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 03fd:0300
Run-time device DFU version 0110
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 0110
Device returned transfer size 4096
Copying data from PC to DFU device

Download [=========================] 100%     32000512 bytes
Download done.
state(7) = dfuMANIFEST, status(0) = No error condition is present
state(2) = dfuIDLE

...

,

...

ZCU102 Device’s sample log

Code Block
ZynqMP> run dfu_ram
##DOWNLOAD ... OK
Ctrl+C to exit ...

...

 status(0) = No error condition is present
Done!

Download DTB

ZCU102 Device

ZCU102 Host

On Device’s U-Boot console start DFU_RAM to download system.dtb

After executing the command below, Device gets detected on Host

Code Block
ZynqMP> run dfu_ram

Download system.dtb using following command from Host

Code Block
root@xilinx-zcu102-2021_1:~# dfu-util -d 03fd:0050 -D system.dtb --alt 1

After successful download of

...

Linux Image, execute CTRL+C on U-Boot console to stop dfu_ram.

Code Block
ZynqMP> run dfu_ram
##DOWNLOAD ... OK
Ctrl+C to exit ...

Download ROOTFS

ZCU102 Device

ZCU102 Host

On Device’s U-Boot console start DFU_RAM to download rootfs.cpio.gz.u-boot

After executing the command below, Device gets detected on Host

Code Block
ZynqMP> run dfu_ram

Download rootfs.cpio.gz.u-boot using following command from Host

Code Block
root@xilinx-zcu102-2021_1:~# dfu-util -d 03fd:0050 -D rootfs.cpio.gz.u-boot --alt 2

After successful download of

...

Linux Image, execute CTRL+C on U-Boot console to stop dfu_ram.

Code Block
ZynqMP> run dfu_ram
##DOWNLOAD ... OK
Ctrl+C to exit ...

Boot ZCU102 Device

  • On Device, Boot Linux with booti command on U-Boot Console.

...