Image Q&A

Q:如何实现一个image兼容多个屏参?

(针对spi panel考虑)

目前屏参部分是在config.ini中配置的.

当前设计中有两个地方会load config.ini,一个是uboot bootlogo, 一个是insmod mi_sys.ko.

当我们需要一个image来兼容多个屏参时,建议针对每个屏参添加一个对应的config.ini,通过读取panel中的panel ID,来决定导入哪个屏参。

  1. uboot bootlogo需要实现的地方

  2. insmod mi_sys.ko新引入一个环境变量,实现了对开机时是否load config.ini进行了控制。

    默认情况下,在开机时会在insmod mi_sys.koload 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,然后运行显示相关程序,是能正常运行的。