Introduction

What will you do in this lab and which files will you need:

  1. Create hardware zybo-z7-20-hw-platform.xsa, download-zybo-z7.bit
  1. Configure and build Yocto project:
  • Xilinx Vitis XSCT tools inside Yocto device tree binary file system-top.dtb
  • Xilinx Vitis XSCT tools inside Yocto First Stage Bootloader FSBL fsbl-zybo-z7.elf
  • build U-boot bootloader for our platform u-boot.elf
  • download-zybo-z7.bit + fsbl-zybo-z7.elf + u-boot.elf  BOOT.BIN
  • Linux kernel uImage
  • Linux root filesystem (rootfs) core-image-minimal-zybo-z7.rootfs.tar.gz
  • WIC Image to flash SD card core-image-minimal-dev-zybo-z7.rootfs.wic.gz
  1. Layout of SD card (WIC file: $TMPDIR/deploy/image/zybo-z7/core-image-minimal-zybo-z7.rootfs.wic.gz):
  • partition 1: FAT, 32MB:
  • BOOT.bin ($TMPDIR/deploy/image/zybo-z7/boot.bin)
  • system-top.dtb ($TMPDIR/deploy/image/zybo-z7/devicetree/system-top.dtb)
  • uImage ($TMPDIR/deploy/image/zybo-z7/uImage)
  • boot.scr ($TMPDIR/deploy/image/zybo-z7/boot.scr)
  • uEnv.txt ($TMPDIR/deploy/image/zybo-z7/uEnv.txt) - optional
  • partition 2: ext4, 14GB or more (depending on SD card size):
  • unpacked root file system /usr/…, /home/… etc.

Before you start (important!)

This lab is prepared for work on intel1.ue.eti.pg.gda.pl or intel2.ue.eti.pg.gda.pl Ubuntu 22.04 KSME servers only. You need to have a KSME account in LDAP database (ask your teacher).

You will need to be added to xilinx_ldap group. To check your groups:

id

You need to use bash shell. To check your shell:

echo $SHELL

To use bash temporarily (until you logout):

bash

For a permanent change of your shell, ask your teacher.

Warning: Local disk space on intel and inte2 servers is limited. Building the Linux kernel  takes a lot of disk space, so please do work on our large NTFS network drive (shared disk space among all our KSME servers), available at your home directory under link ~/my_nas/.

Steps in this lab:

  1. Create HW platform (XSA) in Vivado 2023.2
  2. Build FSBL, Device Tree, u-Boot, Linux for Zybo Z7-20 board (Yocto Scarthgap)
  3. Adding new software packages to your Yocto
  4. Simple Python software to control GPIO 

Next step: Create HW platform (XSA) in Vivado 2023.2