Adding custom executables and files into Linux rootfs

104 views
Skip to first unread message

Rajat Rao

unread,
Oct 27, 2022, 1:36:26 PM10/27/22
to Chipyard
Hello,

I was able to port Rocket+L2 config onto a Zynq FPGA on ZCU106 and can boot Linux. I would like to run SPEC benchmarks under Linux. I have the compiled SPEC executables and was able to run it using the old fpga-zynq method because we created the initramfs and kernel ourselves. I don't know how to do that now with firemarshal and a 30 MB limit on image size. And, obviously, SPEC benchmarks are HUGE.

Questions -
1. How do I overcome the 30 MB limit? Is there a way to access the second partition on the SD card after booting? My guess is there isn't...I remember reading somewhere that there is no support for block devices. Should I just increase the limit and rebuild?

2. Is there a way to pass an existing kernel vmlinux image to firemarshal to simply package along with the bootloader and create an image? This gives me greater control over what I want to put in the initramfs rather than doing it via firemarshal.

3. If answer to (2) is "No", then is there an example for adding custom programs using firemarshal?

Philipp Schmitz

unread,
Oct 28, 2022, 5:40:58 AM10/28/22
to Chipyard
Hello,

1. Yes, you should be able to mount the second partition of the SDCard (although I have no experience with your config itself). mount -t  hfsplus /dev/mmcblk0p2 <your_path> should work if you set up your SDCard according to the Chipyard tutorial. (also see:  https://groups.google.com/g/chipyard/c/TLwytgq9g5A)

2. idk

3. check out https://github.com/ucb-bar/spec2017-workload but I would recommend 1.

Dakota Berbrich

unread,
Apr 4, 2023, 11:54:46 AM4/4/23
to Chipyard
Rajat,

Did you use the older fpga-zynq platform for getting the ZCU106 up and running? Or did you implement the shell and overlays found in 'chipyard/fpga/'  and 'chipyard/fpga/fpga-shells'?

Let me know,

Thanks
Reply all
Reply to author
Forward
0 new messages