文章目錄
- 系列文章目錄
- 前言
- 一、根文件系統是什么?
- 二、根文件系統燒進emmc
- 1.emmc是什么?
- 2.根文件系統的位置
- 3.分離根文件系統步驟1.1
- 4.分離根文件系統步驟1.2
- 5.分離根文件系統步驟2.1
- 三、根文件系統進emmc,設備樹和鏡像進flash
系列文章目錄
ZYNQ----------PS端入門(一)
ZYNQ----------PS端入門(二)(配置Uboot啟動操作系統)
ZYNQ----------PS端入門(三) 設備樹
前言
目的:希望傳進系統中的文件,在下電后不丟失,所以把根文件系統掛載到emmc中
一、根文件系統是什么?
文件系統,掛載點為 /,包含了運行系統所需的關鍵目錄結構、設備文件、庫、工具和配置文件
二、根文件系統燒進emmc
1.emmc是什么?
eMMC(embedded MultiMediaCard)是一種嵌入式閃存存儲解決方案
eMMC 在 Linux 系統中的使用設備節點eMMC 在 Linux 中通常映射為 /dev/mmcblkX(如 /dev/mmcblk0),分區則為 /dev/mmcblk0p1、/dev/mmcblk0p2 等。在Uboot中通常映射為mmc設備
2.根文件系統的位置
在之前的章節中,根文件系統在鏡像文件中,所以需要將根文件系統分離
3.分離根文件系統步驟1.1
根文件系統類型按照之前的INITRAMFS,所以不進行更改
1.petalinux-config -c rootfs需要新增mkfs.ext4命令,后續用于格式化eMMC分區。Filesystem Packages?base?e2fsprogse2fsprogs、e2fsprogs-mke2fs使能。
2.petalinux-build
3.配置完成后燒進系統中
4.分離根文件系統步驟1.2
1.用tftp燒寫鏡像和設備樹啟動linux
2.分區emmc(分1個fat格式分區p1,一個ext4格式分區p2)
ls /dev/mmcblk* //查看emmc分區fdisk /dev/mmcblk1 //開始分區輸入n后輸入p分區1,1大小選擇20480輸入n后輸入p分區2大小選擇+5120M
w(退出)mkfs.vfat -F 32 /dev/mmcblk1p1 //格式化成FAT
mkfs.ext4 /dev/mmcblk1p2 //根文件系統放在第二個分區,格式化成EXT4。mkdir mmcp1
mkdir mmcp2
mount /dev/mmcblkp1 mmcp1
mount /dev/mmcblkp2 mmcp2將/images/linux/rootfs.ext4.gz解壓
然后使用xsheel中的xftp將根文件系統拷進mmcp2文件夾中
5.分離根文件系統步驟2.1
1.根文件系統類型改成 SD card,修改根文件系統所在文件夾名稱為/dev/mmcblk1p2。
petalinux-config
2.修改/project-spec/meta-plnx-generated/recipes-bsp/u-boot/configs/platform-auto.h
petalinux-build
三、根文件系統進emmc,設備樹和鏡像進flash
由于根文件系統從鏡像中分離了,所以鏡像文件變小,可以將鏡像和設備樹都燒進flash中
tftpboot 0x00100000 zImage #燒寫鏡像tftpboot 0x11000000 system.dtb #燒寫設備樹#激活flashsf probe 0 #燒寫鏡像//地址:0x110_0000 - 0x1600_0000 sf erase 0x01100000 0x00500000 sf write 0x00100000 0x01100000 0x00500000#燒寫設備樹//地址:0x0100_0000 - 0x0101_0000sf erase 0x01800000 0x00010000 sf write 0x11000000 0x01800000 0x00010000 setenv bootcmd 'sf probe 0;sf read 0x00100000 0x01100000 0x00500000;sf read 0x11000000 0x01800000 0x00010000;bootz 0x00100000 - 0x11000000'saveenv