Skip to main content

IConfigTool 使用

1. IConfigTool 工具介绍

IConfigTool 是基于 Qt 的 Gui 界面

IConfigTool 不包含 uboot、kernel、buildroot 的相关配置,kernel、bulidroot 的相关配置可通过 menuconfig 配置

IConfigTool 主要用于模块化驱动,无线设备的配置,如

  • 配置mac、gpio、i2c、camera等驱动
  • 添加lcd、camera、bt、wifi、按键、背光等设备

IConfigTool 还可配置一些常用工具及应用,如

  • (出厂)外设测试脚本
  • ota 升级(包括本地升级和网络升级)
  • 人脸应用
  • isp_camera 应用
  • 片上外设的接口/命令(可通过 shell 脚本命令直接对外设进行操作)
  • (根文件系统) rootfs 相关设置,包括 USB/sd_card 的自动挂载,userdata 分区的挂载,adb 服务的开启关闭等

2. IConfigTool 配置流程

1.解压并打开配置工具

IConfigTool 配置工具在"tools/iconfigtool" 目录下,解压后直接运行

bhu@bhu-PC:~/x2000/tools/iconfigtool/IConfigToolApp$ ./IConfigTool 

如果IConfigTool 出现闪退时,删除工具 lib/ 目录下 libQtCore.so.4 与 libQtGui.so.4文件

bhu@bhu-PC:~/x2000/tools/iconfigtool/IConfigToolApp$ ls lib
app.png libaudio.so.2 libffi.so.6 libpcre.so.3 libpng12.so.0 libQtCore.so.4 libQtGui.so.4 libQtUtils.so.1 libXau.so.6 libXdmcp.so.6 libXext.so.6 libXi.so.6 libXrender.so.1 libXt.so.6
bhu@bhu-PC:~/x2000/tools/iconfigtool/IConfigToolApp$ rm lib/libQtGui.so.4 lib/libQtCore.so.4

重新打开 IConfigTool 配置工具

bhu@bhu-PC:~/x2000/tools/iconfigtool/IConfigToolApp$ ls
IConfigTool lib projects.ini
bhu@bhu-PC:~/x2000/tools/iconfigtool/IConfigToolApp$ ./IConfigTool

03

2.选择需要使用的配置文件,这里以 x2000_darwin_factory_defconfig 为例

04

Config.in 是生成配置界面的文件

build/Config.in

Config 是需要修改的配置文件

build/configs/x2000_darwin_factory_defconfig

3.配置实例,以 x2000 efuse 为例

若不知道需要使用的配置的具体路径,可通过 Ctrl+F 打开查找窗口查找相关配置,例如想要使用 efuse,可通过 Ctrl+F 打开查找窗口,输入 efuse,点击 Search 搜索,则可以得到相关路径

05

勾选 efuse 驱动并配置

06

勾选 efuse 的接口命令,完成配置后 Ctrl+S 保存

07

保存后,相应文件内的宏会被选择上,可通过 grep 查看,现在该文件可以用于编译了

08

IConfigTool 配置工具只是改变配置文件的内容,要想配置生效,还需应用配置,即 make 配置文件

4.进入编译目录,重新 make 相关配置,然后编译

bhu@bhu-PC:~/x2000/build$ make x2000_darwin_factory_defconfig 
..writing .config.in
warnings:
warning: .config.in:261:MD_X2000_ICODEC_SPK_GPIO=PB13
忽略不存在的的config: MD_X2000_ICODEC_SPK_GPIO
warning: .config.in:262:MD_X2000_ICODEC_SPK_GPIO_LEVEL=1
忽略不存在的的config: MD_X2000_ICODEC_SPK_GPIO_LEVEL
warning: .config.in:341:APP_libhardware2_gpio_print_cmd=y
忽略不存在的的config: APP_libhardware2_gpio_print_cmd

make[1]: 进入目录“/home/bhu/x2000/build”
arch/mips/configs/x2000_module_base_linux_sfc_nand_defconfig:65:warning: override: reassigning to symbol SOC_X2000
#

# configuration written to .config

#
make[1]: 离开目录“/home/bhu/x2000/build”
make[1]: 进入目录“/home/bhu/x2000/build”
'configs/buildroot/buildroot_x2000_factory_defconfig' -> '/home/bhu/x2000/build/../buildroot/buildroot/.config'
make[1]: 离开目录“/home/bhu/x2000/build”
..writing include/config.h
bhu@bhu-PC:~/x2000/build$ make

5.烧录至开发板后,因为勾选了 efuse 的接口命令,我们可以在命令行使用 efuse 相关命令直接对其操作

# cmd_efuse 

Usage1:cmd_efuse read_size <segment_name>
Example:
cmd_efuse read_size CHIP_ID
Usage2:cmd_efuse read <segment_name>
Example:
cmd_efuse read CHIP_ID
Usage3:cmd_efuse write <segment_name> <start> <size> <data...>
Example:
cmd_efuse write CHIP_ID 0 2 0x10 0x11
Usage4:cmd_efuse print_segment_info
Example:
cmd_efuse print_segment_info
Usage5:cmd_efuse [-h/--help]Example:
cmd_efuse --help

# cmd_efuse read CHIP_ID

8543270ef81b583c8b0a000080298e8a08