# pngtopnm logo_linux_clut224.png >logo_linux_clut224.pnm
# pnmquant 224 logo_linux_clut224.pnm >logo_linux_clut224.pnm
# pnmtoplainpnm logo_linux_clut224.pnm >logo_linux_clut224.ppm
ppm图片替代/drivers/video/logo/logo_linux_clut224.ppm
重新编译内核即可
imx5开机logo的制作方法:
1.图片格式为.png的图片,若不是则要利用图片处理工具将其转换成.png格式的图片。
2.图片的大小不能大于等于机器的长宽,否则开机时不会出现logo,由于图片的尺寸要比机器的小,所以建议用白色背景的logo
3.mid中logo的格式制作:(在图片的所在目录下进行制作)
以linuxlogo.png图片为例:
#pngtopnm linuxlogo.png > linuxlogo.pnm
# pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm
# pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm
4.将linuxlogo224.ppm重命名为:logo_linux_clut224.ppm,然后到drivers/video/logo目录下,先备份原来的logo_linux_clut224.ppm,然后将新生成的logo_linux_clut224.ppm拷到该目录下。
5.重新编译后烧到机器中开机就可以看到想要的logo 了
注:700的logo名为logo_linux_clut224.ppm,700的logo命名为:logo_sgi_clut224.ppm
logo突破大小的限制:
drivers/Video/consle/fbcon.c中的函数
static void fbcon_prepare_logo(struct vc_data *vc, struct fb_info *info, int cols, int rows, int new_cols, int new_rows)中的一些代码注释
/*if (logo_lines > vc->vc_bottom) {//注析后可使logo的大小为1024*600
logo_shown = FBCON_LOGO_CANSHOW;
printk(KERN_INFO
"fbcon_init: disable boot-logo (boot-logo bigger than screen).\n");
printk("-0---------------------------------------------------fbcon_init: disable boot-logo (boot-logo bigger than screen).logo_lines=====%d;vc->vc_bottom=%d\n",logo_lines,vc->vc_bottom);
} else */if (logo_shown != FBCON_LOGO_DONTSHOW) {
logo_shown = FBCON_LOGO_DRAW;
vc->vc_top = logo_lines;
printk("-0---------------------------------------------------fbcon_init: disable boot-logo(l ogo_lines).logo_lines=====%d;vc->vc_bottom=%d\n",logo_lines,vc->vc_bottom);
} 7-13
开机logo居中的修改方法:
在drivers/video/fbmem.c中的fb_show_logo_line()函数中将image.dx = 0; image.dy = y;改为如下即可
// image.dx = 0;
// image.dy = y;
image.dx=(info->var.xres/2)-(logo->width/2);
image.dy=(info->var.yres/2)-(logo->height/2);