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

[Linux驱动开发] LCD驱动之自定义启动Logo

2012-03-14 19:29 281 查看
记得之前所在的公司是生产DV数码摄像机的,当产品在开发调试阶段的时候,因为试产的机台有限,各部门RD(包括:HW、SW、ME、OE等)经常互相拆借机台做验证调试用,搞到最后机台总是扯来扯去搞不清楚谁拿了谁的机台,最后SW的想了个办法就是将自己的照片烧录到机台中,这样一开机就知道是谁的机台了,之前觉得SW很厉害,今天我也能做到啦,步骤如下:

1>通过ACDSEE或者小画家,将你准备用于开机启动的图片的大小调整到合适尺寸(我们实验是240x320)。

在这里我们使用的是小画家,用小画家打开图片:-->图像-->宽度(W)240 高度(H)320 -->确定



2>在这里需要使用GIMP这个软件生成符合Linux要求的PPM图片文件

启动GIMP2à打开我们刚刚用小画家调整好大小的图片的-->

通过菜单 图像à模式à索引设置图形索引最大颜色数为:224,



点击-->文件-->另存为-->选择文件类型(按扩展名),分别将图片另存为.c 和.ppm格式的文件

保存为.c 格式



保存为PPM格式



同时保存为ASCII数据格式



3>在内核中添加一项我们的图片选项

将保存的spring.ppm和spring.c复制到driver/video/logo下,重命名为logo_spring_clut224.ppm 和 logo_spring_clut224.c,并且修改它们的权限.



4>修改此目录下的Makefile和Kconfig和logo.c.

在Makefile中添加:

obj-$(CONFIG_LOGO_SPRING_CLUT224) += logo_spring_clut224.o

Kconfig中添加:

config LOGO_SPRING_CLUT224

bool "Spring logo"

depends on LOGO

default n

logo.c中添加:

extern const struct linux_logo logo_spring_clut224;

在if(depth >= 8)中添加:

#ifdef CONFIG_LOGO_SPRING_CLUT224

/*Spring Logo*/

logo= &logo_spring_clut224;

#endif

在系统文件目录下,即/home/Linux-2.6.22.6 中,执行:make menuconfig

进入Linux Kernel Configuration菜单中:



Device Drivers --> Graphics support --> [*]S3C2410 LCD frambuffer support & Bootup logo --> [*]Spring logo

重新配置内核:make uImage

5>重新编译并加载内核,开机就可以看到我们想要的Logo了!


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