So, I do not have yet a general solution to substitute the image.ub on a ZUBoard PYNQ image,
supporting eMMC as well as SSD/M.2 (for now just eMMC).
But:
you can "patch" a regular ZUBoard PYNQ image with my boot files so that - at least - the eMMC works.
How to enable ZUBoard PYNQ for eMMC?
(seeing it as device or even booting from it)
- Download and flash the regular ZUBoard PYNQ image:
https://www.pynq.io/boards.html - Boot with this SD card image:
you do not see yet eMMC... - Download the ZIP with the modified BOOT.BIN and image.ub:
http://www.tjaekel.com/emmc_boot.zip
(there is a virus warning - no idea why) or see below attached here - Extract this ZIP so that you have:
BOOT.BIN
image.ub - when booted via original SD card with ZUBoard PYNQ image:
copy the two files to SD card on the ZUBoard (regular, via SAMBA and file manager) - now you can copy / overwrite the original files on SD card:
copy BOOT.BIN and image.ub into:
mmcblk0p1 - potentially mounted as /boot
in the UART terminal session - Do a:
sync && sync - and reboot the system (still with SD card boot):
you should see now also mmcblk1:
use command:
lsblk

The two boot files needed...:
Unzip and copy the two files into the SD card /boot directory, reboot the system, ... see if you have the emmc as mmcblk1,
via lsblk
Afterwards, you should be able to configure (fdisk, fsck) the eMMC module, flash it with "same" files (flash the boot and rootfs partition),
just set the bootargs for mmcblk1 boot properly (see other threads in this forum).
It should also boot and run from eMMC.
Booting from eMMC:
In general, you do the same:
- you image the original PYNQ image to the eMMC (mmcblk1, both partitions)
- you boot from SD card and you see the mmcblk1
- you mount mmcblk1p1 and overwrite the (BOOT.BIN and) image.ub
- You change boot switches (now eMMC mode)
- you interrupt the boot process (u-boot command line)
- and set the bootargs (see in forum how)
It would be cool, if anybody could generate a (BOOT.BIN and) image.ub which would support
eMMC as well as SSD/M.2, with FPGA manager (from a PetaLinux project with a newer BSP),
so that we can patch original/official ZUBoard PYNQ image with it
(and have the options to use eMMC or SSD/M.2 AVNET modules working with PYNQ on ZUBoard).
Thank you.