RK3288 制作内核开机logo RK3288 制作开机动画

时间:2024-02-29 19:01:14

安装工具

sudo apt-get install netpbm

 

1、制作图片

(1)、图片为bmp格式

$ convert logo.bmp logo.png
$ pngtopnm logo.png > logo.pnm
$ pnmquant 224 logo.pnm > logo224.pnm
$ pnmtoplainpnm logo224.pnm > logo_linux_clut224.ppm

 

(2)、图片为png格式

$ pngtopnm logo.png > logo.pnm
$ pnmquant 224 logo.pnm > logo224.pnm
$ pnmtoplainpnm logo224.pnm > logo_linux_clut224.ppm

 

2、将制作好的 logo_linux_clut224.ppm 复制到 kernel/drivers/video/logo/ 目录,覆盖之前的文件

   编译之前一定要删除 logo_linux_clut224.o 文件,否则会不成功

 

3、修改 kernel/arch/arm/boot/dts/xxx.dts 文件,将 rockchip,uboot-logo-on 修改为 0,1 为uboot显示logo

&fb {
    rockchip,disp-mode = <DUAL>;
    rockchip,uboot-logo-on = <0>;
};

 

4、修改 kernel/arch/arm/configs/rk3288_defconfig 文件

CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y

 

5、编译并烧录系统

 

下面附上本人写的一个制作logo的脚本,放在kernel目录下,执行脚本就自动完成了

#!/bin/bash

# Function: make Android kernel logo
# Author:   AaronLee
# Version:  1.0
# Date:     2018-12-06

file=$1

if [ -z $file ]
then
        echo "error!"
        echo "Please enter the parameter"
        echo "usage: ./mklogo.sh PictureFile"
        exit
fi

if [ "${file##*.}"x != "png"x ]
then
        convert $file logo.png
fi

pngtopnm $file > logo.pnm

pnmquant 224 logo.pnm > logo224.pnm

pnmtoplainpnm logo224.pnm > logo_linux_clut224.ppm

if [ "${file##*.}"x != "png"x ]
then
        rm -rf logo.png
fi

rm -rf logo.pnm logo224.pnm