Create  Edit  Diff  性犯罪ニュース  Index  Search  Changes  History  Source  RSS  wikifarm  Login

とりあえず kernel の ipv6化

方針

基本はここ。

http://developer.ezaurus.com/download/ipv6/zaurus_ipv6_howto.asp

ここで使っている kernel のsource に C860 の kernel の変更部分を merge してビルドする。 Momonga Linux 環境上でクロスコンパイル。たぶん RedHatFedora なんかの環境でも同じでしょう。

準備

http://developer.ezaurus.com/sl_j/tool/tools.htm から以下のツールをおとしインストール。

/opt/Embedix/tools/binにパスを通す (例:PATH=$PATH:/opt/Embedix/tools/bin)。

SL-C750のソースとSL-C860のソースから差分を作成。

http://developer.ezaurus.com/sl_j/source/source_dl.htm から SL-750SL-860 のkernel source をダウンロードして差分をとる。ファイル名は linux-c750-20030620-rom1_10--linux-c860-20031107-rom1_10.diff で。 私が使った物をlinux-c750-20030620-rom1_10--linux-c860-20031107-rom1_10.diffに置いたので自分で作るのが面倒な人はもっていってください。

kernel の作成

$ tar zxvf usagi-linux24-s20020722.tar.bz2
$ cd usagi/
$ make TARGET=linux24 prepare
$ cd kernel/linux24
$ bzip2 -dc ../../../patch-2.4.18-rmk7.bz2 |patch -p1
./Makefile への修正がreject されるが、のちほど patch-usazau.txt でreject分をあてるので気にしない。
$ rm Makefile.rej
$ gzip -dc ../../../diff-2.4.18-rmk7-pxa3.gz |patch -p1
$ bzip2 -dc ../../../linux-2.4.18-rmk7-pxa3-embedix-slc750-20030620-rom1_10.bz2 |patch -p1
$ patch -p1 -i ../../../patch-usazau.txt
$ patch -p1 -i ../../../linux-c750-20030620-rom1_10--linux-c860-20031107-rom1_10.diff
デフォルトの config ファイルをコピー
$ cp arch/arm/def-configs/boxer-j .config
$ make menuconfig
    以下の項目を Y に変更して保存。
        The IPv6 protocol (EXPERIMENTAL)
        IPv6: drop packets with fake ipv4-mapped address(es) (NEW)
        IPv6: allow default route when forwarding is enabled (NEW)
        IPv6: enable Node Information Queries (NEW)
$ make dep
$ make zImage
$ make modules

kernel の更新

http://developer.ezaurus.com/sl_j/source/c860/kernel_update_c860.htm に従って新しい kernel を書き込む。ただし、initrd.bin で rootfs を更新してしまうとQtopia等がきえてしまうのでその部分をとばす。

/mnt/zaurus に更新に使用する SD カードまたは CF カードがマウントされているものとする。

重要 念のため重要なファイルは全てバックアップをとってから行なってください。また、/mnt/zaurus/ の直下にはここでコピーするファイル以外が存在しないようにしてください。

確認

終了後再起動してくれば ipv6 enabled な kernel になっているはず。 terminal で /sbin/ifconfig を実行し、lo に inet6 で ::1がついていれば成功。

Last modified:2004/01/17 02:59:06
Keyword(s):[linux] [zaurus] [ipv6] [SL-C860] [りなざう] [kernel]
References:[性犯罪ニュース] [usagi-tools]