我正在使用运行Arago项目的自定义davinci板。我正在使用模拟视频输出(PAL),尽管OLED显示屏通过uboot开机,但直到内核完成加载后,才能显示任何图像。我想在uboot启动并显示电源后立即显示徽标。我尝试添加
#define CONFIG_SPLASH_SCREEN
在uboot配置文件中,但这不起作用。
我可以想到的一种方法是将图像放入NAND存储器,然后使用
setenv splashimage <address>
 命令在uboot期间显示它。但是问题是,我不知道如何将图像放入特定地址的NAND存储器中。
也欢迎使用其他方法。
谢谢!

最佳答案

CONFIG_SPLASH_SCREEN仅告诉U-Boot包含支持初始屏幕所需的代码。它对如何显示初始屏幕或在何处找到它一无所知。它仅为您提供有用的功能以实现该目标。

无需将映像放在NAND中的特定地址。如果您的U-Boot可以访问文件系统,则可以将映像保存在文件中。如果愿意,您也可以将图像嵌入U-Boot图像中。这完全取决于您。 CONFIG_SPLASH_SCREEN包含的功能将帮助您从任意数量的来源加载图像。

窍门在于显示它。您需要对U-Boot进行足够的图形硬件教学,以获取图像。在大多数SoC上,只需设置帧缓冲器,将图像加载到其中,并告诉硬件开始将其移出时钟即可。

看起来好像没有人为DM365编写了帧缓冲驱动程序,所以您必须自己做。或者,可以在邮件列表中询问是否有人完成了该工作,但尚未将其退回。如果您必须自己做这项工作,那么从Linux驱动程序开始并仅移植所需的位可能是最简单的。

09-27 22:27