Issue: the official AVNET ZUBoard PYNQ image does not support the AVNET eMMC module!
AVNET offers an eMMC module (also an SSD/M.2 module for nvme),
but:
it is not enabled, it is not supported to see and use the eMMC in the ZUBoard PYNQ image - Why NOT?
It just works with the AVNET Petalinux image, but this does not have the FPGA Manager enabled
and no Python support (not a PYNQ system, but working fine with eMMC and even SSD/M.2).
So, technically, the eMMC module should work as HW extension (on header J2), on the ZUBoard,
even with PYNQ image booted (from SD or even better to flash PYNQ to eMMC).
The reason, why ZUBoard PYNQ image does not support the AVNET eMMC module:
--> the mmc@ff160000 device (which is sd0) is "DISABLED" !
WHY?
You can see it if you display, de-compile... the device-tree view on a running ZUBoard PYNQ image,
running on SD card.
It give you this:
The mmc@ff160000 is set to "disabled"
You can also see the same, if you unzip the ZUBoard PYNQ image for SD card, you open the image.ub file
in a Hex Editor (on Windows e.g. HxD) and you see:
You see here also that mmc@ff160000 is "disabled"
BTW:
I tried to patch this "disabled" into an "okay" (plus zeros to fill the string, in Hex Editor):
It does not work: booting from SD card with this 'patch': I get many errors and at the end it stops booting.
So, it tells me also:
even I would be able to rebuild the ZUBoard PYNQ image - not sure if just adding such a node in device tree or setting
this node to "okay" would work... ? (e.g. the fabric, the PS engine, is not configured to use the MIO pins for the eMMC (SD0)
interface, potentially the "system" (XSA) will not have SD0 enabled or MIO configured.
BTW: it looks to me, when I try to build the AVNET PYNQ image: this node for mmc (sd0) is not there.
(therefore no eMMC as mmcblk0, sd0, ...!)
"rrrrr"....
How to enable eMMC for AVNET ZUBoard with AVNET eMMC module attached and running PYNQ?