2019.9.4 Xilinx FPGA Zynq petaLinux 保留內存並製作BOOT.BIN、uimage 及文件系統

本文參考: https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841683/Linux+Reserved+Memory
如有錯誤之處還請不吝賜教!
軟件版本:Vivado 2018.2 ,petalinux 2018.2,Ubuntu 16.04
1、安裝petalinux 2018.2 和 Vivado 2018.2
petalinux安裝教程:https://blog.csdn.net/leon_zeng0/article/details/82766472
Vivado 2018.2安裝教程:https://blog.csdn.net/q774318039a/article/details/86603812
2、準備工作
設置petalinux和交叉編譯工具鏈在命令窗口輸入:
source /opt/pkg/petalinux/settings.sh
source /opt/Xilinx/Vivado/2018.2/settings64.sh

複製vivado 項目中生成的.sdk到指定路徑(如何生成sdk,https://blog.csdn.net/long_fly/article/details/78727813)
3、創建工程以及更改設備樹設置保留內存
創建工程:petalinux-create -t project -n prj_resmem --template zynq
然後
cd prj_resmem /project-spec/meta-user/recipes-bsp/device-tree/files/
更改 system-user.dtsi爲:

/include/ "system-conf.dtsi"
/ {
	reserved-memory {
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;

		reserved: buffer@0x10000000 {
			 no-map;
			 reg = <0x10000000 0x10000000>;
		};
	};

	reserved-driver@0 {
		compatible = "xlnx,reserved-memory";
		memory-region = <&reserved>;
	};
	
};

設置地址 (base address 0x1000_0000, size 0x1000_0000 )
4、通過.sdk配置環境
petalinux-config --get-hw-description DIR_where_you_put_the_design_1_wrapper.sdk
在這裏插入圖片描述
配置SD卡啓動 Image packaing configration–>file system type or rootfs–> SD card
5、進一步配置和編譯項目
*編譯項目並生成BOOT.BIN
petalinux-build
petalinux-package -boot --fsbl image/linux/zynq_fsbl.elf --fpga --u-boot --force
需要使用:BOOT.BIN, image.ub and rootfs.cpio. 三個文件
在這裏插入圖片描述
6、SD卡化分區以及解壓文件系統
*將SD卡化分區爲:FAT和EXT4
*將BOOT.BIN, image.ub拷貝到FAT
*將rootfs.cpio拷貝到EXT4並解壓
sudo pax -rvf rootfs.cpio
7、最後啓動我們的系統

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章