打印
[i.MX]

开机初始画面图片变更

[复制链接]
5425|27
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
swimchang|  楼主 | 2013-12-20 14:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
您好..我想要更改开机画面(将企鹅换掉)
我照个这个网页所提供的方法,未能顺利将初始画面修改成功
http://www.it165.net/embed/html/201301/2205.html

2.1使用netpbm包来进行转换

   RHEL5已经安装这几种工具。它自带了 netpbm-10.35-6.fc6 假设你的是png数据分别按如下步骤

pngtopnm huisen-**-linux.png > huisen-**-linux.pnm         #转换png成pnm格式

pnmquant 224 huisen-**-linux.pnm > huisen-**-linux224.pnm       #转换像素数为224

pnmtoplainpnm huisen-**-linux224.pnm > **_linux_clut224.ppm    #转换二进制的pnm格式为文本的ppm格式.

cp  **_m32r_clut224.ppm linux-2.6.28.6/drivers/video/**/**_linux_clut224.ppm

rm -f linux-2.6.28.6/drivers/video/**/**_linux_clut224.c


我看了原始码,不能够理解const struct linux_** * __init_refok fb_find_**(int depth) 里的 depth 是怎么传入的,再来就是i.mx系列所使用的是" **_linux_vga16"or “**_linux_clut224"????
* modpost that it is intended that this function uses data
* marked __initdata.
*/
const struct linux_** * __init_refok fb_find_**(int depth)
{
        const struct linux_** *** = NULL;

        if (no**)
                return NULL;

        if (depth >= 1) {
#ifdef CONFIG_**_LINUX_MONO
                /* Generic Linux ** */
                ** = &**_linux_mono;
#endif
#ifdef CONFIG_**_SUPERH_MONO
                /* SuperH Linux ** */
                ** = &**_superh_mono;
#endif
        }

        if (depth >= 4) {
#ifdef CONFIG_**_LINUX_VGA16
                /* Generic Linux ** */
                ** = &**_linux_vga16;
#endif
#ifdef CONFIG_**_BLACKFIN_VGA16
                /* Blackfin processor ** */
                ** = &**_blackfin_vga16;
#endif
#ifdef CONFIG_**_SUPERH_VGA16
                /* SuperH Linux ** */
                ** = &**_superh_vga16;
#endif

       if (depth >= 8) {
#ifdef CONFIG_**_LINUX_CLUT224
                /* Generic Linux ** */
                ** = &**_linux_clut224;
#endif
#ifdef CONFIG_**_BLACKFIN_CLUT224
                /* Blackfin Linux ** */
                ** = &**_blackfin_clut224;
#endif
#ifdef CONFIG_**_DEC_CLUT224
                /* DEC Linux ** on MIPS/MIPS64 or ALPHA */
                ** = &**_dec_clut224;
#endif
#ifdef CONFIG_**_MAC_CLUT224
                /* Macintosh Linux ** on m68k */
                if (MACH_IS_MAC)
                        ** = &**_mac_clut224;
#endif
#ifdef CONFIG_**_PARISC_CLUT224
                /* PA-RISC Linux ** */
                ** = &**_parisc_clut224;
#endif
#ifdef CONFIG_**_SGI_CLUT224
                /* SGI Linux ** on MIPS/MIPS64 and VISWS */
                ** = &**_sgi_clut224;
#endif
#ifdef CONFIG_**_SUN_CLUT224
                /* Sun Linux ** */
                ** = &**_sun_clut224;
#endif
#ifdef CONFIG_**_SUPERH_CLUT224
                /* SuperH Linux ** */
                ** = &**_superh_clut224;
#endif


相关帖子

沙发
FSL_TICS_imx| | 2013-12-20 16:58 | 只看该作者
楼主你好,你是想更改u-boot启动画面是么?

使用特权

评论回复
板凳
FSL_TICS_imx| | 2013-12-20 17:37 | 只看该作者
本帖最后由 FSL_TICS_imx 于 2013-12-20 17:42 编辑

楼主你好,请问您用的是i.MX的哪块板子?如果你是想要换u-boot启动画面你可以参考本论坛中i.MX产品使用中常见问题1以及飞思卡尔英文论坛的一个问题,链接为:https://community.freescale.com/message/254449#254449

使用特权

评论回复
地板
swimchang|  楼主 | 2013-12-20 19:37 | 只看该作者
本帖最后由 swimchang 于 2013-12-20 19:46 编辑
FSL_TICS_imx 发表于 2013-12-20 17:37
楼主你好,请问您用的是i.MX的哪块板子?如果你是想要换u-boot启动画面你可以参考本论坛中i.MX产品使用中常 ...

您好,我并非使用 u-boot开机, 我使用SD卡开机 ..
两者 是不是有所不同 ??

補充,板子 i.mx283

使用特权

评论回复
5
黄小俊| | 2013-12-20 19:44 | 只看该作者

使用特权

评论回复
6
swimchang|  楼主 | 2013-12-20 19:48 | 只看该作者
黄小俊 发表于 2013-12-20 19:44

使用特权

评论回复
7
rockos| | 2013-12-22 11:24 | 只看该作者
小case: 如何修改Linux的启动**

Linux的启动**已经在Linux内核中存在, 但并不是Linux开发社区的"官方"**, 任何使用Linux的, 都可以把这个启动**改成自己喜欢的图片. 本文给大家提供修改Linux启动**的方法.

1. 启动**具体是哪个文件

Linux的启动**是个文本格式的图片文件, 具体位于.../drivers/video/**/目录下, 对于常用的TFT屏, 一般是.../drivers/video/**/**_linux_clut224.pbm文件, 通过替换这个文件, 不用修改代码就可以把自己的图片作为启动**.


2. 如何从一般的图片(BMP, JPG等)生成Linux **图片文件

1> 从网上下载gimp for windows软件包, 安装

2> 使用gimp将图片文件转换成PNM或PPM格式的, 转换后, 通常会变为256色

3> 把生成的PNM或PPM格式图片复制到Linux下, 假设文件名为my**.ppm

4> 使用pnmquant命令, 把my**.ppm转换成224位色:
   [sunxq@sunxq-fc10 ~$]pnmquant 224 my**.ppm > my**ppm.ppm
   结束后, 得到224位色的图片文件my**ppm.ppm, 但它是二进制格式的. 而Linux内核自带的解析工具只能识别文本格式的PPM图像文件.
   如果没有pnmquant命令,说明系统中缺乏netpbm工具包,需要安装一下,以Fedora 10为例,rpm的安装方法是:
        [root@sunxq-fc10 ~]# mount -t iso9660 /dev/sr0 /media && cd /media/Packages
        [root@sunxq-fc10 Packages]# rpm -i netpbm-10.35.54-1.fc10.i386.rpm
        [root@sunxq-fc10 Packages]# rpm -i netpbm-progs-10.35.54-1.fc10.i386.rpm
   当然也可以从netpbm的站点下载源码安装。

5> 把224色的二进制ppm转换成文本格式的ppm画面, 还是在windows下使用gimp, 假设保存为my**ppm-asc.ppm.

6> 用my**ppm-asc.ppm文件替换Linux内核的.../drivers/video/**/**_linux_clut224.ppm即可

使用特权

评论回复
8
FSL_TICS_imx| | 2013-12-23 10:00 | 只看该作者
swimchang 发表于 2013-12-20 19:37
您好,我并非使用 u-boot开机, 我使用SD卡开机 ..
两者 是不是有所不同 ??

楼主您好,从SD卡启动,首先启动的是u-boot,然后是内核,所以开机的显示界面是在u-boot启动时候显示。u-boot是在SD卡中的~~

使用特权

评论回复
9
FSL_TICS_imx| | 2013-12-23 15:26 | 只看该作者
楼主你好,请问您的问题解决了么?

使用特权

评论回复
10
swimchang|  楼主 | 2013-12-23 16:07 | 只看该作者
FSL_TICS_imx 发表于 2013-12-23 15:26
楼主你好,请问您的问题解决了么?

您好,可否說明"bin2txt.py转换"此軟體如何使用,謝謝!!

(2)   将该图片转换成.c文件,通过软件bin2txt.py转换

使用特权

评论回复
11
swimchang|  楼主 | 2013-12-23 16:08 | 只看该作者
rockos 发表于 2013-12-22 11:24
小case: 如何修改Linux的启动**

Linux的启动**已经在Linux内核中存在, 但并不是Linux开发社区的"官方" ...

您好,我嘗試過您的方法了!!
問題未能如願解決,謝謝!!!

使用特权

评论回复
12
FSL_TICS_imx| | 2013-12-23 18:21 | 只看该作者
swimchang 发表于 2013-12-23 16:07
您好,可否說明"bin2txt.py转换"此軟體如何使用,謝謝!!

(2)   将该图片转换成.c文件,通过软件bin2tx ...

楼主你好,附件为bin2txt.py软件,你可以通过运行:
    print 'Usage:\n'
    print '        python bin2txt.pyw <filename>'
    print ' <filename> - Contain the data.'
    print ' The output file will be filename.data.'

这个你在打开bin2txt.pyw中可以看到~~
将生成的数据拷贝到fsl_bmp_600x400.c,保存,  运行./ltib
bin2txt.pyw.zip (1.91 KB)

使用特权

评论回复
13
FSL_TICS_imx| | 2013-12-25 09:22 | 只看该作者
楼主,你好,请问您的问题解决了么?

使用特权

评论回复
14
FSL_TICS_Rita| | 2013-12-26 10:23 | 只看该作者
楼主您好,可以分享一下您的解决方法么?这样方便大家学习~~非常感谢

使用特权

评论回复
15
swimchang|  楼主 | 2013-12-30 14:41 | 只看该作者
FSL_TICS_Rita 发表于 2013-12-26 10:23
楼主您好,可以分享一下您的解决方法么?这样方便大家学习~~非常感谢 ...

http://www.it165.net/embed/html/201301/2205.html

pngtopnm huisen-**-linux.png > huisen-**-linux.pnm         #转换png成pnm格式
pnmquant 224 huisen-**-linux.pnm > huisen-**-linux224.pnm       #转换像素数为224
pnmtoplainpnm huisen-**-linux224.pnm > **_linux_clut224.ppm    #转换二进制的pnm格式为文本的ppm格式.
cp  **_m32r_clut224.ppm linux-2.6.28.6/drivers/video/**/**_linux_clut224.ppm
rm -f linux-2.6.28.6/drivers/video/**/**_linux_clut224.c

後來發現問題是,需要做以下指令重新編譯過後,畫面才能更改成功。
./ltib  dist/lfs-5.1/boot_stream/boot_stream.spec -f

使用特权

评论回复
16
FSL_TICS_imx| | 2013-12-30 17:47 | 只看该作者
swimchang 发表于 2013-12-30 14:41
http://www.it165.net/embed/html/201301/2205.html

pngtopnm huisen-**-linux.png > huisen-**-lin ...

hi swimchang,
非常感謝您的支持和分享~~

使用特权

评论回复
17
FSL_TICS_imx| | 2014-1-2 15:50 | 只看该作者
yulongxuan 发表于 2014-1-2 14:26
专业PCB板打样50元/款,最低48元起

深圳顺易捷科技有限公司网上ERP系统计算价格和下单,方便快捷5分钟完 ...

楼上在这打广告有些不好啊

使用特权

评论回复
18
hotcancer| | 2014-4-11 12:03 | 只看该作者
在Linux里改启动图标好像是有大小限制的吧?

使用特权

评论回复
19
FSL_TICS_Rita| | 2014-4-11 14:44 | 只看该作者
hotcancer 发表于 2014-4-11 12:03
在Linux里改启动图标好像是有大小限制的吧?

有的,600x400的。

使用特权

评论回复
20
hotcancer| | 2014-5-5 09:20 | 只看该作者
rockos 发表于 2013-12-22 11:24
小case: 如何修改Linux的启动**

Linux的启动**已经在Linux内核中存在, 但并不是Linux开发社区的"官方" ...

**的位置可以改吗?默认是在左上角,能不能改成屏幕中心位置?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

52

帖子

0

粉丝