SD卡启动Uboot、Linux和根文件系统

1 设置uboot环境变量

  使用SD卡启动uboot、Linux和根文件系统之前需要准备以下2项工作:1.对SD卡进行分区及格式化,详情请参考:fdisk命令制作i.MX6ULL烧录SD卡;2.需要将编译好的uboot、Linux内核镜像文件、设备树文件和根文件系统烧录到格式化后的SD卡中,详情请参考:SD卡烧录i.MX6ULL uboot Linux内核及buildroot根文件系统

  将烧录了uboot、Linux内核镜像文件、设备树文件和根文件系统的SD卡插入ALIENTEK-ALPHA V2.1底板,将拨码开关拨到SD卡启动,打开MobaXterm软件,通过串口查看uboot启动信息,如下图所示:
在这里插入图片描述
  在uboot倒计时按下任意键进入uboot交互模式,在此模式下设置uboot环境变量bootcmd和bootargs让uboot找到Linux内核镜像文件、设备树文件和根文件系统buildroot的位置。

1.1 设置uboot环境变量bootcmd

  bootcmd环境变量的作用是设置Linux内核镜像文件和设备树文件的存储位置。使用如下命令指定Linux内核镜像文件和设备树文件存储在SD卡分区1上,命令如下:
setenv bootcmd 'mmc dev 0; fatload mmc 0:1 80800000 zImage; fatload mmc 0:1 83000000 imx6ull-alientek-emmc.dtb; bootz 80800000 - 83000000'
  该命令的详细解释如下:

`mmc dev 0;`表示将当前设备切换到mmc0,mmc0表示SD卡,mmc1表示EMMC设备
`fatload mmc 0:1 80800000 zImage;`fatload用于加载vfat文件系统,mmc表示接口,0:1表示SD卡上第一个分区(前面的0是设备编号,后面的1表示分区1)80800000表示要加载到DDR的位置,zImage表示加载分区1中的Linux镜像文件。
`fatload mmc 0:1 83000000 imx6ull-alientek-emmc.dtb;`表示加载SD卡分区1中的设备树文件imx6ull-alientek-emmc.dtb,保存到DDR的0x83000000位置。
`bootz 80800000 - 83000000`bootz表示运行zImage Linux内核镜像文件。

1.1 设置uboot环境变量bootargs

  bootargs环境变量是引导内核启动的关键,‌它保存着Linux内核启动的相关信息,‌如启动参数和控制台信息等。设置uboot中bootargs环境变量的命令如下:
setenv bootargs 'console=ttymxc0,115200 root=/dev/mmcblk0p2 rootwait rw'

  该命令的详细解释如下:

`console=ttymxc0,115200`表示使用ttymxc0设备打印控制台信息,该设备的波特率为115200。
`root=/dev/mmcblk0p2 rootwait rw`指定根文件系统的位置,mmcblk0p2表示从SD卡的第2个分区加载根文件系统,mmcblk表示设备类型为mmc,0指定了设备为SD卡(0表示SD卡,1表示EMMC设备)p2指定当前分区为第2个分区。rootwait表示等待mmc设备初始化完成后再挂载根文件系统,rw指定根文件系统的操作权限,可读可写。

  设置bootcmd和bootagrs环境变量如下图所示:
在这里插入图片描述

2 启动Linux内核

  设置完uboot中bootcmd和bootargs两个环境变量后,按下开发板的复位按键,通过串口接收到uboot及Linux启动过程如下图所示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3 总结

  由上可知使用SD卡启动uboot、Linux和根文件系统还存在某些细节性的错误,需要修改Linux内核源码及设备树文件。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值