FIVA MPC-205でLinux WS - Kernelの再構築

Last Modified: 2004.02.18

3. Kernelの再構築
ハイバネーション、HDDのDMA有効化と、PCMCIA認識のための準備。
以下は、VAIO-U1でLinuxインストール/設定メモを参考にさせて頂きました。


1. kernelソースとパッチの入手

以下を全て、/usr/srcに保存する。
kernel 2.4.18のソースファイル http://www.kernel.org/pub/linux/kernel/v2.4/ linux-2.4.18.tar.gz
kernel 2.4.18用ACPIのパッチ http://sourceforge.net/projects/acpi/ acpi-20020726-2.4.18.diff.gz
Software Suspendのパッチ http://sourceforge.net/projects/swsusp/ patch-acpi-acpi20020726-swsusp11.gz
alim15x3のDMAを有効にするパッチ http://browncat.org/linux/vaio-u1.html alim15x3-pre8-ac1.patch.txt

2. パッチの適用

/usr/srcで展開し、以下のようにパッチを当てる。

 [root@fiva root]# cd /usr/src
 [root@fiva src]# tar zxvf linux-2.4.18.tar.gz          <--- ディレクトリlinux-2.4.18の下に展開される。
 [root@fiva src]# mv linux-2.4.18 linux-2.4.18-S        <--- サスペンドできるという意味でディレクトリ名を変更。
 [root@fiva src]# rm linux                              <--- linuxは、シンボリックリンク。
 [root@fiva src]# ln -s linux-2.4.18-S linux            <--- linux-2.4.18-Sへのシンボリックリンクをlinuxとして作成。
 [root@fiva src]# gunzip acpi-20020726-2.4.18.diff.gz
 [root@fiva src]# gunzip patch-acpi-acpi20020726-swsusp11.gz
 [root@fiva src]# mv acpi-20020726-2.4.18.diff linux
 [root@fiva src]# mv patch-acpi-acpi20020726-swsusp11 linux
 [root@fiva src]# mv alim15x3-pre8-ac1.patch.txt linux
 [root@fiva src]# cd linux
 [root@fiva linux]# patch -p1 < acpi-20020726-2.4.18.diff
 [root@fiva linux]# patch -p1 < patch-acpi-acpi20020726-swsusp11
 [root@fiva linux]# patch -p1 < alim15x3-pre8-ac1.patch.txt

3. カーネルの設定


 [root@fiva linux]# make mrproper                       <--- 設定を初期化
 [root@fiva linux]# make menuconfig                     <--- カーネルの設定

標準から変えた設定。
Code maturity level options Prompt for development and/or incomplete code/drivers * これを有効にしないと、Software Suspendのオプションを指定できない。
Processor type and features Processor family Crusoe FIVAで使っているのはこれ。
/dev/cpu/*/msr M Longrunユーティリティーが利用。
/dev/cpu/*/cpuid M
General setup PCMCIA/CardBus support   PCMCIA/CardBus supportは別途インストール。
Software Suspend *  
Advanced Power Management BIOS support   APMは利用しない。
ACPI Support ACPI Support *  
AC Adapter *  
Battery *  
Button *  
Fan *  
Processor *  
Thermal zone *  
Block devices Normal PC Floppy support M 殆ど利用しないのでモジュール。
Loopback device support M mkinitrdで利用するのでモジュール。
Networking options Socket filtering * DHCPを使うために必要らしい。
IDE, ATA and ATAPI Block devices ALI M15x3 chipset support * FIVAで使っているのはこれ。他のChipset用ドライバは必要なし。
SCSI support SCSI support M FDDがSCSIとして認識されるので必要。
Probe all LUNs on each SCSI device   ここにチェックがあると、FDD認識時にメッセージがうるさい。
IEE1394 support IEEE1394 support M IEEE1394機器を持っていないので未テスト。この下は片っ端からモジュール化。
Network device support Ethernet (10 or 100Mbit) RealTek RTL-8139 PCI Fast Ethernet Adapter support M FIVAで使っているのはこれ。他のドライバは必要なし。
PPP (point-to-point protocol) support M このほかPPP関連は適当にモジュール化。
Wireless LAN * Wireless LANはその内買う予定。
Input core support Input core support M USBの入力装置を利用。
Keyboard support M  
Mouse support M  
Horizontal screen resolution 800  
Vertical screen resolution 600  
Character devices /dev/nvram support M ここを有効にしないと起動時にエラーが出る。
Enhanced Real Time clock Support M
ALI chipset support * 他のChipsetのサポートは必要なし。
File systems EXT3 journalling file system support * ext3を利用しているので。
DOS FAT fs support M DOSのFDを読むため。
MSDOS fs support M
Microsoft Joliet CDROM extensions * Windows用CDを読むため。
/proc file system support * 当然必要。ACPIのステータスはここを参照。
Network File Systems NFS file system support M  
SMB file system support M Windowsのネットワークドライブをマウントするため。
Partition Types Advanced partition selection *  
PC BIOS (MSDOS partition tables) support *  
Console drivers Video mode selection support * Consoleで高解像度を利用するため。
Frame-buffer support Support for frame buffer devices *
VESA VGA graphics console *
Advanced low level driver options *
8 bpp packed pixels support *
Sound Sound card support M 後でALSAを組み込むので、ドライバは必要なし。
USB Support Support for USB M  
OHCI (compaq, iMacs, OPTi, SiS, ALi, ...) support M Fivaで使っているのはこれ。他は必要なし。
USB Mass Storage support M USB FDDはUSB Mass Storageとして認識される。
USB Human Interface Device support M  
USB HidBP keyboard support M USBキーボードサポート。
USB HIDBP Mouse support M USBマウスサポート
Kernel hacking Kernel debugging *  
Magic SysRq key * Xハングアップ時に強制終了できるように。

4. Makefileの修正


 EXTRAVERSION = -S                                      <--- カーネルのバージョン番号を2.4.18-Sに設定。
 export INSTALL_PATH=/boot                              <--- コメントを外して、/bootにカーネルをインストール。

5. カーネルのコンパイル

実行する前に、Linux活用日記「カーネル」に目を通しておくこと。

 [root@fiva linux]# make dep ; make clean               <--- 依存関係チェックと初期化。
 [root@fiva linux]# make bzlilo                         <--- /bootにカーネルをインストールしてLILOを再設定。
 [root@fiva linux]# /sbin/lilo -v                       <--- 念のため。
 [root@fiva linux]# make modules                        <--- モジュールのコンパイル。
 [root@fiva linux]# make modules_install                <--- モジュールのインストール。
 [root@fiva linux]# depmod -a                           <--- モジュールの依存関係の再構築。
 [root@fiva linux]# shutodwn -r now                     <--- 再起動
depmod -aがエラーを出す場合(というか多分エラーを出すので)は、再起動後に再実行。

<Prev Top Next>
Copyright(C) 2001-2003 Katsuyuki Kobayashi.
このサイトへのリンクや引用時はメール頂戴
webmaster@kkoba.com