labs.beatcraft.com kernel 2.6.29-bc9-r7 への更新手順 †bc9 の kernel を 2.6.29-bc9-r7 へ更新する手順を記載します。 kernel 2.6.29-bc9-r7 での主な変更点 †
Android kernel source の取得 †以下のようにして Android 用変更が施された kernel source を取得します。 $ mkdir kernel_work $ cd kernel_work $ git clone git://android.git.kernel.org/kernel/common.git android_kernel $ cd android_kernel $ git checkout --track -b android-2.6.29 origin/android-2.6.29 patch の適用 †添付の patch-kernel-2.6.29.4-bc9-r7.tar.gz をダウンロードして展開します。 $ tar xvfz patch-kernel-2.6.29.4-bc9-r7.tar.gz 22 の patch ファイルと patch 適用のための shell script が含まれています。 $ cd patch-kernel-2.6.29.4-bc9-r7 $ ls 01-minimum.patch 09-mmc-mfp.patch 17-ucb1400-adc.patch 02-lcd.patch 10-i2c-fastmode.patch 18-tsc2003-calibration.patch 03-tsc.patch 11-mtd-devname.patch 19-ucb1400-mma7260qt.patch 04-usb.patch 12-mod-bc9-keys.patch 20-fix-bc9-leds.patch 05-proc-gpio.patch 13-bc9-config.patch 21-hmc5843.patch 06-gpio-keys.patch 14-bc9-leds.patch 22-ucb1400-mma7260qt-non-spinlock.patch 07-ac97.patch 15-rtc-ds1374.patch patch-all.sh 08-ac97-gpio.patch 16-bc9-usb-config.patch patch-all.sh は kernel source tree のトップディレクトリで実行するようになっていますので、 $ cp * ~/kernel_work/android_kernel/ $ cd ~/kernel_work/android_kernel/ $ ./patch-all.sh patch 適用完了後、patch 済みであることが分かりやすいよう、ディレクトリをリネームしておきます。 $ cd .. $ mv android_kernel linux-android-2.6.29-bc9-r7 kernel build の準備 †kernel を bc9用に cross build するため以下のような script を用意し、これを source して #!/bin/sh export PATH=/home/beat/gumstix/gumstix-oe/tmp/cross/bin:$PATH export ARCH=arm export CROSS_COMPILE=arm-angstrom-linux-gnueabi- $ source setup_kernel_build.sh kernel ビルド †patch 適用作業の完了後、添付の bc9-r7_android_static_defconfig を .config としてコピーし、 $ cd linux-android-2.6.29-bc9-r7 $ cp bc9-r7_android_static_defconfig .config $ ./make-bc9-kernel.sh build が正常に終了すると、標準の make を実行した場合に得られるファイルの他に以下の二つのファイルが得られます。 modules-2.6.29-bc9-r7.tgz uImage-bc9-2.6.29-bc9-r7.bin 上記のファイルを bc9/bc9-boot-microsd-image--release20090815-fix設定手順 uImageのコピー †ビルド完了後できた uImage-2.6.29-bc9-r7.bin を microSD の第1パーティション(FAT16)にある uimage と置き換えます。 $ sudo cp uImage-2.6.29-bc9-r7.bin /media/disk/uimage modules の展開 †次に kernel module を microSD の第2パーティション(ext3)に展開します。 $ sudo cd /media/disk-1 $ tar xvfz ~/kernel_work/linux-android-2.6.29-bc9-r7/modules-2.6.29-bc9-r7.tgz /lib/modules/2.6.29-bc9-r7 以下に展開されたことを確認して下さい。 2.6.29-bc9-r7 kernel で起動 †上記で用意できた microSD を bc9 の microSD スロットに挿して電源を入れると、
by 大塚聡史
|