【海思内核驱动篇】-(5)env工具

xclshwd 2020-08-30 15:59:35 3566
【海思内核驱动篇】-(5)env工具

env是和uboot一个分区,并且是通过设定偏移量保存的,所以有时候可以上层需要保存env变量来通知uboot事件,比如上层升级事件来显示logo等。

1 宏定义

我们知道海思uboot头文件里面保存有默认的环境变量。并且有如下定义:

include\configs\hi3519av100.h
/*allow change env*/
#define  CONFIG_ENV_OVERWRITE

#define CONFIG_COMMAND_HISTORY

/* env in flash instead of CFG_ENV_IS_NOWHERE */
#define CONFIG_ENV_OFFSET       0x80000      /* environment starts here */

#define CONFIG_ENV_SIZE         0x40000
#define CONFIG_ENV_SECT_SIZE        0x10000
#define CONFIG_ENV_VARS_UBOOT_CONFIG

从CONFIG_ENV_OFFSET偏移量可以是在uboot分区,偏移CONFIG_ENV_OFFSET开始写入的,也就是说uboot大小不能操作这个偏移量(512K).

2 默认环境变量

include\env_default.h中default_environment定义

3 fw_setenv工具

直接在uboot下编译即可:源码:tools\env\

在u-boot-2016.11根目录下:

make ARCH=arm CROSS_COMPILE=arm-himix200-linux- env

fw_env.config配置如下:

/etc # cat fw_env.config 
# Configuration file for fw_(printenv/saveenv) utility.
# Up to two entries are valid, in this case the redundant
# environment sector is assumed present.
# Notice, that the "Number of sectors" is ignored on NOR.

# 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              0x4000          0x4000          0x20000                 2
char cmdStr[128] = {0};
sprintf(cmdStr,"/usr/bin/fw_setenv %s %s","flag", "hi_flag=1");
system(cmdStr);
声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
xclshwd
红包 1 1 评论 打赏
评论
0个
内容存在敏感词
手气红包
    易百纳技术社区暂无数据
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
xclshwd
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

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

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区