おさむの日記 RSSフィード

2006-12-18

FON復活 FON復活を含むブックマーク FON復活のブックマークコメント

シリアルコンソールからファームアップデートを行い無事に復活させることができた。作業ログを書いておきます。同様のことをして必ずしも動作するとは限らないので参考程度にしてください。以下、改造、修復作業は自己責任で。

ケース前方のゴム足の下に2本のねじがある。これを外すと簡単に蓋が取れる。基盤を見ると5*2の10Pinがあるのでここに何らかの方法でレベルコンバートを行い232cへ接続する。

ヒートシンク側

   ・・
 RX・・
 TX・・
   ・・
GND・・Vcc(3.3V)
------------
ケース側

今回はたまたま手元にあった携帯電話用のシリアルケーブルを利用した。9-KEと呼ばれるケーブルが秋葉原の千石で500円程度で売っているらしい。秋月で3.3vに対応したレベルコンバーターを購入してもいいかもしれません。200円程度です。


Error

no title

Recovering a bricked Fonera – and more | gelPlog | tigerbus.de

LANDISK/serial-console - mizore Wiki

を参考にTxD,RxD,GNDを接続。上手く接続出来れば、電源投入してしばらくすると次のように表示される。

+PHY ID is 0022:5521
Ethernet eth0: MAC address 00:18:84:##:##:##
IP: 0.0.0.0/255.255.255.255, 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 1.000 seconds - enter ^C to abort

ここで1秒以上するとカーネルを読みに行ってしまうので^Cでabortさせてコマンド入力モードにする。



ブートイメージとファイルシステムをLa Foneraに読み込ませるためにTFTPサーバーを立てる。この辺りの設定は検索すると沢山でてくるので省略。ブートイメージとファイルシステムFONダウンロードからfonera_0.7.1.1.fonを持ってきた。

そのままでは使えないので、アーカイブの取り出しを行う。

$dd if=fonera_0.7.1.1.fon of=fonera_0.7.1.1.fon.tgz bs=1 skip=519

fonera_0.7.1.1.fon.tgzを展開するとkernel.lzmaとrootfs.squashfsが生成されるはず。この2つをTFTPサーバーへ放り込む。


foneraのアドレスを設定してイメージファイルの読み込み書き込みを行う。TFTPサーバーIPアドレスを192.168.1.1、La Foneraを192.168.1.2に設定した。シリアルコンソールから次のコマンドを送る。なお書き込みにかなり時間が掛かるのでハングしたのかと勘違いするがリセットなどは行わないようにする。(自分はweb経由でファーム書き換え時にハングしたものと勘違いしファイルを破壊してしまったらしい。)

RedBoot> ip_address -l 192.168.1.2/24 -h 192.168.1.1
RedBoot> load -r -b %{FREEMEMLO} kernel.lzma
RedBoot> fis create -r 0x80041000 -e 0x80041000 vmlinux.bin.l7 
RedBoot> load -r -b %{FREEMEMLO} rootfs.squashfs
RedBoot> fis create -r 0xA8030000 -e 0x00000000 rootfs

書き込みが終われば作業完了。電源再投入して正常な状態であればrootコンソールへ移行するはずである。


+PHY ID is 0022:5521
Ethernet eth0: MAC address 00:18:84:##:##:##
IP: 0.0.0.0/255.255.255.255, 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 1.000 seconds - enter ^C to abort
RedBoot> fis load -l vmlinux.bin.l7
Image loaded from 0x80041000-0x801ba000
RedBoot> exec
Now booting linux kernel:
 Base address 0x80030000 Entry 0x80041000
 Cmdline :
CPU revision is: 00019064
Primary instruction cache 16kB, physically tagged, 4-way, linesize 16 bytes.
Primary data cache 16kB, 4-way, linesize 16 bytes.
Linux version 2.4.32 (iurgi@ropero) (gcc version 3.4.6 (OpenWrt-2.0)) #9 jue nov 23 12:11:45 UTC 2006
Determined physical RAM map:
 memory: 01000000 @ 00000000 (usable)
On node 0 totalpages: 4096
zone(0): 4096 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: console=ttyS0,9600 rootfstype=squashfs,jffs2
Using 92.000 MHz high precision timer.
Calibrating delay loop... 183.50 BogoMIPS
Memory: 14188k/16384k available (1327k kernel code, 2196k reserved, 92k data, 68k init, 0k highmem)
Dentry cache hash table entries: 2048 (order: 2, 16384 bytes)
Inode cache hash table entries: 1024 (order: 1, 8192 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 4096 (order: 2, 16384 bytes)
Checking for 'wait' instruction...  available.
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
devfs: v1.12c (20020818) Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x1
JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications AB.
squashfs: version 3.0 (2006/03/15) Phillip Lougher
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with no serial options enabled
ttyS00 at 0xb1100003 (irq = 37) is a 16550A
eth0: Dropping NETIF_F_SG since no checksum feature.
eth0: Atheros AR2313: 00:18:84:##:##:##, irq 4
MTD driver for SPI flash.
spiflash: Probing for Serial flash ...
spiflash: Found SPI serial Flash.
8388608: size
Creating 8 MTD partitions on "spiflash":
0x00000000-0x00030000 : "RedBoot"
0x00030000-0x00720000 : "rootfs"
eth0: Configuring MAC for full duplex
0x001b0000-0x00720000 : "rootfs1"
0x00720000-0x00730000 : "config"
0x00730000-0x007e0000 : "vmlinux.bin.l7"
0x007e0000-0x007ef000 : "FIS directory"
mtd: partition "FIS directory" doesn't end on an erase block -- force read-only
0x007ef000-0x007f0000 : "RedBoot config"
mtd: partition "RedBoot config" doesn't start on an erase block boundary -- force read-only
0x007f0000-0x00800000 : "board_config"
Initializing Cryptographic API
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 1024 bind 2048)
ip_conntrack version 2.1 (5953 buckets, 5953 max) - 328 bytes per conntrack
ip_tables: (C) 2000-2002 Netfilter core team
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
NET4: Ethernet Bridge 008 for NET4.0
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
VFS: Mounted root (squashfs filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 68k freed
init started:  BusyBox v1.1.3 (2006.11.21-19:49+0000) multi-call binary
Algorithmics/MIPS FPU Emulator v1.5

Please press Enter to activate this console.


BusyBox v1.1.3 (2006.11.21-19:49+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

 _______  _______  _______
|   ____||       ||   _   |
|   ____||   -   ||  | |  |
|   |    |_______||__| |__|
|___|

 Fonera Firmware (Version 0.7.1 rev 1) -------------
  *
  * Based on OpenWrt - http://openwrt.org
  * Powered by FON - http://www.fon.com
 ---------------------------------------------------
root@(none):/#

取り敢えず起動するようには成ったが、ログを見るとまだ不具合がありそう。時間切れなので後ほど調査してみよう。

Connection: close