您的位置:首页 > 运维架构 > Linux

更换linux内核的开机启动logo

2017-04-14 09:40 417 查看
自定义内核启动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

2 首先将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)

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: