2013년 8월 30일 금요일

커널 로고 그리기 관련



http://cafe.naver.com/embeddedcrazyboys/13720

http://www.mangoboard.com/

커널 config 변경

CONFIG_VT=y
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
# CONFIG_VT_HW_CONSOLE_BINDING is not set

CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set
# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
# CONFIG_FONTS is not set
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y

# CONFIG_LOGO_LINUX_MONO is not set
# CONFIG_LOGO_LINUX_VGA16 is not set
CONFIG_LOGO_LINUX_CLUT224=y

위처럼 config하면 해상도가 작은 것만 가능하다.


[    0.368431] duty_ns=40000, period_ns=40000 (25000)
[    0.368449] pwm_enable enter -------
[    0.368933] s3cfb_cfg_gpio enter -------
[    0.369064] s3cfb_init_fbinfo lcd->freq =60
[    0.369371] s3cfb s3cfb.0: [fb0] dma: 0x69ff4000, cpu: 0xee839000, size: 0x004b0000
[    0.371366] s3cfb_init_fbinfo lcd->freq =60
[    0.371375] s3cfb_init_fbinfo lcd->freq =60
[    0.371382] s3cfb_init_fbinfo lcd->freq =60
[    0.371389] s3cfb_init_fbinfo lcd->freq =60
[    0.379858] fbcon_init: disable boot-logo (boot-logo bigger than screen).
[    0.379869] Console: switching to colour frame buffer device 128x37
[    0.388626] parent clock: 800000000, vclk: 40773000, vclk div: 20


이미지 만들기

jpg 이미지를 준비
040.jpg

jpegtopnm 040.jpg | pnmtoplainpnm > imgout1.ppm

pnmquant -fs 223 imgout1.ppm > imgout2.ppm

pnmnoraw imgout2.ppm > logo_crz_1024_600_clut224.ppm




#CONFIG_DUMMY_CONSOLE is not
#CONFIG_FRAMEBUFFER_CONSOLE is not
위와 같이 설정 후
vi drivers/video/samsung/s3cfb_main.c
파일에

static int s3cfb_probe(struct platform_device *pdev) 함수에
아래와 같이 추가를 합니다.
#if 1//crazyboy 130830 logo
    if (fb_prepare_logo( fbdev[0]->fb[pdata->default_win], FB_ROTATE_UR)) {
        printk("Start display and show logo\n");
        /* Start display and show logo on boot */
        fb_set_cmap(&fbdev[0]->fb[pdata->default_win]->cmap, fbdev[0]->fb[pdata->default_win]);
        fb_show_logo(fbdev[0]->fb[pdata->default_win], FB_ROTATE_UR);
    }
#endif


댓글 없음:

댓글 쓰기