« LifeTouch NoteにDebianを入れる1 | トップページ | LifeTouch NoteにDebianを入れる3 »

2011年5月21日 (土)

LifeTouch NoteにDebianを入れる2

LifeTouch NoteにDebianを入れる1の続き。

無線LANとBluetoothを使えるようにする。

1.無線LAN

LTNで使用している無線LANはbcm4329。
bcm4329は動作させるためにファームウェアを読み込む必要がある。
これに必要なファイル一式をSDカードにコピーする。
コピー元のファイルは、Androidの/system/lib/hw/wlan/にある。

事前にAndroid上で無線LANを使えるようにしておく。

LTNにDebianのルートファイルシステムを書き込んだSDカードを挿入し、マウントする。
ext3なので手動でマウントさせる必要がある。

LTN上に入れた端末ソフトか、PCからLTNへadbで接続してLTNのコンソールで操作する。

$su
#busybox mount /dev/block/mmcblk2p1 /sdcard
#cd /sdcard/lib
#busybox mkdir firmware
#cd firmware
#busybox cp /system/lib/hw/wlan/* .
#busybox rm nvram.txt
#busybox mv usibcm4329-RC128-nvram.txt nvram.txt

usibcm4329-RC128-nvram.txtはファイル名が違うかもしれないので、そのときは適時読み替えること。

以下のようなファイルが/sdcard/lib/firmwareにあるはず。

bcm4329.ko
fw_bcm4329.bin
fw_bcm4329_apsta.bin
nvram.txt
calibration

2.Bluetooth

Bluetoothを動かすために、bcm4329にファームウェアをロードする必要がある。
そのファームウェアは/system/lib/BCM4329B1.hcdにある。
ファームウェアをロードするためにbrcm_patchram_plusというのも必要になるが、元のAndroid用のは使えないので、ソースコードにパッチをあててコンパイルする必要がある。

まずは、BCM4329B1.hcdを/sdcard/lib/firmwareにコピーする。

#busybox cp /system/lib/BCM4329B1.hcd .
#busybox mv BCM4329B1.hcd bcm4329.hcd

コピーが終わったらSDカードをアンマウントしてPCに挿入する。

brcm_patchram_plusはAndroid用のソースをダウンロードしてきてパッチをあてて作成する。
brcm_patchram_plusの作り方の元ネタはここ
コンパイル済みのものを用意した。
「brcm_patchram_plus」をダウンロード

 

brcm_patchram_plusをSDカードの/usr/bin/にコピーする。
(私の環境では、/dev/sdc1がSDカードの第一パーティション)

#mount /dev/sdc1 /mnt/hd1
#cp brcm_patchram_plus /mnt/hd1/usr/bin/
#chmod 755 /mnt/hd1/usr/bin/brcm_patchram_plus

3.その他

Linuxで起動したときに、無線LAN用モジュールをロードするようにスクリプトを用意する。

perlで適当に作ったスクリプト。
「ltnaw」をダウンロード

 

ltnawをSDカードの/etc/init.d/にコピーする。
#cp ltnaw /mnt/hd1/
#chmod 755 /mnt/hd1/etc/init.d/ltnaw
#ln -s /etc/init.d/ltnaw /mnt/hd1/etc/rc2.d/S10ltnaw
#ln -s /etc/init.d/ltnaw /mnt/hd1/etc/rc3.d/S10ltnaw
#ln -s /etc/init.d/ltnaw /mnt/hd1/etc/rc5.d/S10ltnaw

/etc/network/interface ファイル

以下のようなinterfacesファイルを作って、SDカードの/etc/network/にコピーする。
(essidsecretは、使用しているessidに書き換えること)

auto lo
iface lo inet loopback

allow-hotplug eth0
auto eth0
iface eth0 inet dhcp
wpa-essid "essidsecret"
wpa-driver wext
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

#cp interfaces /mnt/hd1/etc/network/

wpa_supplicant.conf ファイル
以下のようなwpa_supplicant.confファイルを作って、SDカードの/etc/wpa_supplicant/にコピーする。
(WPA2の場合)

ctrl_interface=eth0
update_config=1
network={
    proto=WPA2
    ssid="essidsecret"
    psk="psksecret"
    key_mgmt=WPA-PSK
    pairwise=CCMP
    priority=1
}

#cp wpa_supplicant.conf /mnt/hd1/etc/wpa_supplicant/

カーネルモジュール

nvidiaのtegra用Linuxカーネルを元に、NTNの/proc/config.gzの設定を摘要させ、
できたLinuxカーネルモジュールをSDカードの/lib/modulesにコピーしておく。
(ないと、起動時にエラーかなにかが出るため)
このモジュールはきちんと使えるか不明。
NECがきちんと、LTN用のLinuxカーネルを公開してくれれば問題ないんだが。
(GPLだから公開する義務があるはず...)

「libs.tar.gz」をダウンロード

(/xxx/yyy/libs.tar.gz はlibs.tar.gz ファイルの場所)
#cd /mnt/hd1/
#tar xfpz /xxx/yyy/libs.tar.gz

LifeTouch NoteにDebianを入れる3に続く。

« LifeTouch NoteにDebianを入れる1 | トップページ | LifeTouch NoteにDebianを入れる3 »

LifeTouch Note」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: LifeTouch NoteにDebianを入れる2:

« LifeTouch NoteにDebianを入れる1 | トップページ | LifeTouch NoteにDebianを入れる3 »