广告网站建设实训报告,镇江本地网站,郴州建设信息网站,安徽省住房和城乡建设厅官网证件查询默认开机LOGO会在液晶屏的左上脚显示一只小企鹅#xff0c;分辨率为80*80#xff0c;具体在kernel/drivers/video/logo下会有logo_linux_clut224.ppm这幅图像#xff0c;程序会根据这幅图像生成logo_linux_clut224.c和
logo_linux_clut224.o两个文件#xff0c;最终将小企…默认开机LOGO会在液晶屏的左上脚显示一只小企鹅分辨率为80*80具体在kernel/drivers/video/logo下会有logo_linux_clut224.ppm这幅图像程序会根据这幅图像生成logo_linux_clut224.c和
logo_linux_clut224.o两个文件最终将小企鹅显示在液晶屏上。 这里我们需要修改开机画面而且不限于仅显示80*80如我们需要显示一幅铺满LCD屏的图像该怎么办呢 为了以后还能恢复显示这个小企鹅这里我们另外再添加一组数据用于显示全屏如果以后不用恢复了方法更简单 一制作LCD分辨率的PPM图像
二将制作的PPM图像命名为logo_linux_clut224.ppm
三删除kernel/drivers/video/logo下的logo_linux_clut224.c和 logo_linux_clut224.o两个文件
四重新make生成新的内核映像。 这里讲解我们新添加一组数据实现开机LOGO的方法 第一步在kernel/drivers/video/logo的Kconfig中添加配置文件 #lqm added for xgd bootup logo. config LOGO_XGDLINUX_CLUT224 bool XGD 224-color Linux logo default y #end added. 第二步make menuconfig 这时在Bootup logo一栏就会多一个XGD 224-color Linux logo配置选项供选择。取消所有其它LOGO选项选中XGD 224-color Linux logo退出
第三步确定所要修改的LOGO的分辨率先找到一张喜爱的图片将该图片裁剪成自己需要的分辨率分辨率不能超过LCD分辨率允许小但绝不允许大。
第七步将上面制作的图片重命名为logo_xgdlinux_clut224.ppm并放在/kernel/drivers/video/logo目录下。确保该目录下没有 logo_xgdlinux_clut224.c和logo_xgdlinux_clut224.o两个文件如果有就删掉。 第八步修改kernel/drivers/video/logo下的logo.c文件 // lqm added for G300. #ifdef CONFIG_LOGO_XGDLINUX_CLUT224 logo logo_xgdlinux_clut224; #endif // end added.
第九步修改kernel/include/linux/linux_logo.h文件 extern const struct linux_logo logo_xgdlinux_clut224;// lqm added for G300
第十步修改kernel/drivers/video/logo下的makefile文件 obj-$(CONFIG_LOGO_XGDLINUX_CLUT224) logo_xgdlinux_clut224.o #lqm added
第十一步make生成新的kernel映像
经以上步骤完成自己定义的LOGO图像修改。 创建logo图片
1、内核默认的logo图片为drivers/video/logo/logo_linux_clut224.ppm
file logo_linux_clut224.ppm
先得到图片的大小然后再用gimp等工具创建一个同样大小的png图片
2、把自己创建的png图片转换为只有224色的ppm图片
pngtopnm logo.png | ppmquant -fs 224 | pnmtoplainpnm logo_linux_clut224.ppm
如果没有以上的转换命令请安装netpbm工具包
3、覆盖原来的logo_linux_clut224.ppm文件若有logo_linux_clut224.o和logo_linux_clut224.c文件则删除
内核配置
Device Drivers - Graphics Support - [*] Support for frame buffer devices [*] VESA VGA graphics support Console display driver support - [*] Video mode selection support [*] Framebuffer Console support [*]Select compiled-in fonts [*]VGA 8x16 font Logo configuration- [*]Bootup logo [*] Standard 224-color Linux logo
重新编译内核 4.logo居中
1、设置logo图片在屏幕中的位置
vi drivers/video/fbmem.c
找到fb_show_logo_line函数把
image.dx 0;
image.dy y;
改为
image.dx (info-var.xres/2) - (610/2);
image.dy (info-var.yres/2) - (206/2);
[注]
info-var.xres和info-var.yres是分辨率大小
610和206是logo图片的大小
2、
vi drivers/video/console/fbcon.c
找到fbcon_prepare_logo函数在
logo_height fb_prepare_logo(info, ops-rotate);
后面加上
logo_height (info-var.yres/2) - (206/2); 5.添加新图片:
在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