I'm trying to install OpenWRT on this hardware using "Edimax BR-6104K" target profile, since "openwrt-adm5120-br-6104k-squashfs-xmodem.bin" is the only image i can get to boot.
I've got some problem with the flash partitions, and with the IRQ assignment to the atheros miniPCI.
This is the console output:
root@OpenWrt:/# reboot
root@OpenWrt:/# adm5120_wdt: disabling watchdog timer
Restarting system.
ADM5120 Boot:
jump to linux code!!
LZMA loader for BR-6104K, Copyright (C) 2007-2008 OpenWrt.org
Looking for TRX header... found at 00012000, kernel:0000001C len:000B93E4
decompressing kernel... done!
launching kernel...
Linux version 2.6.26.5 (mattia@mattia-laptop) (gcc version 4.1.2) #5 Sun Apr 5 17:35:11 CEST 2009
console [early0] enabled
CPU revision is: 0001800b (MIPS 4Kc)
SoC : ADM5120 revision 8, running at 175MHz
Bootdev : NOR flash
Prom : Generic
Determined physical RAM map:
memory: 01000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
Normal 0 -> 4096
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0 -> 4096
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 4064
Kernel command line: console=ttyS0,115200 rootfstype=squashfs,yaffs2,jffs2 init=/etc/preinit
Primary instruction cache 8kB, VIPT, 2-way, linesize 16 bytes.
Primary data cache 8kB, 2-way, VIPT, no aliases, linesize 16 bytes
PID hash table entries: 64 (order: 6, 256 bytes)
Dentry cache hash table entries: 2048 (order: 1, 8192 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 13856k/16384k available (1818k kernel code, 2528k reserved, 316k data, 132k init, 0k highmem)
SLUB: Genslabs=6, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Mount-cache hash table entries: 512
net_namespace: 484 bytes
NET: Registered protocol family 16
ADM5120: board is 'Edimax BR-6104K'
registering PCI controller with io_map_base unset
PCI: pci_irq_map is not initialized
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 512 (order: 0, 4096 bytes)
TCP bind hash table entries: 512 (order: -1, 2048 bytes)
TCP: Hash tables configured (established 512 bind 512)
TCP reno registered
NET: Registered protocol family 1
squashfs: version 3.0 (2006/03/15) Phillip Lougher
Registering mini_fo version $Id$
JFFS2 version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
yaffs Apr 4 2009 15:41:40 Installing.
msgmni has been set to 27
io scheduler noop registered
io scheduler deadline registered (default)
Serial: AMBA driver $Revision: 1.41 $
APB:UART0: ttyS0 at MMIO 0x12600000 (irq = 9) is a AMBA
console handover: boot [early0] -> real [ttyS0]
APB:UART1: ttyS1 at MMIO 0x12800000 (irq = 10) is a AMBA
ADM5120 built-in ethernet switch driver version 0.1.1
adm5120-flash.0: probing at 0x1FC00000, size:2048KiB, width:16 bits
adm5120-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
adm5120-flash.0: CFI does not contain boot bank location. Assuming top.
adm5120-flash.0: Macronix chip detected, id:0x2249, boot location forced to bottom
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
adm5120-flash.0: found at 0x1FC00000, size:2048KiB, width:16 bits
adm5120-flash.0: adding static partitions
Creating 3 MTD partitions on "adm5120-flash.0":
0x00000000-0x00008000 : "admboot"
0x00008000-0x00010000 : "config"
0x00010000-0x00200000 : "firmware"
adm5120_wdt: Watchdog Timer version 0.1
TCP vegas registered
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
trxsplit: searching TRX header in 'admboot'
trxsplit: searching TRX header in 'config'
trxsplit: searching TRX header in 'firmware'
trxsplit: TRX header found at 0x2000
trxsplit: creating TRX partitions in 'firmware' (31,2)
Creating 2 MTD partitions on "firmware":
0x0000201c-0x000bb400 : "kernel"
mtd: partition "kernel" doesn't start on an erase block boundary -- force read-only
0x000bb400-0x001f0000 : "rootfs"
mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-only
mtd: partition "rootfs" set to be root filesystem
mtd: partition "rootfs_data" created automatically, ofs=1E0000, len=10000
0x001e0000-0x001f0000 : "rootfs_data"
VFS: Mounted root (squashfs filesystem) readonly.
Freeing unused kernel memory: 132k freed
Please be patient, while OpenWrt loads ...
Algorithmics/MIPS FPU Emulator v1.5
- preinit -
Press CTRL-C for failsafe
gpio-buttons driver version 0.1.1
input: gpio-buttons as /devices/platform/gpio-buttons/input/input0
Button Hotplug driver version 0.3.1
jffs2 not ready yet; using ramdisk
mini_fo: using base directory: /
mini_fo: using storage directory: /tmp/root
- init -
Please press Enter to activate this console.
br-lan: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature.
device eth0 entered promiscuous mode
br-lan: port 1(eth0) entering learning state
br-lan: topology change detected, propagating
br-lan: port 1(eth0) entering forwarding state
br-lan: port 1(eth0) entering disabled state
br-lan: port 1(eth0) entering learning state
br-lan: topology change detected, propagating
br-lan: port 1(eth0) entering forwarding state
ip_tables: (C) 2000-2006 Netfilter Core Team
nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
wlan: trunk
ath_hal: module license 'Proprietary' taints kernel.
ath_hal: 2008-10-02 (AR5210, AR5211, AR5212, AR5416, RF5111, RF5112, RF2413, RF5413, RF2133, RF2425, REGOPS_FUNC, DFS, XR)
ath_rate_minstrel: Minstrel automatic rate control algorithm 1.2 (trunk)
ath_rate_minstrel: look around rate set to 10%
ath_rate_minstrel: EWMA rolloff level set to 75%
ath_rate_minstrel: max segment size in the mrr set to 6000 us
wlan: mac acl policy registered
ath_pci: trunk
PCI: Enabling device 0000:00:02.0 (0000 -> 0002)
wifi%d: request_irq failed
jffs2: Too few erase blocks (1)
adm5120_wdt: enabling watchdog timer
BusyBox v1.11.2 (2009-04-05 16:36:28 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
KAMIKAZE (8.09, r15100) ----------------------------
* 10 oz Vodka Shake well with ice and strain
* 10 oz Triple sec mixture into 10 shot glasses.
* 10 oz lime juice Salute!
---------------------------------------------------
root@OpenWrt:/#
root@OpenWrt:/# cat /proc/mtd
dev: size erasesize name
mtd0: 00008000 00004000 "admboot"
mtd1: 00008000 00008000 "config"
mtd2: 001f0000 00010000 "firmware"
mtd3: 000b93e4 00010000 "kernel"
mtd4: 00134c00 00010000 "rootfs"
mtd5: 00030000 00010000 "rootfs_data"
root@OpenWrt:/#
This is the first time i try to install OpenWrt on unsupported hardware, but i have hundreads of these units and the original firmware sucks, so i have to make it work.
Honestly, i don't know where to begin... but i think i can do it with a little help... hint and references are welcome!
If this thing will work, i promise to write a detailed wiki page!!!
Mattia