Linux SD系统启动卡制作及系统固化方法

1SD系统启动卡说明
SD卡启动是开发板系统启动方式的一种。SD系统启动卡共有FAT32、EXT4两个格式分区。其中FAT32格式分区在Windows系统下可见,EXT4格式分区在Windows系统下不可见,两分区在Linux系统下均可见。FAT32格式分区存放U-Boot、内核、设备树等,EXT4格式分区存放文件系统。
开发板出厂时已经提供一个正常使用的Linux SD系统启动卡。以下步骤是Linux SD系统启动卡的制作过程。
操作环境:
Ubuntu 14.04.3 64bit
执行如下命令创建"/home/tronlong/AM335x/mksdboot"目录,用于存放SD系统启动卡制作文件,如下图所示:
Host# mkdir -p /home/tronlong/AM335x/mksdboot

在这里插入图片描述
2基于Linux-4.4.12内核的SD系统启动卡制作步骤
2.1拷贝SD系统启动卡制作文件
将光盘"Shell\Linux-4.4.12-mksdboot"拷贝到"/home/tronlong/AM335x/mksdboot"目录下。
Linux-4.4.12-mksdboot文件夹内容结构大致如下:

在这里插入图片描述

MLO:U-Boot一级启动镜像。
u-boot.img:U-Boot二级启动镜像。
zImage:Linux内核镜像。
.dtb文件,设备树文件,由内核编译步骤产生:
am335x-icev2.dtb对应ROM为eMMC的设备树文件;
am335x-icev2-nand.dtb对应ROM为NAND FLASH的设备树文件。
flash_nand.sh:固化文件系统到NAND FLASH对应的脚本文件。
mk-eMMC-boot.sh:固化文件系统到eMMC对应的脚本文件。
filesystem目录内容:文件系统压缩包。
mksdboot.sh:Linux SD系统启动卡制作脚本。
modules目录内容:内核模块。
以上文件如需替换,务必保证名字、格式和原文件一致。
2.2识别SD卡
将Micro SD卡通过读卡器连接到计算机,虚拟机Ubuntu系统识别后会自动识别SD卡分区,如下图所示:

在这里插入图片描述

如果没有自动识别,请右击右下角的USB大容量存储设备图标,再点击"Connect (Disconnect from Host)"。

在这里插入图片描述

如果没有以上图标或者连接不成功,请尝试如下方法:
请将Micro SD卡通过读卡器插到USB2.0接口,而不是USB3.0接口,部分版本VMware可能不支持USB3.0。
请将Micro SD卡插在PC上,然后重启Ubuntu,在Ubuntu重启过程中不要拨出来,开机后图标会重新出现。
2.3确认SD卡设备节点名
执行如下命令:
Host# sudo fdisk -l

在这里插入图片描述

可以看到SD卡设备节点是sdb,其中有1个分区,分区名字是sdb1。SD卡设备节点名字是可变的,一般插拔多次或者不同的卡插拔后,可能会显示sdc或者sdd甚至sde。
2.4运行SD系统启动卡制作脚本
SD系统启动卡制作脚本mksdboot.sh主要有如下作用:
将SD卡格式化为boot分区和rootfs分区。
将filesystem文件夹中的文件系统压缩包解压安装到rootfs分区。
将boot目录下的U-Boot镜像文件MLO、u-boot.img拷贝到boot分区。SD卡模式启动时,系统会使用boot分区U-Boot镜像文件。
将Linux-4.4.12-mksdboot的boot目录下对应开发板的设备树文件,拷贝到rootfs分区“/boot”目录,并重命名为am335x-icev2.dtb。SD卡模式启动时,系统会使用rootfs分区“/boot”目录下的设备树文件。
将Linux-4.4.12-mksdboot的boot目录下的内核镜像文件zImage拷贝到rootfs分区“/boot”目录。SD卡模式启动时,系统会使用rootfs分区“/boot”目录下的内核镜像文件。
使用SD系统启动卡启动系统时,如需替换U-Boot镜像、设备树、内核镜像、文件系统,有如下方法:
使用新的U-Boot镜像文件,保持文件名与原文件一致,替换SD系统启动卡boot分区下的对应文件;
使用新的设备树文件,重命名为am335x-icev2.dtb,替换SD系统启动卡rootfs分区“/boot”目录下的对应文件;
使用新的内核镜像文件,保持文件名与原文件一致,替换SD系统启动卡rootfs分区“/boot”目录下的对应文件;先删除SD系统启动卡rootfs分区所有内容,再使用新的文件系统压缩包,将其解压到SD系统启动卡rootfs分区,并将设备树文件、内核镜像文件拷贝到SD系统启动卡rootfs分区“/boot”目录,确保设备树文件名为am335x-icev2.dtb。
使用新的U-Boot镜像文件、设备树文件、内核镜像文件、文件系统压缩包,保持文件名与原文件一致,替换SD系统启动卡制作文件目录下的对应文件,然后重新制作SD系统启动卡。
进入Linux-4.4.12-mksdboot目录,执行如下命令,运行SD系统启动卡制作脚本。不同型号开发板的参数不同,以参数”–board”识别不同型号开发板。
核心板ROM为NAND FLASH版本:–board tl335x-idk_nand
核心板ROM为eMMC版本:–board tl335x-idk_emmc
以核心板ROM为eMMC版本为例,如下图所示:
Host# cd /home/tronlong/AM335x/mksdboot/Linux-4.4.12-mksdboot
Host# sudo ./mksdboot.sh --device /dev/sdb --board tl335x-idk_emmc
“/dev/sdb”为SD卡设备节点。请再次确认SD卡设备节点一致,如错误输入其他存储介质设备节点,将会造成存储介质数据损坏。

在这里插入图片描述

后续详细帮助在官网
销售邮箱:sales@tronlong.com
技术邮箱:support@tronlong.com
创龙总机:020-8998-6280
技术热线:020-3893-9734
创龙官网:www.tronlong.com
技术论坛:www.51ele.net
线上商城:https://tronlong.taobao.com

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值