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

Linux内核开发-修改开机Logo

2011-08-30 10:34 288 查看
硬件平台:S5PV210

系统平台:Linux 2.6.32

        Linux默认的系统开机Logo为一只小企鹅,分辨率为80x80,由drivers/video/logo/logo_linux_clut224.ppm生成。

        这里我们需要修改开机logo图,而且不局限在80x80分辨率,如我们需要一副全屏的图时,我们可以用以下方法达成。

        一、制作开机适当分辨率的ppm图片。

               1.安装netpbm包,我们需要制作ppm的工具:pngtopnm ,pnmquant ,pnmtoplainpnm

               2.装备一张适合LCD分辨率的png格式图片,如一张800x480,24bit的png图。

               3.将png图片转成pnm

                     pngtopnm linux_iunin_logo.png > linux_iunin_logo.pnm

               4.将pnm图片的颜色数限制在224色

                    pnmquant 224 linux_iunin_logo.pnm > logo_iunin_clut224.pnm

               5.将pnm图片转换成我们需要的ppm

                    pnmtoplainpnm logo_iunin_clut224.pnm > logo_iunin_clut224.ppm

               6.将logo_iunin_clut224.ppm移至drivers/video/logo目录。

         二、在Kconfig中增加选项

                 drivers/video/logo/Kconfig

config LOGO_UM2703_CLUT224

    bool "224-color IUNIN Android logo"

    depends on IUNIN

    default y

         三、在Makefile中增加选项

obj-$(CONFIG_LOGO_IUNIN_CLUT224)    += logo_iunin_clut224.o

         四、在linux_logo.h中增加项:

                 include/linux/linux_logo.h

                增加:extern const struct linux_logo logo_iunin_clut224;

         五、在logo.c中增加项:

                 #ifdef CONFIG_LOGO_IUNIN_CLUT224

                       /* iunin Android logo */

                      logo = &logo_iunin_clut224;

                 #endif

          六、重新运行make menuconfig,选择224-color IUNIN Android logo项,重新编译kernel。

               经以上步骤,完成开机logo修改。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息