I wonder if anybody ever tried to get this one working. Google wasn't very helpful.
When I try to flash the router with either openwrt-wrt54g3g-squashfs.bin or openwrt-wrt54g3g-em-squashfs.bin (from /kamikaze/8.09/brcm-2.4/) the router doesn't accept the firmware at all. I noticed that the headers changed so I tried both modifying the firmware header and using the addpattern tool (from the original linksys firmware) to get it working. With a firmware modified that way the router accepts the firmware but when it reboots I get the following output:
CFE version 1.0.37 for BCM947XX (32bit,SP,LE)
Build Date: Thu Aug 7 16:44:55 CST 2008 (root@localhost.localdomain)
Copyright (C) 2000,2001,2002,2003 Broadcom Corporation.
Initializing Arena
Initializing Devices.
No DPN
This is a Parallel Flash
Boot partition size = 262144(0x40000)
Try 4: vendor id = 0x0001, device id = 0x2201
Flash type is "S29GL128N10TFI010 8Mx16"
Total size is 0x1000000.
Block size is 0x20000.
Total blocks are 122. (Image 1 are 61(7995392), Image 2 is 61(7995392))
Partition information:
boot #00 00000000 -> 0003FFFF (262144)
trx #01 00040000 -> 0004001F (32)
os #02 00040020 -> 007DFFFF (7995360)
trx2 #03 007E0000 -> 007E001F (32)
os2 #04 007E0020 -> 00F7FFFF (7995360)
lang #05 00F80000 -> 00FF7FFF (491520)
nvram #06 00FF8000 -> 00FFFFFF (32768)
Partition information:
boot #00 00000000 -> 0003FFFF (262144)
trx #01 00040000 -> 007DFFFF (7995392)
trx2 #02 007E0000 -> 00F7FFFF (7995392)
lang #03 00F80000 -> 00FF7FFF (491520)
nvram #04 00FF8000 -> 00FFFFFF (32768)
et0: Broadcom BCM47xx 10/100 Mbps Ethernet Controller 4.150.10.5
et1: Broadcom BCM47xx 10/100 Mbps Ethernet Controller 4.150.10.5
CPU type 0x29006: 264MHz
Total memory: 32768 KBytes
Total memory used by CFE: 0x80700000 - 0x807A51F0 (676336)
Initialized Data: 0x8073B950 - 0x8073E9A0 (12368)
BSS Area: 0x8073E9A0 - 0x8073F1F0 (2128)
Local Heap: 0x8073F1F0 - 0x807A31F0 (409600)
Stack Area: 0x807A31F0 - 0x807A51F0 (8192)
Text (code) segment: 0x80700000 - 0x8073B950 (244048)
Boot area (physical): 0x007A6000 - 0x007E6000
Relocation Factor: I:00000000 - D:00000000
Boot version: v5.5
The boot is CFE
mac_init(): Find mac [00:23:69:5C:87:FD] in location 0
Nothing...
CMD: [ifconfig eth0 -addr=192.168.1.1 -mask=255.255.255.0]
Device eth0: hwaddr 00-23-69-5C-87-FD, ipaddr 192.168.1.1, mask 255.255.255.0
gateway not set, nameserver not set
CMD: [go;]
Check CRC of image1
Len: 0x211000 (2166784) (0xBC040000)
Offset0: 0x1C (28) (0xBC04001C)
Offset1: 0x904 (2308) (0xBC040904)
Offset2: 0x7B000 (503808) (0xBC0BB000)
Offset3: 0x88B1F (559903) (0xBC0C8B1F)
Invalid code pattern in the header. ([43 FFFFFFA3 FFFFFFE3 16] != [3G2V])
I/O error
Check CRC of image2
Len: 0x41D000 (4313088) (0xBC7E0000)
Offset0: 0x20 (32) (0xBC7E0020)
Offset1: 0xA28 (2600) (0xBC7E0A28)
Offset2: 0xC4434 (803892) (0xBC8A4434)
Offset3: 0x41C434 (4310068) (0xBCBFC434)
Version: v3.0.24 #006
Stable: 0x73
Try: 0x74, 0xFF, 0xFF
33 47 32 56 00 00 00 00 08 08 07 03 00 18 55 32 4E 44 00 06 1F 00 73 00 74 00 FF FF FF FF 00 00
Reset flag to 0xFF to avoid CRC error
33 47 32 56 00 00 00 00 08 08 07 03 00 18 55 32 4E 44 00 06 1F 00 FF FF FF FF FF FF FF FF 00 00
Header CRC: 0x2B67070F
Calculate CRC: 0x2B67070F
Image 2 is OK
CMD: [copy flash1.trx2 flash1.trx]
Flash 1 = [flash1.trx2]
Flash 2 = [flash1.trx]
131072 bytes read. (0xBC040000)
Copy 4313088 bytes from flash1.trx2 to flash1.trx.
So the CFE somehow doesn't like the new firmware. Any ideas on how to generate a compatible firmware or how to get the CFE to boot the other firmware anyways?