全志uboot阶段修改系统配置使用文档介绍

全志平台资料下载:uboot阶段修改系统配置使用文档介绍,需要相关全志技术资料,可到一牛网论坛

目前在 uboot 中没有提供修改 sys_config.fex 文件的接口,在平时的开发过程中,有时候只需要修改某一个配置,但是往往是需要在自己电脑修改完之后重新打包下载,浪费了很多时间,现在在 uboot 中提供了两个命令可供用户调用的接口,用户只需输入相应的命令,即可对 sys_config.fex 中的信息进行修改并且重新下载到 flash 中。

适用范围
不区分平台,可以在公司芯片的任一平台使用

实现的功能
通过在 uboot shell 输入命令:setcfg mainkey 进行相关主键次键的设置,savecfg 将会对之前修改的内容进行保存。
在 uboot 阶段进入 debug 模式,即通过在 uboot 特定的操作,让其打印切换到 card0,以及将系统的打印等级 loglevel = 8 。

2. 修改系统配置
2.1.修改配置的命令介绍
目前快速修改 sys_config.fex 的命令有:
setcfg mainkey subkey or setcfg mainkey
将修改完之后的 sys_config.fex 进行保存的命令有:savecfg
注:setcfg 只能在当前系统有效,如果没有执行 savecfg,下次启动系统,还是按照原先的系统配置运行。savecfg 这条命令,只有在有修改系统配置的前提下,执行才有效,没有修改的前提,是空操作。


2.2. 用户按键说明
Crtl+c :假设在修改的中途按下,直接退出 sys_config 修改命令,表示当前修改的主键不会保存进内存,但是之前操作的修改主键就已经被保存进当前环境。
Enter : 当没有用户键入值时,默认使用当前值,即跳过不修改;另外也会对用户键入的值进行合法性检测。当需要输入字母时,除了字母,其他一概不接受修改,并且会提醒用户使用合法性键值。
当输入阿拉伯数字的时候,支持十六进制跟十进制输入,十六进制输入的时候有特定格式:0xXXXX,十进制就没有这个要求。


2.3. 2.3. 修改命令示例 修改命令示例
修改系统配置信息,支持修改一下内容:

1111:gpio gpio gpio gpio 配置;
Sys_config.fex 中 gpio 口的表现形式示例:
twi_sda = port:PH15<2>
示例:

sunxi#setcfg twi_para twi_sda
--twi_para-- //主键名
twi_sda : //次键名
======================================
PORT : H?a //表示使用 PH gpio,用户修改为 a 端口,字母输入大小写都支持
PORT_NUM :15?11 //端口号由 15 改为 11
MUL_SEL :2?2 //选择功能端口
PULL :-1?1 //default 默认为-1,需要修改的时候可以键入
DRV_LEVEL :-1?1 //驱动能力
DATA :-1?1 //输出数据端口
====================================
 

2:字符串配置;
Sys_config.fex 中字符串的配置示例:
pa_bias = "axp809:dcdc1:3000"

示例:
sunxi#setcfg gpio_bias pa_bias //输入命令
--gpio_bias-- //主键名
pa_bias : axp809:dcdc1:3000 //次键名以及次键名的内容
?axp806:dcdc2:3000 //用户输入的字符串

注:用户输入的字符串有以下约定,
1:用户输出字符串的长度不可大于原来字符串的长度((lenth>>2)<<2+1)*4(四个字节对齐)当超过原来字符串长度的时候,将不会修改原来字符串的内容。

3333:数字配置;
Sys_config.fex 中数值的配置示例:
logical_start = 40960
示例:

sunxi#setcfg card_boot logical_start //输入命令
--card_boot-- //主键名
logical_start : 40960?40960 //次键名,当前值以及用户输入要修改的值

3. 保存系统配置
在串口输入端数据 savecfg 之后,假设用户之前有对配置进行修改,那么就会将配置信息重新下载进 flash 中。

sunxi#savecfg
uboot size = 0xb4000
storage type = 0
uboot:physical version: 0 0 20140325 1840
NAND_PIORequest, nand_index: 0x0
Reg 0x06000848: 0x22222222
Reg 0x0600084c: 0x22222222
Reg 0x06000850: 0x7222
Reg 0x06000864: 0x5140
Reg 0x06000868: 0x14
Reg 0x06000b08: 0xa
nand : get id_number_ctl fail, 1
uboot:nand info: eb94dead ffffff74 318c 30708 4
burn uboot normal mode!
pages_per_block: 0x100
pages_per_copy: 0x2d
uboot 2
fill uboot block with dummy data
uboot 3
fill uboot block with dummy data
uboot 4
fill uboot block with dummy data
uboot 5
fill uboot block with dummy data
uboot 6
fill uboot block with dummy data
verify uboot blk 2
verify uboot blk 3
verify uboot blk 4
verify uboot blk 5
verify uboot blk 6
uboot nand_request_dma: current platform do not support general dma!

资料下载:

你可能感兴趣的:(全志uboot阶段修改系统配置使用文档介绍)