OpenWrt Forum Archive

Topic: Buffalo WLA-G54 only accessible in failsafe mode

The content of this topic has been archived on 23 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Hi!

Today, I tried to update my Buffalo WLA-G54 from White Russian to Kamikaze, first uploading Kamikaze ( http://downloads.openwrt.org/kamikaze/8 … uashfs.trx ) using the old webif. But afterwards, my access point is not responding at 192.168.1.1 any more.

Using wireshark, I only see a UDP package saying "Press reset now, to enter Failsafe!". When I press reset then, the AP is responding to pings and I can connect via telnet, printing out version infomation KAMIKAZE (8.09, r14511).

In failsafe mode, I tried to reflash using the following command I found in the wiki: wget http://192.168.1.2/openwrt-brcm-2.4-squashfs.trx -O - | mtd -e linux -r write - linux

But afterwards the same problem, my AP does not seem to boot up, since I can't ping/telnet to 192.168.1.1. It only sends the "Press reset now, to enter Failsafe!" UDP package and afterwards a lot of DHCP Discover packages.

Writing back White Russian, everything works fine. Any hint, how to debug this?

Greetings,
Chol

Thanks to MinXu, I was able to fix this by booting in failsafe mode, doing a mount_root and editing /jffs/etc/config/network.

I had to comment out the vlan stuff and change the appropriate devices.

#### VLAN configuration
#config switch eth0
#       option vlan0    "1 2 3 4 5*"
#       option vlan1    "0 5"


#### Loopback configuration
config interface loopback
        option ifname   "lo"
        option proto    static
        option ipaddr   127.0.0.1
        option netmask  255.0.0.0


#### LAN configuration
config interface lan
        option type     bridge
        option ifname   "eth0 eth2"
        option proto    static
        option ipaddr   192.168.1.10
        option netmask  255.255.255.0
        option gateway  192.168.1.1
        option dns      "192.168.1.1"


#### WAN configuration
#config interface        wan
#        option ifname   "eth2"
#       option proto    dhcp

Now I can access the device as usual, but LuCI shows no WiFi device. :-( What may be the cause of this? Here's my dmesg:

CPU revision is: 00024000
Enabling BCM4710A0 cache workarounds.
Primary instruction cache 8kB, physically tagged, 2-way, linesize 16 bytes.
Primary data cache 4kB, 2-way, linesize 16 bytes.
Linux version 2.4.35.4 (nbd@baustelle) (gcc version 3.4.6 (OpenWrt-2.0)) #51 Sat
 Feb 14 23:44:13 CET 2009
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: root=/dev/mtdblock2 rootfstype=squashfs,jffs2 init=/etc/pre
init noinitrd console=ttyS0,115200
CPU: BCM4710 rev 0 at 125 MHz
Using 62.400 MHz high precision timer.
!unable to setup serial console!
Calibrating delay loop... 82.94 BogoMIPS
Memory: 14260k/16384k available (1425k kernel code, 2124k reserved, 100k data, 8
4k 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...  unavailable.
POSIX conformance testing by UNIFIX
PCI: Initializing host
PCI: Fixing up bus 0
PCI: Fixing up bridge
PCI: Setting latency timer of device 01:00.0 to 64
PCI: Fixing up bus 1
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
Registering mini_fo version $Id$
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 MANY_PORTS SHARE_IRQ SERIAL_PCI en
abled
b44.c:v0.93 (Mar, 2004)
PCI: Setting latency timer of device 00:02.0 to 64
eth0: Broadcom 47xx 10/100BaseT Ethernet 00:90:4c:49:00:2a
PCI: Setting latency timer of device 00:08.0 to 64
eth1: Broadcom 47xx 10/100BaseT Ethernet 00:90:4c:4a:00:2a
 Amd/Fujitsu Extended Query Table v1.0 at 0x0040
Physically mapped flash: JEDEC Device ID is 0xCA. Assuming broken CFI table.
Physically mapped flash: Swapping erase regions for broken CFI table.
number of CFI chips: 1
cfi_cmdset_0002: Disabling fast programming due to code brokenness.
Flash device: 0x400000 at 0x1fc00000
bootloader size: 262144
Physically mapped flash: Filesystem type: squashfs, size=0x1814cb
Creating 5 MTD partitions on "Physically mapped flash":
0x00000000-0x00040000 : "cfe"
0x00040000-0x003f0000 : "linux"
0x000bb000-0x00240000 : "rootfs"
mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-o
nly
0x003f0000-0x00400000 : "nvram"
0x00240000-0x003f0000 : "rootfs_data"
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)
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: 84k freed
Warning: unable to open an initial console.
Algorithmics/MIPS FPU Emulator v1.5
diag: Detected 'Buffalo (unknown, BCM4710)'
b44: eth0: Link is up at 100 Mbps, full duplex.
b44: eth0: Flow control is off for TX and off for RX.
roboswitch: Probing device eth0: No Robo switch in managed mode found
roboswitch: Probing device eth1: <3>roboswitch: [switch-robo.c:189] timeout in r
obo_reg!
roboswitch: [switch-robo.c:189] timeout in robo_reg!
roboswitch: [switch-robo.c:189] timeout in robo_reg!
roboswitch: [switch-robo.c:189] timeout in robo_reg!
roboswitch: [switch-robo.c:189] timeout in robo_reg!
found!
mini_fo: using base directory: /
mini_fo: using storage directory: /jffs
jffs2.bbc: SIZE compression mode activated.
b44: eth0: Link is up at 100 Mbps, full duplex.
b44: eth0: Flow control is off for TX and off for RX.
device eth0 entered promiscuous mode
br-lan: port 1(eth0) entering learning state
br-lan: port 1(eth0) entering forwarding state
br-lan: topology change detected, propagating
br-lan: port 1(eth0) entering disabled state
br-lan: port 1(eth0) entering learning state
br-lan: port 1(eth0) entering forwarding state
br-lan: topology change detected, propagating
PCI: Setting latency timer of device 01:01.0 to 64
PCI: Enabling device 01:01.0 (0004 -> 0006)
PCI/DMA
wl0: wlc_attach: failed with err 13
wl%d: 4.150.10.5 driver failed with code 13
unregister_netdevice: device wl%d/80236620 never was registered
Memory leak of bytes -283
CSLIP: code copyright 1989 Regents of the University of California
PPP generic driver version 2.4.2
ip_tables: (C) 2000-2002 Netfilter core team
ip_conntrack version 2.1 (5953 buckets, 5953 max) - 360 bytes per conntrack
No Broadcom devices found.

(Last edited by Chol on 25 Mar 2009, 12:52)

Hi All,
I thought I'd append my experiences here as the above code is useful as a reference.

So running Kamikaze on the Buffalo WLA-G54.
A number of problems exist. As Chol found out, above, the default setup is for vlans and it doesn't play nicely with vlans so whichever image you choose it initially won't boot up to a usuable state since you won't be able to access it.
This can be solved however as Chol showed.
Boot into failsafe mode by hitting the reset button at the right time as decribed here:

http://wiki.openwrt.org/oldwiki/openwrt … leshooting

There is no danger of wiping the nvram since the bios in the WLA-G54 doesn't do that.

Issue a 'mount_root' command and then edit the jffs/etc/config/network file. The only important part of the file to change is the line:

option ifname   "eth0.0 eth2"

Change it to:

option ifname   "eth0"

There is no need to include eth2 (the wireless interface) since the driver doesn't suport it!
Which is the second problem the Broadcom 2.4 branch driver no longer supports the chipset in the WLA-G54.
See this:

https://dev.openwrt.org/ticket/3879

But, as you can see from the above post, there is a solution to this aswell. A legacy driver is now included in the 2.6 branch so we can just use that.

Unfortunately that is where probelm three comes in. In the 2.6 branch the GPIO mapping for the WLA-G54 is wrong causing the reset button not to work and hence you can't get into failsafe mode to edit the network config file. Bah!

So, anyone got any suggestions?
Remap the GPIOs? Get into failsafe mode without the reset button? Use a version from the 2.4 branch which still supported the old chipset? Load up a different driver?

Any help much appreciated.

Steve

Hi Again,
For anyone else trying to get Kamikaze to work on a WLA-G54;
Kamikazi 7.09 has version 4.80.53.0-1 of the Broadcom driver in the 2.4 branch and that seems to support the wireless chipset no problem.

Now I just need to figure out how to setup the network config file properly.
I have three interfaces shown by ifconfig: eth0, eth1 and wl0. However the WLA-G54 doesn't have a WAN port.
eth1 has a strange MAC, as though it's an internal port. Hmm.

Steve

(Last edited by stevew on 8 Sep 2009, 21:17)

The discussion might have continued from here.