U-Boot内核启动参数

40 篇文章 2 订阅
25 篇文章 3 订阅

0 开发环境

    开发板:TL138,Mini2440

    引导系统:Linux

1 环境变量简介

    可以通过U-Boot的setenv命令设置任意的环境变量,然后通过saveenv命令保存即可,例如:

setenv bootargs noinitrd root=/dev/mtdblock3 rw console=ttySAC0,115200 init=/linuxrc mem=64M

     说明:上述命令只设置了一个环境变量bootargs(并非同时设置多个环境变量),noinitrd root=/dev/mtdblock3 rw console=ttySAC0,115200 init=/linuxrc mem=64M整体作为该环境变量的值(U-Boot只将其整体当作一个字符串,而不会根据空格将其划分为多个项,相反,空格也是环境变量值的一部分!),环境变量与其值之间用空格分隔(不能使用等号=)。

    U-Boot的环境变量可以任意设置的,至于是否有意义,有何意义,U-Boot完全不管!U-Boot只将用户所设置的环境变量都当作字符串而已!

    那岂不是容易乱套?答案是否定的。虽然用户可以设置任意的环境变量,但是内核只认得特定环境变量,因此用户还是需要按要求设置(虽然可以任意设置,但是没有意义)。

    那么,内核都认得那些环境变量呢?下面就是根据TL138Mini2440两块开发板的启动参数为例进行分析说明。

2 TL138启动参数分析

    TL138搭载的是TI的Omapl138处理器,可以从Nand Flash启动或者SD卡启动。不管从何种方式启动,其根文件系统可以保存于Nand Flash或者SD卡中。为了是的开发板可以成功加载根文件系统,需要指定根文件系统所在的位置。

(1)挂载Nand Flash文件系统

setenv bootargs console=ttyS2,115200n8 ip=off ubi.mtd=4,2048 root=ubi0_0 rootfstype=ubifs mem=32M@0xc0000000 mem=64M@0xc4000000

(2)挂载SD卡文件系统

setenv bootargs console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext3 mem=32M@0xc0000000 mem=64M@0xc4000000

    console——终端设置,console=ttyS2表示使用串口2输出启动信息。可以改为tty0,这时在LCD上显示启动信息[9]。

    root——该参数告诉内核启动时使用哪个设备作为根文件系统[3]。mmcblk0p2是/dev/下的一个设备,如下截图所示。


    rootfstype —— 根文件系统的类型:ubifs是针对nand flash的一种文件系统[1];ext3是制作SD启动卡时使用的文件类型[2]。

    rw —— 以读写方式加载根文件系统(默认),只读可使用ro[3]。

    mem——限制内核使用的内存数量[3]。mem=size@addr格式的参数,表示从addr地址(物理地址)开始的size大小的内存区域。如果没有”@addr”则默认起始地址为零[8]。

3 Mini2440启动参数分析

待续。。。

参考资料

[1]UBIFS_百度百科

[2]Ext3_百科百科

[3]Linux操作系统内核启动参数详细解析

[4]内核启动参数机制学习笔记

[5]内核启动参数详解 

[6]内核启动参数

[7]Linux内核启动参数

[8]Linux内核启动参数“mem=xxx”的处理

[9]Lcd显示屏上显示板子启动的信息

[10]Uboot启动参数设置

[11]记录一下自己在mini2440上面 使用uboot的曲折的经历

[12]u-boot2012.04.01移植到mini2440 

[13]uboot 设置启动参数

[14]u-boot启动内核的几种方式 

[15]uboot通过添加指令自动启动内核

[16]Booting Linux kernel using U-Boot

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

OneSea

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值