The sources to the wired networking are available in Linksys source package. AFAIK, Linux should detect and use the wired interface in the MIPS core out of the box. The switch sources are not in the vanilla tree, but are available. OpenWrt has them in the 2.4 sources, not sure if they are usable in 2.6 as well, but I don't see any reason why they shouldn't be.

So, wired network should work fine with 2.6 kernel. Problem with binary blob is only with the wireless, and CFE won't help here.

If you don't want/need wireless, go for 2.6. But I don't suppose anyone would buy WRT610N to use it as a gigabit switch. There are cheaper solutions out there...

Regards

Tomas Kopal

On 2.10.2009 21:56, Jason wrote:
Okay, so digging around I see that the networking for the 2.6 series kernel is being held up by the fact that linksys has only released 2.4 series kernel firmwares that contain binary blobs for talking to the broadcom chips. Bummer.

I've found this [1] (CFE bootloader source code), which appears to be a BSD-like license. It has source for interacting with the wired chipset in cfe-1.4.2/cfe/dev/{bcm5700.h,dev_bcm5700.c,dev_bcm5780_ht1000.c}. I don't think this source is the same version as what is on my WRT610N based on the following:

### Begin #########################################################
CFE version 1.0.37 for BCM947XX (32bit,SP,LE)
Build Date: Wed Jun 25 19:11:21 CST 2008 (l...@team2-complier)
Copyright (C) 2000,2001,2002,2003 Broadcom Corporation.

Initializing Arena
Initializing PCI. [normal]
PCI bus 0 slot 0/0: vendor 0x14e4 product 0x0800 (flash memory, rev 0x02)
PCI bus 0 slot 1/0: vendor 0x14e4 product 0x471f (ethernet network)
PCI bus 0 slot 2/0: vendor 0x14e4 product 0x471a (USB serial bus, interface 0x10
, rev 0x02)
PCI bus 0 slot 2/1: vendor 0x14e4 product 0x471a (USB serial bus, interface 0x20
, rev 0x02)
PCI bus 0 slot 3/0: vendor 0x14e4 product 0x471b (USB serial bus, rev 0x02)
PCI bus 0 slot 4/0: vendor 0x14e4 product 0x0804 (PCI bridge, rev 0x02)
PCI bus 0 slot 5/0: vendor 0x14e4 product 0x0816 (MIPS processor, rev 0x02) PCI bus 0 slot 6/0: vendor 0x14e4 product 0x471d (IDE mass storage, rev 0x02) PCI bus 0 slot 7/0: vendor 0x14e4 product 0x4718 (network/computing crypto, rev
0x02)
PCI bus 0 slot 8/0: vendor 0x14e4 product 0x080f (RAM memory, rev 0x02)
PCI bus 0 slot 9/0: vendor 0x14e4 product 0x471e (class 0xfe, subclass 0x00, rev
 0x02)
Initializing Devices.

No DPN
This is a Parallel Flash
Boot partition size = 262144(0x40000)
Partition information:
boot    #00   00000000 -> 0003FFFF  (262144)
trx     #01   00040000 -> 0004001B  (28)
os      #02   0004001C -> 007F7FFF  (8093668)
nvram   #03   007F8000 -> 007FFFFF  (32768)
Partition information:
boot    #00   00000000 -> 0003FFFF  (262144)
trx     #01   00040000 -> 007F7FFF  (8093696)
nvram   #02   007F8000 -> 007FFFFF  (32768)
PCI bus 0 slot 1/0: pci_map_mem: attempt to map 64-bit region tag=0x800 @ addr=1
8010004
PCI bus 0 slot 1/0: pci_map_mem: addr=0x18010004 pa=0x18010000
ge0: BCM5750 Ethernet at 0x18010000
CPU type 0x2901A: 300MHz
Total memory: 65536 KBytes

Total memory used by CFE:  0x80700000 - 0x807A60E0 (680160)
Initialized Data:          0x8073A2E0 - 0x8073E570 (17040)
BSS Area:                  0x8073E570 - 0x807400E0 (7024)
Local Heap:                0x807400E0 - 0x807A40E0 (409600)
Stack Area:                0x807A40E0 - 0x807A60E0 (8192)
Text (code) segment:       0x80700000 - 0x8073A2E0 (238304)
Boot area (physical):      0x007A7000 - 0x007E7000
Relocation Factor:         I:00000000 - D:00000000

Boot version: v4.2
The boot is CFE

mac_init(): Find mac [00:23:69:XX:XX:XX] in location 1
Nothing...
country_init(): Find country code in location 0
The country is same
CMD: [ifconfig eth0 -addr=192.168.1.1 -mask=255.255.255.0]
eth0: Link speed: 1000BaseT FDX
Device eth0: hwaddr 00-23-69-XX-XX-XX, ipaddr 192.168.1.1, mask 255.255.255.0
        gateway not set, nameserver not set
CMD: [go;]
Check CRC of image1
  Len:     0xD8C00      (887808)        (0xBC040000)
  Offset0: 0x1C         (28)            (0xBC04001C)
  Offset1: 0x90C        (2316)  (0xBC04090C)
  Offset2: 0xD8C00      (887808)        (0xBC118C00)
  Header CRC:    0xDD43689A
  Calculate CRC: 0xDD43689A
Image 1 is OK
Try to load image 1.
CMD: [load -raw -addr=0x807a60e0 -max=0x3a0000 :]
Loader:raw Filesys:tftp Dev:eth0 File:: Options:(null)
Loading: Failed.
Could not load :: Interrupted
CFE> ^C
CFE>
### End ###########################################################

Basically:

CFE version 1.0.37 for BCM947XX (32bit,SP,LE)

and

Boot version: v4.2

But the above mentioned files may provide enough info to modify the tg3 driver successfully... I'm not familiar enough with the guts of this stuff to know if I have the right thing.

Any pointers before I wrecklessly dive in and break things?

thx,

Jason.


[1] - http://www.broadcom.com/support/license.php?file=cfe-1.4.2-src.tar.bz2
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to