android下设置uboot环境变量
来源:互联网 发布:2017编程前景 知乎 编辑:程序博客网 时间:2024/05/21 06:54
一、Uboot环境变量简介
1.Uboot环境变量的作用
在不改变源码、不用重新编译的情况下,可以使我们通过设置环境变量的值来改变uboot的一些设置,如bootdelay时间、机器码的值等等。
2.常用的Uboot环境变量
二、Uboot下环境变量设置
在机器启动到uboot阶段时,使其暂停
printenv //打印环境变量
setenv //设置环境变量
saveenv //保存环境变量
reset
Uboot环境变量的设计逻辑是在启动过程中将env从静态存储器中读出放到RAM中,之后在uboot下对env的操作(如printenv editenv setenv)都是对RAM中env的操作,只有在执行saveenv时才会将RAM中的env重新写入静态存储器中。
这种设计逻辑可以加快对env的读写速度。
三、android下环境变量设置
1.交叉编译环境搭建
下载arm-fsl-linux-gcc-4.4.3.tar.gz
安装到根目录下/usr/local/
- tar vxzf arm-fsl-linux-gcc-4.4.3.tar.gz(压缩包请对应目标板系统)
修改环境变量
sudo gedit /etc/bash.bashrc
添加export PATH=$PATH:/usr/local/arm/3.4.1/bin
source /etc/bash.bashrc
echo $PATH
arm-linux-gcc -v
2.fw_env.config写env信息
信息包括:
Device offset
Env_size
Flash sector size
在uboot-imx/include/configs/中查找
3.在ubuntu14.04 上编译生成fw_printenv
(1)在/uboot-imx/目录下编译make env 在/uboot-imx/tools/env/目录下生成fw_printenv
(2)mount –rw –o remount /system
(3)拷贝fw_env.config到目标机/etc目录下
(3)拷贝fw_printenv到目标机文件系统/system/bin中,
(4)并通过”ln -s fw_printenv fw_setenv”,创建一个fw_setenv到fw_printenv的软链。
(5)执行fw_printenv即可打印uboot环境变量信息