Pylone Blog - タグ:fblogo
Linux 起動ロゴの変更
Fri, 17 Aug 2007 18:03 GMT, Posted by Seiichi SATO
フレームバッファに表示される起動時のロゴ画像を変更する方法を紹介します。

以前はピクセル値が配列にベタ書きされたヘッダファイルを用意する必要がありましたが、Linux-2.6でフレームバッファ周辺が書き直されて PNM を直接ソースツリーに置けるようになりました。

例として、このfreedesktop.orgのロゴ画像 (PNG, 80x80) を224色の起動ロゴにしてみます。
まず、画像をPNMに変換します。
$ convert -colors 224 fdo_logo.png fdo_logo.pnm
pnm2ascで ピクセル値がASCIIのPNMに変換して、drivers/video/logo/ に放り込みます。
$ pnm2asc fdo_logo.pnm > drivers/video/logo/logo_fdo_clut224.ppm
drivers/video/logo/Makefileに以下を追加します。
obj-$(CONFIG_LOGO_FDO_CLUT224) += logo_fdo_clut224.o
drivers/video/logo/Kconfig に以下を追加します。
config LOGO_FDO_CLUT224
bool "224-color freedesktop.org logo"
depends on LOGO
default y
drivers/video/logo/logo.cに追加したロゴ画像のプロトタイプ宣言を加えます。
extern const struct linux_logo logo_fdo_clut224;
drivers/video/logo/logo.c:fb_find_logo()の if (depth >=4) { } の最後に以下を追加します。
#ifdef CONFIG_LOGO_FDO_CLUT224
logo = &logo_fdo_clut224;
#endif
あとは、CONFIG_LOGO_FDO_CLUT224=yでカーネルをリビルドするだけです。
drivers/video/logo/{Makefile,Kconfig,logo.c}を弄りたくなければ、 既存のロゴを上書きするだけでもいいと思います。