I'm new to OpenWRT.
I spent the last couple days playing with it, and I want to share my findings
about the Frys Wireless G Router (FR-54RTR) which is a rebadged D-Link
DIR-600 A1. (The FCC ID is KA2DIR600A1.)
I started by upgrading the firmware to the 1.01 version released by D-Link.
(I'm not sure if this step can be skipped.)
ftp://ftp.dlink.com/Gateway/dir600/Firm … _101NA.zip
To install the D-Link firmware, I performed the 30-30-30 reset which
exposed the "D-LINK Firmware Upgrade System" on http://192.168.0.1/
After uploading the 1.01 firmware via the firmware upgrade pages,
I was able to update the firmware to a snapshot of OpenWRT from
http://downloads.openwrt.org/snapshots/trunk/ar71xx/
I used the snapshot from "09-Feb-2010 11:37":
openwrt-ar71xx-dir-600-a1-squashfs-universal.bin
The one problem I couldn't get past is that the driver for eth1 (ag71xx) kept
crashing on me when I tried to upload more than a few KBytes of data to the
WAN. I'm hoping this is the same issue being diagnosed on the Mikrotik
RB450G.
This crash would require a reboot to clear.
ar71xx-wdt: enabling watchdog timer
------------[ cut here ]------------
WARNING: at net/sched/sch_generic.c:261 0x801f8674()
NETDEV WATCHDOG: eth1 (ag71xx): transmit queue 0 timed out
Modules linked in: nf_nat_tftp nf_conntrack_tftp nf_nat_irc nf_conntrack_irc nf_nat_ftp nf_conntrack_ftp ipt_MASQUERADE iptable_nat nf_nat xt_NOTRACK iptable_raw xt_state nf_conntrack_ipv4 nf_defrag_ipv4 nf_conntrack pppoe pppox ipt_REJECT xt_TCPMSS ipt_LOG xt_multiport xt_mac xt_limit iptable_mangle iptable_filter ip_tables xt_tcpudp x_tables ppp_async ppp_generic slhc crc_ccitt leds_gpio button_hotplug gpio_buttons input_polldev input_core
Call Trace:[<80068304>] 0x80068304
[<80068304>] 0x80068304
[<8007cc98>] 0x8007cc98
[<801f8674>] 0x801f8674
[<8007cd18>] 0x8007cd18
[<801e3dbc>] 0x801e3dbc
[<801f8674>] 0x801f8674
[<8009549c>] 0x8009549c
[<8007a3a4>] 0x8007a3a4
[<801f8510>] 0x801f8510
[<80087380>] 0x80087380
[<80070b24>] 0x80070b24
[<800824bc>] 0x800824bc
[<8008259c>] 0x8008259c
[<8006082c>] 0x8006082c
[<80091b00>] 0x80091b00
[<80060a00>] 0x80060a00
[<8006b59c>] 0x8006b59c
[<8006c8fc>] 0x8006c8fc
[<80060a20>] 0x80060a20
[<802cda48>] 0x802cda48
[<802cd3a8>] 0x802cd3a8
When running the D-Link firmware, I would have file transfers
to the WAN stall after a couple hundred meg. The transfer would
die, but I didn't need to reboot the router for new connections
to work.
Otherwise, the performance of OpenWRT seemed to be on par with
the D-Link.
================================================================================
Performance numbers
For each test I transferred about 100-200 MB at a time with SCP.
Numbers are just to show that other than uploads to WAN,
performance was comparable.
OpenWRT firmware KAMIKAZE (bleeding edge, r19557)
1.9 MB/s download (from wan) wireless 11ng (g) - 40-50% util
2.7 MB/s download (from lan) wireless 11ng (g) - 40-50% util
2.7 MB/s upload (to lan) wireless 11ng (g) - 30-40% util
6.1 MB/s switch (port 1 to 3)
10.5 MB/s download (from wan) (80% CPU utilization)
D-Link firmware 1.01NA
1.9 MB/s download (from wan) wireless 11ng (g)
2.6 MB/s upload (to wan) wireless 11ng (g)
transferred 1635MB in 10:35; didn't stall
2.7 MB/s download (from lan) wireless 11ng (g)
2.5 MB/s upload (to lan) wireless 11ng (g)
2.7 MB/s download (from lan) wireless 11ng (g) WPA2-AES
2.5 MB/s upload (to lan) wireless 11ng (g) WPA2-AES
5.4 MB/s switch (port 1 to 4)
5.7 MB/s switch (port 1 to 3)
8.6 MB/s download (from wan)
11 MB/s [until it stalls] upload (to wan)
================================================================================
Linux version 2.6.32.7 (buildbot@faraday) (gcc version 4.3.3 (GCC) ) #1 Tue Feb 9 11:34:20 UTC 2010
prom: fw_arg0=00000007, fw_arg1=a1f6ffb0, fw_arg2=a1f70460, fw_arg3=00000004
MyLoader: sysp=bf005e00, boardp=df00d700, parts=b007700f
bootconsole [early0] enabled
CPU revision is: 00019374 (MIPS 24Kc)
Atheros AR7240 rev 2, CPU:350.000 MHz, AHB:175.000 MHz, DDR:350.000 MHz
Determined physical RAM map:
memory: 02000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
Normal 0x00000000 -> 0x00002000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0x00000000 -> 0x00002000
On node 0 totalpages: 8192
free_area_init_node: node 0, pgdat 802cba80, node_mem_map 81000000
Normal zone: 64 pages used for memmap
Normal zone: 0 pages reserved
Normal zone: 8128 pages, LIFO batch:0
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128
Kernel command line: rootfstype=squashfs,yaffs,jffs2 noinitrd console=ttyS0,115200 board=DIR-600-A1 mtdparts=spi0.0:192k(u-boot)ro,64k(nvram)ro,896k(kernel),2816k(rootfs),64k(mac)ro,64k(art)ro,3712k@0x40000(firmware)
PID hash table entries: 128 (order: -3, 512 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
Writing ErrCtl register=00000000
Readback ErrCtl register=00000000
Memory: 29348k/32768k available (2090k kernel code, 3420k reserved, 390k data, 152k init, 0k highmem)
SLUB: Genslabs=7, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Hierarchical RCU implementation.
NR_IRQS:56
Calibrating delay loop... 232.65 BogoMIPS (lpj=1163264)
Mount-cache hash table entries: 512
devtmpfs: initialized
NET: Registered protocol family 16
MIPS: machine is D-Link DIR-600 rev. A1
registering PCI controller with io_map_base unset
bio: create slab <bio-0> at 0
PCI: fixup device 0000:00:00.0
pci 0000:00:00.0: reg 10 64bit mmio: [0x000000-0x00ffff]
pci 0000:00:00.0: supports D1
pci 0000:00:00.0: PME# supported from D0 D1 D3hot
pci 0000:00:00.0: PME# disabled
PCI: mapping irq 48 to pin1@0000:00:00.0
Switching to clocksource MIPS
NET: Registered protocol family 2
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
NET: Registered protocol family 1
squashfs: version 4.0 (2009/01/31) Phillip Lougher
Registering mini_fo version $Id$
JFFS2 version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
yaffs Feb 9 2010 11:29:43 Installing.
msgmni has been set to 57
io scheduler noop registered
io scheduler deadline registered (default)
Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0x18020000 (irq = 11) is a 16550A
console [ttyS0] enabled, bootconsole disabled
Atheros AR71xx SPI Controller driver version 0.2.4
m25p80 spi0.0: w25x32 (4096 Kbytes)
7 cmdlinepart partitions found on MTD device spi0.0
Creating 7 MTD partitions on "spi0.0":
0x000000000000-0x000000030000 : "u-boot"
0x000000030000-0x000000040000 : "nvram"
0x000000040000-0x000000120000 : "kernel"
0x000000120000-0x0000003e0000 : "rootfs"
mtd: partition "rootfs" set to be root filesystem
mtd: partition "rootfs_data" created automatically, ofs=249000, len=197000
0x000000249000-0x0000003e0000 : "rootfs_data"
0x0000003e0000-0x0000003f0000 : "mac"
0x0000003f0000-0x000000400000 : "art"
0x000000040000-0x0000003e0000 : "firmware"
ag71xx_mdio: probed
eth0: Atheros AG71xx at 0xba000000, irq 5
eth1: Atheros AG71xx at 0xb9000000, irq 4
Atheros AR71xx hardware watchdog driver version 0.1.0
ar71xx-wdt: timeout=15 secs (max=24)
TCP westwood registered
NET: Registered protocol family 17
Bridge firewalling registered
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 on device 31:3.
devtmpfs: mounted
Freeing unused kernel memory: 152k freed
gpio-buttons driver version 0.1.2
input: gpio-buttons as /devices/platform/gpio-buttons/input/input0
Button Hotplug driver version 0.3.1
eth0: link up (1000Mbps/Full duplex)
Registered led device: dir-600-a1:green:power
Registered led device: dir-600-a1:amber:power
Registered led device: dir-600-a1:blue:wps
mini_fo: using base directory: /
mini_fo: using storage directory: /jffs
eth0: link down
eth0: link up (1000Mbps/Full duplex)
device eth0 entered promiscuous mode
br-lan: port 1(eth0) entering forwarding state
eth1: link up (100Mbps/Full duplex)
PPP generic driver version 2.4.2
ip_tables: (C) 2000-2006 Netfilter Core Team
NET: Registered protocol family 24
nf_conntrack version 0.5.0 (460 buckets, 1840 max)
CONFIG_NF_CT_ACCT is deprecated and will be removed soon. Please use
nf_conntrack.acct=1 kernel parameter, acct=1 nf_conntrack module option or
sysctl net.netfilter.nf_conntrack_acct=1 to enable it.
ar71xx-wdt: enabling watchdog timer
root@OpenWrt:/# cat /proc/cpuinfo
system type : Atheros AR7240 rev 2
machine : D-Link DIR-600 rev. A1
processor : 0
cpu model : MIPS 24Kc V7.4
BogoMIPS : 232.65
wait instruction : yes
microsecond timers : yes
tlb_entries : 16
extra interrupt vector : yes
hardware watchpoint : yes, count: 4, address/irw mask: [0x0000, 0x0168, 0x0af0, 0x09c8]
ASEs implemented : mips16
shadow register sets : 1
core : 0
VCED exceptions : not available
VCEI exceptions : not available
root@OpenWrt:/# cat /proc/meminfo
MemTotal: 29500 kB
MemFree: 18484 kB
Buffers: 1032 kB
Cached: 3644 kB
SwapCached: 0 kB
Active: 3680 kB
Inactive: 2432 kB
Active(anon): 1496 kB
Inactive(anon): 0 kB
Active(file): 2184 kB
Inactive(file): 2432 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 1448 kB
Mapped: 876 kB
Shmem: 60 kB
Slab: 3248 kB
SReclaimable: 764 kB
SUnreclaim: 2484 kB
KernelStack: 240 kB
PageTables: 184 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 14748 kB
Committed_AS: 3744 kB
VmallocTotal: 1048372 kB
VmallocUsed: 612 kB
VmallocChunk: 1041148 kB
root@OpenWrt:/#
root@OpenWrt:/tmp# lspci
00:00.0 Network controller: Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) (rev 01)