아래 글에서 잘못 된 부분이 있으면,
http://cafe.naver.com/embeddedcrazyboys
문의 해 주세요.
- 커널 로고 추가하기
- 변경프로그램 설치
root@ubuntu:/home/jooyoung# apt-get install netpbm
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
linux-headers-2.6.32-33-generic linux-headers-2.6.32-33
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
libnetpbm10
The following NEW packages will be installed:
libnetpbm10 netpbm
0 upgraded, 2 newly installed, 0 to remove and 5 not upgraded.
Need to get 1,285kB of archives.
After this operation, 4,940kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get:1 http://us.archive.ubuntu.com/ubuntu/ lucid/main libnetpbm10 2:10.0-12.1ubuntu1 [67.4kB]
Get:2 http://us.archive.ubuntu.com/ubuntu/ lucid/main netpbm 2:10.0-12.1ubuntu1 [1,218kB]
Fetched 1,285kB in 8s (154kB/s)
Selecting previously deselected package libnetpbm10.
(Reading database ... 179732 files and directories currently installed.)
Unpacking libnetpbm10 (from .../libnetpbm10_2%3a10.0-12.1ubuntu1_i386.deb) ...
Selecting previously deselected package netpbm.
Unpacking netpbm (from .../netpbm_2%3a10.0-12.1ubuntu1_i386.deb) ...
Processing triggers for man-db ...
Setting up libnetpbm10 (2:10.0-12.1ubuntu1) ...
Setting up netpbm (2:10.0-12.1ubuntu1) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
root@ubuntu:/home/jooyoung#
|
- 확장자별 PPM 변환 프로그램 명령어
GIF : giftopnm
PNG : pngtopnm
BMP : bmptopnm
JPG : jpegtopnm
|
- 커널에 추가할 이미지 정보
이름 : CRG_logo
해상도 : 800X480
확장자 : JPG
|
- 변환하기
- JPG파일 PPM으로 변경
root@ubuntu:/home/jooyoung/Desktop# jpegtopnm CRZ_loog.jpg | pnmtoplainpnm > imgout1.ppm
jpegtopnm: WRITING PPM FILE
|
JPG 파일을 PPM으로 변경
|
root@ubuntu:/home/jooyoung/Desktop# pnmquant -fs 223 imgout1.ppm > imgout2.ppm
pnmcolormap: making histogram...
pnmcolormap: 2952 colors found
pnmcolormap: choosing 223 colors...
pnmremap: 221 colors found in colormap
|
PPM을 16bit로 변경
|
root@ubuntu:/home/jooyoung/Desktop# pnmnoraw imgout2.ppm > logo_XXX_clut224.ppm
|
PPM을 PAW파일로 변경(XXX에 아무 이름을 해주세요 설명하기 쉽게 저는 joo로 하겠습니다.
|
root@ubuntu:/home/jooyoung/Desktop# cp logo_joo_clut224.ppm <path to kernel>
/drvers/vido/logo/
|
생성한 “logo_joo_clut224.ppm”을 “<path to kernel>/drvers/vido/logo/ “에 복사해줍니다.
|
- kernel수정하기
- 확인
root@ubuntu: <path to kernel>/drivers/video/logo# ls
|
clut_vga16.ppm logo_linux_clut224.ppm logo_spe_clut224.ppm
Kconfig logo_linux_mono.pbm logo_sun_clut224.ppm
logo_blackfin_clut224.ppm logo_linux_vga16.ppm logo_superh_clut224.ppm
logo_blackfin_vga16.ppm logo_m32r_clut224.ppm logo_superh_mono.pbm
logo.c logo_mac_clut224.ppm logo_superh_vga16.ppm
logo_dec_clut224.ppm logo_parisc_clut224.ppm Makefile
logo_joo_clut224.ppm logo_sgi_clut224.ppm
|
- Kconfig 변경
root@ubuntu: <path to kernel>/drivers/video/logo# vi Kconfig
|
config LOGO_JOO_CLUT224
bool "224-color joo Linux logo"
depends on LOGO
default y
|
Kconfig에 위의 내용을 추가해줍니다.
|
- Makefile 변경
root@ubuntu: <path to kernel>/drivers/video/logo# vi Makefile
|
obj-$(CONFIG_LOGO_JOO_CLUT224) += logo_joo_clut224.o
|
Makefile에 위의 내용을 추가해 줍니다.
|
- linux_logo.h 변경
root@ubuntu:<path to kernel>/include/linux# vi linux_logo.h
|
extern const struct linux_logo logo_joo_clut224;
|
Linux_logo.h에 위의 내용 추가 *참고 2.6커널부터 extern이 logo.c에서 linux_logo.h로 변경됨*
|
- logo.c 변경
root@ubuntu: <path to kernel>/drivers/video/logo# vi logo.c
|
#ifdef CONFIG_LOGO_XXX_CLUT224
logo = &logo_joo_clut224;
#endif
|
Logo.c에 위의 내용을 추가
|
- make menuconfig
root@ubuntu: <path to kernel>/ # make menuconfig
|
Device Driversphic supportsole display driver supportFramebuffer Console support 체크.
|
사진 설명
|
Device Drivers Graphic support Bootup logo 체크 224-color joo Linux logo 체크
|
사진 설명
|
Save 후 EXIT
|
- 최종 확인 boot logo
Kernel build를 한 후에 zImag를 망고에 boot시켜줍니다.
확인결과 아래와 같이 logo가 변경되서 나옵니다.
댓글 없음:
댓글 쓰기