更换linux内核的开机启动logo

    xiaoxiao2021-04-15  42

    自定义内核启动logo(找的图片分辨率大小要低于屏幕的大小) (1)sudo apt-get install netpbm  (先让ubuntu上网) (2)pngtopnm logo.png | ppmquant -fs 224 | pnmtoplainpnm > logo_linux_clut224.ppm (3)用制作好的logo_linux_clut224.ppm,替换源码目录 drivers/video/logo/logo_x210_clut224.ppm, 然后重新编译内核 (4)启动新内核,就能看到新的启动logo了。

     

    让logo显示在屏幕中央(通过结构体获得屏幕大小数据) logo居中: 1、设置logo图片在屏幕中的位置 vi drivers/video/fbmem.c 找到"fb_show_logo_line"函数,把 image.dx = 0; image.dy = y; 改为: image.dx  =  (info->var.xres  -  logo->width)  /  2;                //  logo显示的起始坐标x值 image.dy  =  (info->var.yres  -  logo->height)  /  2;                除了可以覆盖原logo的ppm,还可用另一种方法添加新图片logo: 在Makefile中有这么一句:extra-y += $(call logo-cfiles,_clut224,ppm) 它的意思是在当前找到以"_clut224"结尾的ppm图片,然后根据它生成.c文件,所以添加新的图片名可以 类似这样:logo_linux_sullg_clut224.ppm 1.Makefile,加入一行 obj-$(CONFIG_LOGO_LINUX_SULLG_CLUT224)  += logo_linux_sullg_clut224.o 2.Kconfig,加入 config LOGO_LINUX_SULLG_CLUT224     bool "Standard 224-color Linux logo for sullg"     default y 3.logo.c,加入 extern const struct linux_logo logo_linux_sullg_clut224; 在"fb_find_logo"中找到"#ifdef CONFIG_LOGO_LINUX_CLUT224",在其后加入: #ifdef CONFIG_LOGO_LINUX_SULLG_CLUT224         logo = &logo_linux_sullg_clut224; #endif  

    完。

    ——————————————网上收集————————————————————  

    在做嵌入式Linux系统时常常希望能自己制作液晶的启动画面,这里将讲述logo的自定义方法。 linux下一般图片使用PNG格式比较多,这里就以PNG格式为例,不是PNG格式的图片,可以用GIMP转换一下:

    1 安装图片转换工具

    #sudo apt-get install netpdm 首先将png图片转成pnm # pngtopnm logo_linux_clut.png > logo_linux_clut224.pnm 3 然后将pnm图片的颜色数限制在224  # pnmquant 224 logo_linux_clut224.pnm > logo_linux_clut224.pnm 4 最后将pnm图片转换成我们需要的ppm # pnmtoplainpnm logo_linux_clut224.pnm > logo_linux_clut224.ppm

    5 配置内核 make menuconfig

    Device Drivers -> Graphics support ->Logo configuration -> Standard 224-color Linux logo

    6 替换原来的logo 

    把刚才制作好的图片logo_linux_clut224.ppm拷贝到linux内核源码目录

    linux-2.6.12/drivers/video/logo/下,删除原来的logo_linux_clut224.ppm,logo_linux_clut224.c  logo_linux_clut224.o 文件,

    7 重新编译内核

    在内核的根目录下 make zImage 

    具体LOGO的名字可能不一样,大家可以尝试打开源码目录看看(/drivers/video/logo)      
    转载请注明原文地址: https://ju.6miu.com/read-671978.html

    最新回复(0)