iMX6ULL-evk开发板本身带有触摸屏接口,为方便调试配套了一块触摸屏,开机启动画面是经典的小企鹅,通常需要定制开机启动画面,比如换成公司logo等。 先准备好要显示的图片,通常可以根据LCD的尺寸来准备,官方标配是480X272的LCD屏,用画图软件准备好一张480X272的图片,保存为logo.png。 内核并不能识别png格式的图片,必须要使用工具将bmp或png格式的图片转换为内核能够识别的图片格式ppm。 安装ppm格式转换工具包netpbm。 sudo apt-get install netpbm 安装完成后就可以使用bmptopnm、ppmquant、pnmtoplainppm这3个命令对logo.png文件进行转换,可以通过下列命令串直接将logo.png转换为内核识别的logo_linux_clut224.ppm文件。 pngtopnm logo.png | ppmquant –fs 224 |pnmtoplainpnm > logo_linux_clut224.ppm 将转换好的文件logo_linux_clut224.ppm拷贝到内核源码目录drivers/video/logo子目录下同名覆盖,内核编译时会logo_linux_clut224.ppm自动将logo_linux_clut224.ppm文件转化为logo_linux_clut224.c文件,所以可以手动删除logo_linux_clut224.c和logo_linux_clut224.o文件后重新编译内核,也可以通过makedistclean自动清除中间文件。 sudo make ARCH=arm CROSS_COMPILE=arm-none-eabi- distclean sudo make ARCH=arm CROSS_COMPILE=arm-none-eabi- imx_v7_defconfig sudo make ARCH=arm CROSS_COMPILE=arm-none-eabi- 编译完成后将arch/arm/boot目录下的zImage文件拷贝到烧写工具对应的目录,再次通过mfgtool烧写内核镜像,重启后的开机画面:
这就是内核启动画面的定制方法,当然u-boot启动也有一个定制画面,2个画面之间如何使用同一图片无缝切换,后边有时间再做尝试。
|