2010年4月4日日曜日

FON2405Eの中身



Softbankと「Wi-Fiバリュープラン」を契約したらLa Foneraが送られてきたので開けてみた。足4枚がネジ穴のシールを兼ねているので、はがしてT9のトルクス(ヘックスローブ)ドライバーでネジを除くだけ。

SoCはRalinkのRT3050F。MIPS 24KEcベース(MIPS32の割と新しい世代)のSoCで、シリアル、Ethernetなどルーターに必要なインターフェースがひととおり載っているらしい。

シリアルコンソールはJ2で、パラメーターは57,600の8N1。
1: +3.3V
2: RX
3: TX
4: GND
ピンの穴があいていないので、接続にはコンタクトピン(ポゴピン)を使用するなど工夫が必要。

起動メッセージは以下のとおり。U-Boot + LinuxベースのOpenWRT、というわけでいじるのは容易だろう。


U-Boot 1.1.3 (Jan 6 2010 - 07:10:30)

Board: Fonera
DRAM: 32 MB
relocate_code Pointer at: 81fac000
spi_wait_nsec: 3e
spi deice id: c2 20 15 c2 20 (2015c220)
find flash: mx25l1605d
raspi_read: from:41030000 len:1000
Using default environment


##### The CPU freq = 320 MHZ ####

SDRAM bus set to 16 bit
SDRAM size =32 Mbytes

Please choose the operation:
1: Boot system code via Flash (default).
2: Load system code then write to Flash via TFTP.
3: Entr boot command line interface.

booting from flash
## Booting image at bf020000 ...
raspi_read: from:20000 len:40
Image Name: MIPS OpenWrt Linux-2.6.21
Created: 2010-02-11 8:09:34 UTC
Image Type: MIPS Linux Kernel Image (lzma compressed)
Data Size: 613723 Bytes = 599.3 kB
Load Address: 80000000
Entry Point: 80000000
raspi_read: from:20040 len:95d5b
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 80000000) ...
## Giving linux memsize in MB, 32

Starting kernel ...


LINUX started...

THIS IS ASIC
Linux version 2.6.21 (blogic@blap4) (gcc version 4.1.2) #143 Thu Feb 11 09:09:18 CET 2010

The CPU feqenuce set to 320 MHz
CPU revision is: 0001964c
Determined physical RAM map:
memory: 02000000 @ 00000000 (usable)
Built 1 zonelists. Total pages: 8128
Kernel command line: console=ttyS1,57600n8 root=/dev/mtdblock4 init=/sbin/preinit
Primary instruction cache 32kB, physically tagged, 4-way, linesize 32 bytes.
Primary data cache 16kB, 4-way, linesize 32 bytes.
Synthesized TLB refill handler (20 instructions).
Synthesized TLB load handler fastpath (32 instructions).
Synthesized TLB store handler fastpath (32 instructions).
Synthesized TLB modify handler fastpath (31 instructions).
Cache parity protection disabled
cause = 9080002c, status = 1100ff00
PID hash table entries: 128 (order: 7, 512 bytes)
calculating r4koff... 0030d400(3200000)
CPU frequency 320.00 MHz
Using 160.000 MHz high precision timer.
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 30416k/32768k available (1689k kernel code, 2352k reserved, 186k data, 100k init, 0k highmem)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
Generic PHY: Registered new driver
NET: Registered protocol family 2
Time: MIPS clocksource has been installed.
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP reno registered
was not able to assign mahjor 200 to button chardev
ramips_gpio: done
squashfs: version 3.2-r2 (2007/01/15) Phillip Lougher
squashfs: LZMA suppport for slax.org by jro
io scheduler noop registered
io scheduler deadline registered (default)
ramips_wdt: loaded
Serial: 8250/16550 driver $Revision: 1.3 $ 2 ports, IRQ sharing disabled
serial8250: ttyS0 at I/O 0xb0000500 (irq = 37) is a 16550A
serial8250: ttyS1 at I/O 0xb0000c00 (irq = 12) is a 16550A
PPP generic driver version 2.4.2
NET: Registered protocol family 24
tun: Universal TUN/TAP device driver, 1.6
tun: (C) 1999-2004 Max Krasnyansky
deice id : c2 20 15 c2 20 (2015c220)
mx25l3205d(c2 20160000) (4096 Kbytes)
mtd .name = raspi, .size = 0x00400000 (4M) .erasesize = 0x00010000 (64K) .numeraseregions = 0
ramips_mtd: kernel size is 613787
padded kernel is 00096000
Creating 6 MTD partitions on "raspi":
0x00000000-0x00010000 : "uboot"
0x00010000-0x00020000 : "boardconfig"
0x00020000-0x00200000 : "image"
0x00020000-0x000b6000 : "linux"
mtd: partition "linux" doesn't end on an erase block -- force read-only
0x000b6000-0x001f0000 : "rootfs"
mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-only
mtd: partition "rootfs" set to be root filesystem
0x001f0000-0x00200000 : "uci_overlay"
Registered led device: power
Registered led device: wps
Registered led device: wlan
nf_conntrack version 0.5.0 (256 buckets, 2048 max)
IPv4 over IPv4 tunneling driver
ip_tables: (C) 2000-2006 Netfilter Core Team, Type=Linux
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear
All bugs added by David S. Miller
ramips: ethernet loaded
ramips_eth: loaded
VFS: Mounted root (squashfs filesystem) readonly.
Freeing unused kernel memory: 100k freed
Warning: unable to open an initial console.
Preinit complete, spawning microd
found uci_overlay -> /dev/mtd5
i found OPENWRT_UCI_OVERLAY inside /dev/mtd5
loading file zepttho 275
loading file wireless 696
loading file user 70
loading file system 72
loading file reg 16
loading file network 473
loading file led 342
loading file lang 33
loading file form 4768
loading file fonsmcd 290
loading file fon 4Algorithmics/MIPS FPU Emulator v1.5
07
loading file firewall 907
loading file passwd 149
loading file chilli.conf 566
loading fon config
Spawning syslogd
registering led wps -> /sys/class/leds/wps/
registering led wlan -> /sys/class/leds/wlan/
registering led power -> /sys/class/leds/power/
loading base firewall ...iptables: Chain already exists
done
adding zone wannet
adding zone lan
adding zone wan
adding zone hotspotwifi
adding zone hotspot
adding forwarding lan->wan
adding forwarding hotspot->wan
interface loopback
proto = static
ipaddr = 127.0.0.1
netmask = 255.0.0.0
ifname = lo
interface lan
proto = static
ipaddr = 192.168.10.1
netmask = 255.255.255.0
ifname = eth0.1
type = bridge
interface wan
proto = dhcp
ifname = eth0.2
interface hotspot
ifname = tun0
interface hotspotwifi
proto = none
ifname = ra1
net event up loopback ...bringing up lo
done
net event up lan ...bringing ueth0.1: dev_set_promiscuity(master, 1)
p eth0.1
device eth0 entered promiscuous mode
device eth0.1 entered promiscuous mode
br-lan: port 1(eth0.1) entering learning state
adding br-lan to zone lan
done
net event up wan ...bringing up eth0.2
Spawning udhcpc for eth0.2
udhcpc (v0.9.9-pre) started
Trying to connect...
sending -> "udhcpc|deconfig|eth0.2|"
adding eth0.2 to zone wan
Sending discover...
done
wifi device rt305x
type = rt305x
channel = 11
mode = 9
wifi interface public
ifname = ra1
ssid = FON_FREE_INTERNET
encryption = none
network = hotspotwifi
device = rt305x
isolate = 1
auto = 1
wifi interface private
ifname = ra0
ssid = MyPlace
encryption = wpa-wpa2
key = 4141414141
password = rahthuagho
wpa_crypto = mixed
network = lan
device = rt305x
channel = 0
mode = bgn
txpower = 100
br-lan: topology change detected, propagating
br-lan: port 1(eth0.1) entering forwarding state
rt2860v2_ap: module license 'unspecified' taints kernel.
Sending discover...
WSending discover...
0x1300 = 00064380
bringing up rt30device ra0 entered promiscuous mode
5x ...done
br-lan: port 2(ra0) entering learning state
Terminate the task(RtmpCmdQTask) with pid(202)!
Terminate the task(RtmpWscTask) with pid(203)!
br-lan: port 2(ra0) entering disabled state
W0x1300 = 00064380
br-lan: port 2(ra0) entering learning state
Trying to connect...
sending -> "udhcpc|leasefail|eth0.2|"
br-lan: topology change detected, propagating
br-lan: port 2(ra0) entering forwarding state
bringing up private ...done
configured coova for mac 00:18:84:45:F2:D9
Spawning dnsmasq
DHCP server is enabled
Spawning fonsmcd
Spawning zepttho
Spawning Onlined
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
KAMIKAZE (bleeding edge, r3313) -------------------
* 10 oz Vodka Shake well with ice and strain
* 10 oz Triple sec mixture into 10 shot glasses.
* 10 oz lime juice Salute!
---------------------------------------------------
I booted userland in 13 seconds
System bring up complete
syslogd: Jan 1 00:00:03 udhcpc[183]: udhcpc (v0.9.9-pre) started
deconfigure eth0.2
syslogd: Jan 1 00:00:03 udhcpc[183]: Sending discover...
syslogd: Jan 1 00:00:05 udhcpc[183]: Sending discover...
syslogd: Jan 1 00:00:07 udhcpc[183]: Sending discover...
syslogd: Nov 5 20:07:16 syslog: starting onlined

Now serving files from /www on :80
syslogd: Nov 5 20:07:16 dnsmasq[208]: started, version 2.45 cachesize 150
syslogd: Nov 5 20:07:16 dnsmasq[208]: compile time options: IPv6 GNU-getopt ISC-leasefile no-DBus no-I18N no-TFTP
syslogd: Nov 5 20:07:16 dnsmasq[208]: DHCP, IP range 192.168.10.50 -- 192.168.10.250, lease time 12h
syslogd: Nov 5 20:07:16 syslog: ERROR: unable access whitelist file: /etc/fon/whitelist.dnsmasq
syslogd: Nov 5 20:07:16 dnsmasq[208]: using local addresses only for domain lan
syslogd: Nov 5 20:07:16 dnsmasq[208]: reading /tmp/resolv.conf
syslogd: Nov 5 20:07:16 dnsmasq[208]: using nameserver 192.168.1.1#53
syslogd: Nov 5 20:07:16 dnsmasq[208]: using local addresses only for domain lan
syslogd: Nov 5 20:07:16 dnsmasq[208]: read /etc/hosts - 2 addresses
syslogd: Nov 5 20:07:16 dnsmasq[208]: failed to read /etc/ethers:No such file or directory
fonsmcd[209]: (Main) WARNING: SMC_find_boarddata: found board config /dev/mtd1ro
SMC_init(): called
fonsmcd[209]: (Main) MESSAGE: SMC_reload()
.W.....W.....fonsmcd[209]: (Main) WARNING: SMC_add_host: Error resolving host [cthulhu.fon.com], will try later
fonsmcd[209]: (Main) MESSAGE: SMC_retrieve_query_data()
fonsmcd[209]: (Main) WARNING: SMC_find_boarddata: found board config /dev/mtd1ro
wlanmac [00-18-84-45-f2-d9]
key_number [faebf127810b7a43e861018282881b5c03143e37abaf66a8582bec6f64dea46a]
fonsmcd[209]: (Main) WARNING: SMC_find_boarddata: found board config /dev/mtd1ro
W.....W.....W..fonsmcd[209]: (Main) CRITICAL: SMC_send_buffer: Error resolving host [cthulhu.fon.com]
...W.....W.....W...fonsmcd[209]: (Main) CRITICAL: SMC_send_buffer: Error resolving host [cthulhu.fon.com]
..W..
-------
load 7968 2752 800
ram 24072192/31248384
uptime 0 - 00:00:59
...W.....W....fonsmcd[209]: (Main) CRITICAL: SMC_send_buffer: Error resolving host [cthulhu.fon.com]
.WSending discover...
syslogd: Nov 5 20:08:13 udhcpc[183]: Sending discover...
..Sending discover...
syslogd: Nov 5 20:08:15 udhcpc[183]: Sending discover...
..Sending discover...
syslogd: Nov 5 20:08:17 udhcpc[183]: Sending discover...
W....Trying to connect...
sending -> "udhcpc|leasefail|eth0.2|"
.W...


なお、先行してでまわっているFON2305EはSoCが共通なので、FON2405Eにソフトウェア的にかぎりなく近そうだ。こちらはシリアルコンソールやJTAGのピンを立てる穴のほか、USBのパターンもついている。ネットオークションなどで安価で出回っているので、新規に入手するならFON2405Eを選ぶ理由はないだろう。

FON2305Eについては偉大な先達の記事を参照。

1 件のコメント:

  1. FON2100?をもう一台を購入しDD-WRT化しようと思ったらいつの間に販売終了になっていた。オークションでは2~3千で売っていて買う気になりません(笑)。1980円だったのにかなりショックです。FON2305Eは安いが、何か変わっているかぐぐってみたらこのサイトが出てきました。大変参考になりましたm(__)m

    これだったらDD-WRT化しても大丈夫そうですね
    10台ぐらい買っておきます^^;

    返信削除