Image Q&A
Q:如何实现一个image兼容多个屏参?
(针对spi panel考虑)
目前屏参部分是在config.ini
中配置的.
当前设计中有两个地方会load config.ini
,一个是uboot bootlogo, 一个是insmod mi_sys.ko
.
当我们需要一个image来兼容多个屏参时,建议针对每个屏参添加一个对应的config.ini,通过读取panel中的panel ID,来决定导入哪个屏参。
-
uboot bootlogo需要实现的地方
-
在
insmod mi_sys.ko
新引入一个环境变量,实现了对开机时是否load config.ini
进行了控制。默认情况下,在开机时会在
insmod mi_sys.ko
时load config.ini
, 但是可以在insmod mi_sys.ko
后面加上参数 bUseConfig_tool来对是否load config.ini
进行控制。如果
insmod mi_sys.ko bUseConfig_tool=0
,则在insmod mi_sys.ko
的时候不会load config.ini
;如果
insmod mi_sys.ko bUseConfig_tool=1
或者不加bUseConfig_tool,则insmod mi_sys.ko
的时候会去load config.ini
.兼容多个屏参需要用户在应用程序内加载.ini文件。
加载.ini文件的时候靠的是/config/config_tool这个二进制文件,可以在开机脚本里通过运行程序获取到panel id,然后根据panel id用/config/config_tool解析具体的.ini文件。
这个方式可以实验的,把板子中的所有config.ini删掉,重启板子,运行显示相关程序,会运行不了,因为没有加载.ini文件。然后进入/config目录,运行
./load_config config.ini PQconfig.ini
,然后运行显示相关程序,是能正常运行的。