UBOOT中环境变量的类别
来源:互联网 发布:日本人的气质 知乎 编辑:程序博客网 时间:2024/05/24 00:10
调试UBOOT时,想增加一个环境变量ipaddr,这个环境变量是uboot中默认支持的一个环境变量,当增加一个内容如下
#define CONFIG_IPADDR “192.168.1.2”
"ipaddr=" CONFIG_IPADDR "\0" \
UBOOT启动后,解析环境变量时,提示如下错误信息
## Error: flags type check failure for "ipaddr" <= ""192.168.1.2"" (type: i)
himport_r: can't insert "ipaddr="192.168.1.2"" into hash table
分析uboot代码发现,uboot会对一些特殊的环境变量进行合法性校验。比如ipaddr,uboot认为这是一个网络地址的环境变量,会进按照网络地址进行合法性校验,而不是当成字符串校验。
#define NET_FLAGS \
"ipaddr:i," \
"gatewayip:i," \
"netmask:i," \
"serverip:i," \
"nvlan:i," \
"vlan:i," \
"dnsip:i,"
_env_flags_validate_type()函数进行校验时,发现ipaddr的值是一个字符串,认为法非法。
改为如下形式可以校验通过
#define CONFIG_IPADDR 192.168.1.2
"ipaddr=" __stringify(CONFIG_IPADDR) "\0" \
环境变量的类型有一下几种,每种类型的合法性校验时不一样,使用时需要注意
enum env_flags_vartype {
env_flags_vartype_string,
env_flags_vartype_decimal,
env_flags_vartype_hex,
env_flags_vartype_bool,
env_flags_vartype_ipaddr,
env_flags_vartype_macaddr,
env_flags_vartype_end
};
阅读全文
0 0
- UBOOT中环境变量的类别
- uboot环境变量的讲解
- uboot - 环境变量的同步
- uboot的环境变量
- uboot常用的环境变量
- uboot的环境变量
- UBOOT的环境变量
- uboot的环境变量操作
- uboot环境变量的讲解
- 5.uboot的常用环境变量
- uboot中printenv环境变量参数解释
- uboot 环境变量
- uboot环境变量
- uboot环境变量
- uboot环境变量
- uboot环境变量
- uboot环境变量
- uboot环境变量
- 【ORACLE】物化视图快速刷新限制条件
- FlatList的点击Demo
- Android进阶-Android动画机制与使用技巧
- LC-selfDividingNumber
- python常用collections lib介绍
- UBOOT中环境变量的类别
- 卷积核问题
- docker attch退出
- iview
- Eclipse中web项目部署至Tomcat步骤【整理】
- visio怎么保存为图片?
- Android 半边圆角ImageView
- CString与char之间的转换
- Oracle Exception:missing right parenthesis