色yeye在线视频观看_亚洲人亚洲精品成人网站_一级毛片免费播放_91精品一区二区中文字幕_一区二区三区日本视频_成人性生交大免费看

當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > LINUX 啟動(dòng)logo 總結(jié)

LINUX 啟動(dòng)logo 總結(jié) 時(shí)間:2018-09-28      來(lái)源:未知

LINUX 啟動(dòng)logo 總結(jié)

 近在imx6上需要調(diào)試linux下啟動(dòng)logo。其實(shí)linux啟動(dòng)logo 以前沒(méi)少調(diào),但這次弄了好久,也發(fā)現(xiàn)以前調(diào)過(guò)的沒(méi)有積累。

之所以這次logo弄了很久是因?yàn)閒sl bsp 實(shí)現(xiàn)keep uboot logo to kernel ,但又在我使用的BSP上沒(méi)有完全弄好。話說(shuō)那個(gè)還是

有很牛逼,簡(jiǎn)單來(lái)說(shuō)就是uboot實(shí)現(xiàn)好logo,然后kernel 中不需要對(duì)相應(yīng)的顯示時(shí)鐘進(jìn)行重新初始化,還有很多其他的類似一樣

的道理,就是相信uboot中已經(jīng)弄好了。廢話到此。說(shuō)說(shuō)一般的linux 啟動(dòng)logo。

 

一,企鵝法(224級(jí),或者224色)

企鵝圖片的文件名logo_linux_clut224.ppm,在driver/video/logo目錄下。采用netpbm 工具生成想要替換的logo,這里要注

意一下圖片的尺寸大小 。

例如將PNG格式的圖片轉(zhuǎn)換成logo_linux_clut224.ppm:

    # pngtopnm my.png > my.pnm

    # pnmquant 224 my.pnm > logo224.pnm

    # pnmtoplainpnm logo224.pnm > logo_linux_clut224.ppm

 

Note: 可能會(huì)出現(xiàn)如下錯(cuò)誤提示

drivers/video/logo/logo_linux_clut224.ppm: Binary PNM is not supported

Use pnmnoraw(1) to convert it to ASCII PNM

這個(gè)可能是因?yàn)槟愕膒pm 圖片是bin格式,需要轉(zhuǎn)換成ascii 格式。方法如下:

pnmnoraw logo_linux_clut224.ppm > logo_linux_clut224_ascii.ppm

替換目錄中的文件重新編譯就OK了。當(dāng)然這時(shí)候你會(huì)發(fā)現(xiàn)顯示位置需要調(diào)整。默認(rèn)是左上角對(duì)齊。產(chǎn)品中可能更多是中心對(duì)齊。

中心對(duì)齊的方法。

1,修改drivers/video/fbmem.c  fb_show_logo_line函數(shù)中,修改如下

    //image.dx = 0; //左上角 x起點(diǎn)

   //image.dy = y; //調(diào)用時(shí)指定的參數(shù) y起點(diǎn)

    image.dx = (info->var.xres / 2) - (image.width / 2);  //中心

    image.dy = (info->var.yres / 2) - (image.height / 2); //中心

    image.width = logo->width;

    image.height = logo->height;

 

Note:info->var.xres和info->var.yres是分辨率大小,image.width,image.height是logo圖片的大小。

起點(diǎn)位置的修改

2,修改drivers/video/console/fbcon.c  fbcon_prepare_logo函數(shù)里,修改如下

    logo_height = fb_prepare_logo(info, ops->rotate);

   logo_height += (info->var.yres / 2) - (logo_height / 2);

結(jié)束位置的修改

    這里需要補(bǔ)充一點(diǎn),就是關(guān)于boot logo 的配置與光標(biāo) cursor的問(wèn)題(第二種方法里面說(shuō)吧)。

 

Device Drivers --->    Graphics support --->

    [*]Boot logo --->

       [*] Standard 224-color Linux logo

支持 kernel console,不選看不到 logo:

Device Drivers --->     Graphics support --->

     Console display driver support --->

       <*> Framebuffer Console support

 

二,真彩色TFT LINUX LOGO (使用此方法比較簡(jiǎn)單,更能滿足客戶的需求)

顯示圖片可以是rgb565 ,不局限于原來(lái)的224色 ,方法相當(dāng)于直接將要顯示的圖片輸出到Framebuffer。記錄一下方法吧。

  1, 生成貍貓----增加三個(gè)文件。

true_lanrry_logo.h //LCD顯示信息,深度及聲明

lanrry_logo_data.h //定義的圖片的數(shù)據(jù),我采用ImageLCD工具取模

framebuffer_logo.c //實(shí)現(xiàn)打印數(shù)據(jù)到framebuffer

均放在drivers/video目錄下,并且修改Makefile ,添加framebuffer_logo.c。 

  2,貍貓換太子----修改drivers/video/fbmem.c里的代碼

 

 a,添加 #define TRUE_COLOR

 b,修改如下:

      +#ifdef TRUE_COLOR

      +#include "truecolor_logo.h"

      +#endif

 c,修改函數(shù)int fb_show_logo(struct fb_info *info, int rotate)

  {

    //貍貓換太子

    +#ifdef TRUE_COLOR

    +fb_show_truecolor_logo(info);

    +return 1;

    #else

    int y;  

    y = fb_show_logo_line(info, rotate, fb_logo.logo, 0,

                  num_online_cpus());

        num_online_cpus   cpu 數(shù)量,linux logo 企鵝數(shù)量。

 d,修改fb_prepare_logo函數(shù)以改變高度,該函數(shù)的后return處改為

 #ifdef TRUE_COLOR

    return fb_prepare_extra_logos(info, YRES, YRES);

 #else

    return fb_prepare_extra_logos(info, fb_logo.logo->height, yres);

 #endif

 重新編譯完之后,就能全部顯示

 

這種方法是采用替換boot logo 。全屏顯示的時(shí)候,也是會(huì)發(fā)現(xiàn)有光標(biāo)問(wèn)題。解決方法如下:

修改drivers/video/console/bitblit.c文件的bit_cursor函數(shù),在該函數(shù)結(jié)尾處的 。

 if (err)

    soft_cursor(info, &cursor);

改為

 if (0)

    soft_cursor(info, &cursor);

上一篇:理解C語(yǔ)言的聲明

下一篇:OpenVPN 服務(wù)器搭建

熱點(diǎn)文章推薦
華清學(xué)員就業(yè)榜單
高薪學(xué)員經(jīng)驗(yàn)分享
熱點(diǎn)新聞推薦
前臺(tái)專線:010-82525158 企業(yè)培訓(xùn)洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠(yuǎn)見(jiàn)科技集團(tuán)有限公司 版權(quán)所有 ,京ICP備16055225號(hào)-5京公海網(wǎng)安備11010802025203號(hào)

回到頂部

主站蜘蛛池模板: 狠狠躁夜夜躁青青草原软件 | 无码人妻精品一区二区三区不卡 | 午夜福利理论片在线观看播放 | 日本女人b | 自拍偷自拍亚洲精品牛影院 | 欧美xxxx做受欧美人妖 | 欧美又大又粗无码视频 | 国产精成人品日日拍夜夜免费 | 成人免费高清视频 | 樱花草在线播放免费中文 | a级黑人大硬长爽猛出猛进 午夜成午夜成年片在线观看 | 2024AV天堂手机在线观看 | 在阳台上玩弄人妻的乳球 | 精品亚洲成a人无码成a在线观看 | 在线观看视频一区 | 一级淫片在线观看 | 亚洲av永久无码精品古装片 | 熟女人妻aⅴ一区二区三区60路 | 野花在线无码视频在线播放 | 久久综合给合综合久久 | 18gay男同69亚洲帅男蓝宇 | 国产精品无码欧美日韩 | 亚洲精品无码一区二区三天美 | 91亚洲精品久久久蜜桃 | 精品少妇人妻av一区二区 | 国产成人愉拍免费视频 | 四虎在线播放 | 久久久噜噜噜久久久精品 | 久久久久亚洲精品男人的天堂 | 情侣做性视频在线播放 | 67194熟妇在线观看线路1 | 中文字幕视频6区 | 激情无码人妻又粗又大 | 三级特黄特色在线播放 | 国产成人精品无码一区二区蜜柚 | 亚洲AV自慰白浆喷水网站少妇 | 久久天天躁狠狠躁夜夜免费观看 | 蜜芽亚洲AV尤物183不卡资源 | 欧美成人永久免费a片 | 新婚娇妻系列友人妻 | 国产精品人成在线播放 |