欢迎来到飞鸟慕鱼博客,开始您的技术之旅!
当前位置: 首页知识笔记正文

环境变量ubuntu,uboot环境变量文件在哪

墨初 知识笔记 151阅读
一.  简介


uboot 中有两个非常重要的环境变量 bootcmd 和 bootargs。本文来学习 uboot的环境变量 bootargs。

bootargs 环境变量也叫命令行参数。bootargs 保存着 uboot 传递给 Linux 内核的参数。

二.  uboot移植之环境变量bootargs

环境变量 bootargs 的设置是在 mx6ull_alientek_nand.h文件中。

mx6ull_alientek_nand.h文件所在目录Uboot源码的根目录下 include/configs

如果是 NAND-Flash版的开发板则 bootargs参数值如下设置

#if defined(CONFIG_SYS_BOOT_NAND)#define CONFIG_EXTRA_ENV_SETTINGS \CONFIG_MFG_ENV_SETTINGS \panelTFT43AB\0 \fdt_addr0x83000000\0 \fdt_high0xffffffff\0  \consolettymxc0\0 \bootargsconsolettymxc0,115200 ubi.mtd4   \rootubi0:rootfs rootfstypeubifs      \CONFIG_BOOTARGS_CMA_SIZE \mtdpartsgpmi-nand:64m(boot),16m(kernel),16m(dtb),1m(misc),-(rootfs)\0\bootcmdnand read ${loadaddr} 0x4000000 0x800000;\nand read ${fdt_addr} 0x5000000 0x100000;\bootz ${loadaddr} - ${fdt_addr}\0

下面对上面的 bootargs环境变量值进行分析。

环境变量 bootargs值如下

bootargsconsolettymxc0,115200 ubi.mtd4   \rootubi0:rootfs rootfstypeubifs      \CONFIG_BOOTARGS_CMA_SIZE \mtdpartsgpmi-nand:64m(boot),16m(kernel),16m(dtb),1m(misc),-(rootfs)\0\

CONFIG_BOOTARGS_CMA_SIZE 宏为空如下

#define CONFIG_BOOTARGS_CMA_SIZE   

环境变量 bootargs最终展开为

bootargsconsolettymxc0,115200 ubi.mtd4   \
        rootubi0:rootfs rootfstypeubifs              \
        mtdpartsgpmi-nand:64m(boot),16m(kernel),16m(dtb),1m(misc),-(rootfs)\0\

bootargs 环境变量 就是设置了很多的参数的值这些参数 Linux 内核会使用到。 使用的串口 tymxc0与 Linux交互。 ubi.mtd4 表示 第 4个分区。 mtdpartsgpmi-nand:64m(boot),16m(kernel),16m(dtb),1m(misc),-(rootfs) mtdparts 定义了Nand-Flash的分区信息。分为5 个分区不同分区存放不同的文件。

bootargs 环境变量主要设置两个参数 consolerootrootfstype

(1)  console console 用来设置 linux 终端 ( 或者叫控制台 ) 也就是通过什么设备来和 Linux 进行交互是 串口还是 LCD 屏幕如果是串口的话应该是串口几等等。一般设置串口作为 Linux 终端这样 我们就可以在电脑上通过 SecureCRT 来和 linux 交互了。这里设置 console 为 ttymxc0 因为 linux 启动以后 I.MX6ULL 的串口 1 在 linux 下的设备文件就是 /dev/ttymxc0 在 Linux 下一切皆文 件。 设 置 ttymxc0 也就是串口 1 作为 Linux 的终端并且串口波特率设置为 115200 。

(2) root

Linux系统启动以后会有一个根文件系统的概念。这个根文件系统也就是 root。

root 用来设置根文件系统的位置。

这里根文件系统的位置是  ubi0:rootfs 。

(3)  rootfstype 此选项一般配置 root 一起使用 rootfstype 用于指定根文件系统类型。 如果根文件系统为 ext 格式的话此选项无所谓。 如果根文件系统是 yaffs 、 jffs 或 ubifs 的话就需要设置此选项指 定根文件系统的类型。

标签:
声明:无特别说明,转载请标明本文来源!