物好き者

物好き者が行ったことを載せています。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop

LaFoneraへのSDカード取り付け3

LaFoneraへのSDカード取り付け2 で、LaFoneraにインストールしたDD-WRTでSANDISKのSDカードもmount出来ませんでした。
このため、LaFoneraにOpenWRTをインストールして、SDカードが使えるか試してみます。

sid77: Flashing LaFonera with OpenWRT (Kamikaze 7.07) を参考に、Kamikaze 7.09をインストールしてみました。
下記の二つのファイルを使い、RedBootからtftpで書き込みました。
openwrt-atheros-2.6-root.squashfs
openwrt-atheros-2.6-vmlinux.lzma

PHY ID is 0022:5521
Ethernet eth0: MAC address 00:18:84:2a:af:10
IP: 192.168.1.254/255.255.255.0, Gateway: 0.0.0.0
Default server: 0.0.0.0

RedBoot(tm) bootstrap and debug environment [ROMRAM]
Non-certified release, version v1.3.0 - built 16:57:58, Aug 7 2006

Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.

Board: ap51
RAM: 0x80000000-0x81000000, [0x80040450-0x80fe1000] available
FLASH: 0xa8000000 - 0xa87f0000, 128 blocks of 0x00010000 bytes each.
== Executing boot script in 10.000 seconds - enter ^C to abort
^C
RedBoot> ^C
RedBoot> ip_address -l 192.168.1.254/24 -h 192.168.1.10
IP: 192.168.1.254/255.255.255.0, Gateway: 0.0.0.0
Default server: 192.168.1.10
RedBoot> fis list
Name FLASH addr Mem addr Length Entry point
RedBoot 0xA8000000 0xA8000000 0x00030000 0x00000000
rootfs 0xA8030000 0xA8030000 0x002C0000 0x00000000
vmlinux.bin.l7 0xA82F0000 0x80041000 0x000E0000 0x80041000
nvram 0xA83D0000 0xA83D0000 0x00010000 0x80041000
FIS directory 0xA87E0000 0xA87E0000 0x0000F000 0x00000000
RedBoot config 0xA87EF000 0xA87EF000 0x00001000 0x00000000
RedBoot> fis init
About to initialize [format] FLASH image system - continue (y/n)? y
*** Initialize FLASH Image System
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
RedBoot> load -r -b 0x80041000 openwrt-atheros-2.6-vmlinux.lzma
Using default protocol (TFTP)
Raw file loaded 0x80041000-0x80100fff, assumed entry at 0x80041000
RedBoot> fis create -e 0x80041000 -r 0x80041000 vmlinux.bin.l7
... Erase from 0xa8030000-0xa80f0000: ............
... Program from 0x80041000-0x80101000 at 0xa8030000: ............
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
RedBoot> load -r -b %{FREEMEMLO} openwrt-atheros-2.6-root.squashfs
Using default protocol (TFTP)
Raw file loaded 0x80040800-0x801607ff, assumed entry at 0x80040800
RedBoot> fis create -e 0 rootfs
... Erase from 0xa80f0000-0xa8210000: ..................
... Program from 0x80040800-0x80160800 at 0xa80f0000: ..................
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
RedBoot> reset
... Resetting.

しかし、有線でPCと通信が出来ません。Pingコマンドもエラーとなってしまいます。
root@OpenWrt:/# ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1): 56 data bytes
ping: sendto: Operation not permitted

書き込んだときに気になったのは、fis create -e 0 rootfs です。
別のサイトを探したところ、次のサイトが見つかり、コマンドが違うことがわかりました。
OpenWrtDocs/Hardware/Fon/Fonera - OpenWrt のInstalling OpenWrt with RedBoot
2007-12-12 - kuroの覚え書き
fis create -e 0x80041000 -r 0x80041000 vmlinux.bin.l7 を行った後に、fisの空き容量を調べて、その長さを使うそうです。
RedBoot> fis free
0xA80F0000 .. 0xA87E0000
ここでこの長さを16進数の引き算で求めると、6F0000になります。
この値をコマンドに入れるので、fis create -l 0x006F0000 rootfs をなります。
これを使って再度インストールしなおしました。

PHY ID is 0022:5521
Ethernet eth0: MAC address 00:18:84:2a:af:10
IP: 192.168.1.254/255.255.255.0, Gateway: 0.0.0.0
Default server: 0.0.0.0

RedBoot(tm) bootstrap and debug environment [ROMRAM]
Non-certified release, version v1.3.0 - built 16:57:58, Aug 7 2006

Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.

Board: ap51
RAM: 0x80000000-0x81000000, [0x80040450-0x80fe1000] available
FLASH: 0xa8000000 - 0xa87f0000, 128 blocks of 0x00010000 bytes each.
== Executing boot script in 10.000 seconds - enter ^C to abort

== Executing boot script in 10.000 seconds - enter ^C to abort
^C
RedBoot> ^C
RedBoot> ip_address -l 192.168.1.254/24 -h 192.168.1.10
IP: 192.168.1.254/255.255.255.0, Gateway: 0.0.0.0
Default server: 192.168.1.10
RedBoot> fis init
About to initialize [format] FLASH image system - continue (y/n)? y
*** Initialize FLASH Image System
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
RedBoot> load -r -b %{FREEMEMLO} openwrt-atheros-2.6-vmlinux.lzma
Using default protocol (TFTP)
Raw file loaded 0x80040800-0x801007ff, assumed entry at 0x80040800
RedBoot> fis create -e 0x80041000 -r 0x80041000 vmlinux.bin.l7
... Erase from 0xa8030000-0xa80f0000: ............
... Program from 0x80040800-0x80100800 at 0xa8030000: ............
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
RedBoot> load -r -b %{FREEMEMLO} openwrt-atheros-2.6-root.squashfs
Using default protocol (TFTP)
Raw file loaded 0x80040800-0x801607ff, assumed entry at 0x80040800
RedBoot> fis create -l 0x006F0000 rootfs
... Erase from 0xa80f0000-0xa87e0000: ...............................................................................................................
... Program from 0x80040800-0x80160800 at 0xa80f0000: ..................
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
RedBoot> fis list
Name FLASH addr Mem addr Length Entry point
RedBoot 0xA8000000 0xA8000000 0x00030000 0x00000000
vmlinux.bin.l7 0xA8030000 0x80041000 0x000C0000 0x80041000
rootfs 0xA80F0000 0x80040800 0x006F0000 0x80040800
FIS directory 0xA87E0000 0xA87E0000 0x0000F000 0x00000000
RedBoot config 0xA87EF000 0xA87EF000 0x00001000 0x00000000
RedBoot> reset
... Resetting.


2007-12-12 - kuroの覚え書き では有線ポートのWANかと無線LANの有効化をしています。
とりあえず有線でPCと接続できればいいので、有線ポートのWAN化をせずに、 telnetでパスワード変更をし、sshが使えるようにしました。

カーネルバージョンを確認します。
root@OpenWrt:/# uname -a
Linux OpenWrt 2.6.21.5 #2 Sun Sep 30 20:16:16 CEST 2007 mips unknown

http://fon.testbox.dk/packages/ から、
26215-4pinfon2100Driver7143.ipk をダウンロードしました。

インストールしたところ、他に三つのパッケージが必要となりました。
root@OpenWrt:~# ipkg install 26215-4pinfon2100Driver7143.ipk
Installing mmc-driver-fonera (0.1) to root...
Nothing to be done
An error ocurred, return value: 1.
Collected errors:
ERROR: Cannot satisfy the following dependencies for mmc-driver-fonera:
kmod-nls-base kmod-nls-cp437 kmod-nls-iso8859-1

このため、http://fon.testbox.dk/packages/2.6.21.5/ から下記の三つのファイルをダウンロードしました。
kmod-nls-base_2.6.21.5-atheros-1_mips.ipk
kmod-nls-cp437_2.6.21.5-atheros-1_mips.ipk
kmod-nls-iso8859-1_2.6.21.5-atheros-1_mips.ipk

あわせて四つのファイルをインストールしました。
root@OpenWrt:~# ipkg install kmod-nls-base_2.6.21.5-atheros-1_mips.ipk
Installing kmod-nls-base (2.6.21.5-atheros-1) to root...
Configuring kmod-nls-base
Done.
root@OpenWrt:~# ipkg install kmod-nls-cp437_2.6.21.5-atheros-1_mips.ipk
Installing kmod-nls-cp437 (2.6.21.5-atheros-1) to root...
Configuring kmod-nls-cp437
Done.
root@OpenWrt:~# ipkg install kmod-nls-iso8859-1_2.6.21.5-atheros-1_mips.ipk
Installing kmod-nls-iso8859-1 (2.6.21.5-atheros-1) to root...
Configuring kmod-nls-iso8859-1
Done.
root@OpenWrt:~# ipkg install 26215-4pinfon2100Driver7143.ipk
Installing mmc-driver-fonera (0.1) to root...
Configuring mmc-driver-fonera
Done.

insmod mmcを実行しましたが、エラーとなってしまいました。
root@OpenWrt:~# insmod mmc
insmod: mmc.ko: no module by that name found

mmcモジュールを探したところ、mmc_drv.koとなっていました。この名称でドライバを組み込んだところ、カードを認識しました。
root@OpenWrt:/lib/modules# ls
2.6.21.5 mmc_drv.ko
root@OpenWrt:/lib/modules# insmod /lib/modules/mmc_drv.ko
mmc : MMC Driver Version 2.5 (050507) Built for Legend (john@phrozen.org)
mmc : Card Found
mmc : card in op mode
mmc : SIZE : 228, nMUL : 6, COUNT : 3874, NAME : SD01G
mmc : Card Initialised
mmc : The inserted card has a capacity of 507772928 Bytes
mmc : adding disk
mmc: unknown partition table
mmc : Card was Found

/devを確認すると、mmcしかありません。
root@OpenWrt:/dev# ls
console mem mtd1ro mtd4 mtdblock1 null shm
full mmc mtd2 mtd4ro mtdblock2 ppp tty
kmem mtd0 mtd2ro mtd5 mtdblock3 ptmx ttyS0
kmsg mtd0ro mtd3 mtd5ro mtdblock4 pts urandom
log mtd1 mtd3ro mtdblock0 mtdblock5 random zero

catで/dev/mmcを見ると、カーソルがくるくる動いているので、ctrl+cでとめました。
root@OpenWrt:/dev# cat mmc

/dev/mmcをmount使用としたところ、エラーとなってしまいます。
root@OpenWrt:/# mount /dev/mmc /mnt
mount: mounting /dev/mmc on /mnt failed

ext2ファイルをシステムを指定してもエラーとなってしまいます。
root@OpenWrt:/# mount -t ext2 /dev/mmc /mnt
mount: mounting /dev/mmc on /mnt failed

http://fon.testbox.dk/packages/2.6.21.5/ を確認すると、kmod-fs-ext2_2.6.21.5-atheros-1_mips.ipk がありましたので、これをダウンロードしてインストールしました。
root@OpenWrt:~# ipkg install kmod-fs-ext2_2.6.21.5-atheros-1_mips.ipk
Installing kmod-fs-ext2 (2.6.21.5-atheros-1) to root...
Configuring kmod-fs-ext2
Done.

ext2を組み込んで、/dev/mmcをmountすると、mountできました。
root@OpenWrt:~# mount /dev/mmc /mnt
EXT2-fs warning: checktime reached, running e2fsck is recommended
root@OpenWrt:~# mount
rootfs on / type rootfs (rw)
/dev/root on /rom type squashfs (ro)
none on /proc type proc (rw)
none on /sys type sysfs (rw)
none on /tmp type tmpfs (rw,nosuid,nodev)
tmpfs on /dev type tmpfs (rw)
none on /dev/pts type devpts (rw)
/dev/mtdblock3 on /jffs type jffs2 (rw)
mini_fo:/jffs on / type mini_fo (rw)
/dev/mmc on /mnt type ext2 (rw)

ドライバ状況を確認すると、次のようになりました。
root@OpenWrt:/# lsmod
Module Size Used by Tainted: P
ext2 45936 1
mmc_drv 15040 1
nls_iso8859_1 2880 0
nls_cp437 4416 0
nls_base 4416 2 nls_iso8859_1,nls_cp437
ath_ahb 95616 0
wlan_xauth 480 0
wlan_wep 4000 0
wlan_tkip 9824 0
wlan_ccmp 5408 0
wlan_acl 1888 0
ath_rate_minstrel 7840 1
ath_hal 136832 3 ath_ahb,ath_rate_minstrel
wlan_scan_sta 8736 0
wlan_scan_ap 2624 0
wlan 147232 10 ath_ahb,wlan_xauth,wlan_wep,wlan_tkip,wlan_ccmp,wlan_acl,ath_rate_minstrel,wlan_scan_sta,wlan_scan_ap
ppp_async 9664 0
ppp_generic 23392 1 ppp_async
slhc 4608 1 ppp_generic
crc_ccitt 1024 1 ppp_async


再起動すると、ドライバが自動で読み込まれます。
root@OpenWrt:/# lsmod
Module Size Used by Tainted: P
mmc_drv 15040 0
ath_ahb 95616 0
wlan_xauth 480 0
wlan_wep 4000 0
wlan_tkip 9824 0
wlan_ccmp 5408 0
wlan_acl 1888 0
ath_rate_minstrel 7840 1
ath_hal 136832 3 ath_ahb,ath_rate_minstrel
wlan_scan_sta 8736 0
wlan_scan_ap 2624 0
wlan 147232 10 ath_ahb,wlan_xauth,wlan_wep,wlan_tkip,wlan_ccmp,wlan_acl,ath_rate_minstrel,wlan_scan_sta,wlan_scan_ap
ppp_async 9664 0
ppp_generic 23392 1 ppp_async
slhc 4608 1 ppp_generic
crc_ccitt 1024 1 ppp_async
nfsd 205664 0
exportfs 3776 1 nfsd
nfs 225984 0
lockd 54928 2 nfsd,nfs
sunrpc 150496 3 nfsd,nfs,lockd
ext2 45936 0
nls_iso8859_1 2880 0
nls_cp437 4416 0
nls_base 4416 2 nls_iso8859_1,nls_cp437

/devを確認すると、mmc・mmc0からmmc3までがあります。
root@OpenWrt:/# ls /dev
console mmc mtd0ro mtd3ro mtdblock1 ppp ttyS0
full mmc0 mtd1 mtd4 mtdblock2 ptmx urandom
kmem mmc1 mtd1ro mtd4ro mtdblock3 pts zero
kmsg mmc2 mtd2 mtd5 mtdblock4 random
log mmc3 mtd2ro mtd5ro mtdblock5 shm
mem mtd0 mtd3 mtdblock0 null tty

catで/dev/mmcを見ると、カーソルがくるくる動いているので、ctrl+cでとめました。
root@OpenWrt:/dev# cat mmc

/dev/mmc0は、No such device or addressとなり使えません。
root@OpenWrt:/# cat /dev/mmc0
cat: /dev/mmc0: No such device or address

このため、/dev/mmcをmountすると、mount出来ます。
root@OpenWrt:/# mount -t ext2 /dev/mmc /mnt
EXT2-fs warning: checktime reached, running e2fsck is recommended

OpenWRTをインストールしたLaFoneraでは、SDカードが使えることがわかりました。
次は、DD-WRTをインストールしたLaFoneraと、WHR-HP-G54で使えるようにしていきます。

スポンサーサイト

PageTop

コメント


管理者にだけ表示を許可する
 

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。