uboot2016.11分析8 - uboot的默认环境变量

【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) 

uboot的默认环境变量

   在uboot阶段输入命令printenv, 可以查看到uboot的默认环境变量.

arch=arm
baudrate=115200
board=xxxxxx
board_name=xxxxxx
bootargs=mem=512M console=ttyAMA0,115200 rootwait root=/dev/mmcblk0p3 rootfstype=ext4 rw blkdevparts=mmcblk0:1M(boot),5M(kernel),2000M(rootfs)
bootcmd=mmc info;mmc read 0 0x82000000 0x800 0x32000;bootm 0x82000000
bootdelay=2
cpu=armv7
ethact=eth0
soc=xxxxxx
stderr=serial
stdin=serial
stdout=serial
vendor=hisilicon
verify=n

Environment size: 495/262140 bytes

   上述环境变量定义在几个文件当中~

1. u-boot-2016.11\include\env_default.h

const uchar default_environment[] = {
	......
	"bootargs="	CONFIG_BOOTARGS			"\0"
	"bootcmd="	CONFIG_BOOTCOMMAND		"\0"
	"ipaddr="	__stringify(CONFIG_IPADDR)	"\0"
	"board="	CONFIG_SYS_BOARD		"\0"
	"cpu="		CONFIG_SYS_CPU			"\0"
	......
};

   由上可见default_environment数组保存着uboot的环境变量, 且并非是直接给出, 而是由宏展开而来. 那么, 这些宏分别定义在哪呢?

2. .config

CONFIG_SYS_ARCH="arm"
CONFIG_SYS_CPU="armv7"
......

   .config是uboot的总配置文件, 在其中获得了一些uboot的默认环境变量;

3. u-boot-2016.11\include\configs\xxxxx.h

#define CONFIG_BOOTARGS	"console=ttyAMA0,115200n8 root=/dev/mtdblock2 rw"
#define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2

   xxxxx.h是特定板子的config文件, 也获得了一些uboot的环境变量.

我们通过修改上面的宏, 即可达到修改uboot的默认环境变量的结果.

发布了68 篇原创文章 · 获赞 22 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/MACMACip/article/details/105051933
今日推荐