Vitis Packaging Images
Vitis支持Ext4和initramfs格式文件系统。
Ext4 rootfs
petalinux中的设置
petalinux-config
选择EXT4
将petalinux编译生成的ext4 rootfs(rootfs.ext4)提供给Vitis
Vitis编译后生成sd_card_img文件包含:
- xclbin文件:PL kernel
- 应用程序可执行文件
- Linux Kernel image
- 设备树
- 配置文件:boot.scr
- 脚本init.sh和platform_desc.txt
- ext4 rootfs
init.sh设置环境变量XILINX_XRT并将platform_desc.txt文件拷贝到/etc/xocl.txt,init.sh需要手动执行。
Initramfs rootfs
petalinux中的设置
petalinux-config
选择INITRAMFS
将petalinux编译生成的initramfs rootfs(rootfs.cpio)提供给Vitis,Vitis编译后生成sd_card_img文件包含:
- xclbin文件:PL kernel
- 应用程序可执行文件
- Linux Kernel image
- 设备树
- 配置文件:boot.scr
- 脚本init.sh和platform_desc.txt
- initramfs rootfs
烧写指令
-
Linux烧写
$df -h
$sudo dd bs=4M if=sd_card.img of=/dev/sdb status=progress conv=fsync
-
Windows烧写
使用烧写软件Etcher
烧写问题
当使用ext4 rootfs时,vitis2020.1版本中,sd_card.img分成两部分:
- FAT32部分为1GB,用来存放xclbin、Linux Kernel image、boot.scr、init.sh和platform_desc.txt等
- EXT4部分为2GB,用来存放文件系统ext4 rootfs
EXT4部分太小不够用,我的解决办法是完成烧写后,将EXT4部分进行扩容。