Booting¶
Booting Linux on a Xilinx device is a multi-step process that varies across different devices and boards. The sections below explain the high-level boot process for Zynq UltraScale+ MPSoC/RFSoC devices. Refer to the user guide sections for the reference hardware platforms for specific boot requirements of each platform.
Booting the Node¶
The Mango 802.11 reference PetaLinux projects default to booting the node from an SD card.
- Format a micro-SD card with a single FAT32 partition
- Copy the contents of the
sd_rootfolder from the Mango release archive to the root of the SD card. The SD card should contain: BOOT.BIN(bootloaders)image.ub(kernel image and ramdisk)mango_boot.sh(optional helper script to load the design automatically at boot)hw_binaries/folder containing:linux_dev.elfandedca.elf(MAC software applications)system.bit(FPGA PL bitstream)
- Copy the contents of the
- (Optional) Copy any other files to the SD card required for your application
- Configure your MPSoC board for SD boot (see user guide section for the hardware platform)
- Insert the SD card, power on the node, and watch the UART console output. A normal boot prints output from the FSBL, PMUFW, ATF, u-boot, and Linux. A login prompt will appear on the UART console when boot is finished.
- Login to Linux as
root / rootvia the UART console or SSH - If
mango_boot.shis present it will automatically load the 802.11 MAC/PHY design after boot. Otherwise, load the design manually:
- Watch the UART output for RPU boot messages. On platforms with multiple UARTS (e.g. ZCU104) the R5 CPUs may print to a different UART than the Linux console.
- Check the kernel log with
dmesgto confirm themango_wlandriver module loaded successfully. - Use the 802.11 wireless network interface like any other interface. The reference projects include some example scripts (
run_ap.sh,run_monitor.sh, etc.) and utility programs (tcpdump, etc.).