lishiqi

lishiqi

0个粉丝

19

问答

0

专栏

0

资料

lishiqi  发布于  2019-07-30 11:51:13
采纳率 0%
19个问答
2093

3519访问和修改u-boot的环境变量bootargs,bootcmd,移植fw_printenv


1.在u-boot源码下编译fw_printenv工具:

make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- hi3519v101_config
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux-
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- env

编译会出现问题:只需进入u-boot目录

vi include/linux/types.h

//typedef u_int32_t                  uintmax_t; //154

//typedef int32_t                    intmax_t; //155

因为在arm-hisiv300-linux/target/usr/include/stdint.h 已经定义过了

2.安装fw_printenv工具
到/tools/env目录中,将编译好的fw_printenv拷贝到目标机的文件系统中,并通过"ln -s fw_printenv fw_setenv",创建一个fw_setenv到fw_printenv的软链。

3.配置fw_env.config文件
    根据mtd分区、UBOOT环境变量的位置、大小等内容修改uboot源码目录的tools/env下的fw_env.config文件,具体的修改方法见fw_env.config文件中的说明及/tools/env/README文件,我的修改内容如下作为参考(需根据实际情况来修改):
# MTD device name        Device offset        Env. size        Flash sector size        Number of sectors
#/dev/mtd1                0x0000                0x4000                0x4000
#/dev/mtd2                0x0000                0x4000                0x4000

# NAND example
/dev/mtd0                0x80000                0x40000                0x40000                       
其中Device offset,Env size和Flash sector size应该分别对应于uboot源码目录中include/configs/xxxx.h相关文件中的
CONFIG_ENV_OFFSET,CONFIG_ENV_SIZE和CONFIG_ENV_SECT_SIZE三个宏定义

4.fw_printenv的使用
    在文件系统中输入fw_printenv命令来查看环境变量,输入fw_setenv xxx yyy 来修改环境变量(xxx为变量名,yyy为变零值),方法类似setenv,修改后会自动保存。例如:
fw_setenv bootargs 'mem=256M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 rw mtdparts=hi_sfc:1M(boot),3M(kernel),12M(rootfs)'
fw_setenv bootcmd 'sf probe 0;sf read 0x82000000 0x100000 0x300000;bootm 0x82000000'

5.修改load3519v101,系统内存要和上面的一致
os_mem_size=256;             # 64M, os mem  


我来回答
回答0个
时间排序
认可量排序
易百纳技术社区暂无数据
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区