OpenWrt Forum Archive

Topic: New Broadcom BCM63xx codebase with GPL'd Ethernet and USB support

The content of this topic has been archived between 8 Feb 2018 and 7 May 2018. Unfortunately there are posts – most likely complete pages – missing.

It seems that there is a bug also, on NB4 boards ( https://dev.openwrt.org/ticket/4987  and  http://www.neufbox4.org/forum/viewtopic … 7&p=18 ) , and in Comtrend 536 boards ( http://www.adslzone.net/posts189062-50.html )

I can't test this images, because I burned TX pin on my router board. I can send commands over terminal but I can't receive reponses on it.

by other hand i tryed to make a patch with a extra mtd partition, i labeled as "linux", and I adedd /lib/upgrade/platform.sh script and "sysupgrade" works fine it works fine.

Finaly i tried to upgrade with Luci, if i have a swap partition it works fine, but if no swap partition present upgrade hangs router


Edit:
it seems it works fine on 536 boards,  i made mistakes upgrading sources.

(Last edited by t3l3m4k0 on 2 May 2009, 10:22)

@t3l3m4ko: any chance of translating the important points of the posts for those of use who only speak english?  I'm afraid I can't follow enough to tell what's going on. 

I'm not sure why a 536 would be a problem though.  That's the source code you made available for me, and that's what the patch is based on (and works on the 5621, which TTBK is practically the same board. (Except for the mini-PCI and maybe the built-in serial level shifter, and maybe slave USB, I believe)

(Last edited by cshore on 2 May 2009, 05:19)

What size image is the 536 person trying to flash?  I can see from the mtd sizes that the rootfs size exceeds the available space; the question is whether that is because of a logic error, or because of a too large rootfs.

BTW sorry for not responding sooner.  It seems I got an email from subscribing that I ignored and the board doesn't send anything more until you login.  PITA.  I hate web forums.

(Last edited by cshore on 2 May 2009, 05:24)

cshore wrote:

@t3l3m4ko: any chance of translating the important points of the posts for those of use who only speak english?  I'm afraid I can't follow enough to tell what's going on. 

I'm not sure why a 536 would be a problem though.  That's the source code you made available for me, and that's what the patch is based on (and works on the 5621, which TTBK is practically the same board. (Except for the mini-PCI and maybe the built-in serial level shifter, and maybe slave USB, I believe)

@ cshore,

I recovered router serial  port, now i can see reponses from it. When i send firmware from last trunk router goes to kernel panik, loool!!! partition offsets and lenghts are wrong , i made mistakes upgrading bcm_tag.h.

I upgraded trunk, but now i have errors compiling libstdc++, i must do make clean on trunk. I will comment results.

As you says 536 and 5621 uses same board, last one without mini-PCI slot.

Thanks for your interest.

(Last edited by t3l3m4k0 on 2 May 2009, 10:17)

It is just an enquiry on 2.6 kernel usage and Broadcom 43XX chipset to crack WEP and WPA encryption of wifi networks.

You know the aircrack team issued a new version aircrack-ng 1.0 rc3 a few weeks ago. I have an intention to run the aircrack-ng application on my wrt54gl to crack some WEP and WPA encription based wifi networks. The chipset what the wifi router contains is Broadcom BCM5352EKBP, which is exactly the Broadcom 4318-as 802.11 PHY.

To accomlish packet-injection to the network traffic I have to use additionally the b43 driver. The application needs at leat 2.6.26 kernel. The last issued and stable kernel what OpenWrt is suggest is  2.4. What would you say if I ask you on the 2.6 kernel based tomato formware publication? Please suggest me a solution. Every piece of information is well appreciated. thank you for your effort.

Ok, we've got a problem with the imagtags.

Alice Gate seems to want the reserved1 (all 74 bytes?) section of the imagetag, so we put the moved rootfs length offset in reserved2 and reserved3, however the NeufBox4 wants reserved2 for some additional CRC's (kernel and rootfs in addition to entire image).  This means we either need to have the real rootfs offset and length in reserved1, at some point that the Alice Gate isn't using (if it's not using the entire section), or we need different bcm_tag.h and imagetag.c imagetag headers for different 63xx routers.  Or another option, I haven't thought of?

Hi,

I am trying to create the openwrt image files for the brcm63xx routers (SpeedTouch 580 that has a cpu bcm6345KPB).

I downloaded the kamikaze_8.09 sources files to create them.

For that, I use the Mandriva 2008.0 linux operating system.

Also, I applied all the changesets from changeset_r11177.zip to changeset_r15254.zip to the kamikaze_8.09 sources files.

First, when I make the menuconfig with the following command:

make menuconfig

it abort with the message that it could not find the package/mac80211/Config.in file.

To bypass this abort, I created an empty Config.in file in the package/mac80211 directory.

Please, what can I do to resolve in adequate form this process abort.........?

Then, when the menuconfig appears I set it with the following options:

- Target System (Broadcom BCM63xx [2.6])
- Target Profile (Broadcom WiFi (default))
- Tarjet Images ---> jffs2 squashfs
- Select all packages by default

After this, I began the openwrt image files creation process with the following command:

make V=99

This creation process delay so long but finally it abort with the following log details:

[jlnunez@localhost kamikaze_8.09]$ make V=99
make[1]: Entering directory `/home/jlnunez/disco2/kamikaze_8.09'
make[2]: Entering directory `/home/jlnunez/disco2/kamikaze_8.09'
make[3]: Entering directory `/home/jlnunez/disco2/kamikaze_8.09/target/linux'
make[4]: Entering directory `/home/jlnunez/disco2/kamikaze_8.09/target/linux/brcm63xx'
/home/jlnunez/disco2/kamikaze_8.09/scripts/kconfig.pl +  /home/jlnunez/disco2/kamikaze_8.09/target/linux/brcm63xx/config-2.6.27 > /home/jlnunez/disco2/kamikaze_8.09/build_dir/linux-brcm63xx/linux-2.6.27/.config.target
Parse error at /home/jlnunez/disco2/kamikaze_8.09/scripts/kconfig.pl line 119, <FILE> line 264.
make[4]: *** [/home/jlnunez/disco2/kamikaze_8.09/build_dir/linux-brcm63xx/linux-2.6.27/.configured] Error 255
make[4]: Leaving directory `/home/jlnunez/disco2/kamikaze_8.09/target/linux/brcm63xx'
make[3]: *** [compile] Error 2
make[3]: Leaving directory `/home/jlnunez/disco2/kamikaze_8.09/target/linux'
make[2]: *** [target/linux/compile] Error 2
make[2]: Leaving directory `/home/jlnunez/disco2/kamikaze_8.09'
make[1]: *** [/home/jlnunez/disco2/kamikaze_8.09/staging_dir/mips/stamp/.target_compile] Error 2
make[1]: Leaving directory `/home/jlnunez/disco2/kamikaze_8.09'
make: *** [world] Error 2
[jlnunez@localhost kamikaze_8.09]$


From this point I could not proceed with the kamikaze process creation.

I try to examine these log details, but the only thing I discover is that the .config.target file is empty (there is no data, 0 bytes) in the /home/jlnunez/disco2/kamikaze_8.09/build_dir/linux-brcm63xx/linux-2.6.27/ directory.

Please, what can I do to resolve this process abort in the kamikaze process creation.........?

Best regards,

Jose Nunez

(Last edited by jlnunez on 4 May 2009, 14:04)

@jlnunez
i recommend, to build firmware, you must:
1.- use development branch (not 8.09 sources), see at https://dev.openwrt.org/wiki/GetSource
2.- start from a fresh tree.

regards

@ cshore,

I have CFE 1.0.37-0.8 version  and i can load fimrware ok via cfe flashimage, but if i load firmware from web, it loads but after reboot i got kernel panic (same file).

By other hand you have CFE 1.0.37-0.7 version (suposed same hardware) and it works fine for you and other comtrends with same CFE version.

As you says  firmware load process is CFE+board dependent.

@wrt54glfeat

wrt54glfeat wrote:

It is just an enquiry on 2.6 kernel usage and Broadcom 43XX chipset to crack WEP and WPA encryption of wifi networks.

You are welcomed but, this tread is not for you, you must post at: http://forum.openwrt.org/viewforum.php?id=10

(Last edited by t3l3m4k0 on 4 May 2009, 14:39)

t3l3m4k0 wrote:

@ cshore,

I have CFE 1.0.37-0.8 version  and i can load fimrware ok via cfe flashimage, but if i load firmware from web, it loads but after reboot i got kernel panic (same file).

What load address does it report?  If it's not 0x80010000 then it probably not using the kernel header (probably because the kernel address and offset are somehow wrong).  If it is 0x80010000 then is the kernel panic when trying to load the rootfs?  If it is, is then kamikaze's kernel is loading but the rootfs loading isn't happening right, which would likely be a problem with bcm_tag.h or perhaps with mtd-flash.c.  In that event could you try with a fresh svn checkout?

By other hand you have CFE 1.0.37-0.7 version (suposed same hardware) and it works fine for you and other comtrends with same CFE version.

And the GW6000 boards too, which are another ODM entirely

As you says  firmware load process is CFE+board dependent.

Any suggestions on how to deal with this cleanly so that users can build the image they need without building hundreds of images (multiples for each board type, depending on ODM firmware)?

@ cshore

I tried with CFE 1.0.37-5.17, downloaded from your web, result is curiousus

And flashed fresh build r15611 firmware.

serial at 128000 bauds/sg

CFE version 1.0.37-5.17 for BCM96348 (32bit,SP,BE)
Build Date: Tue, 19 Oct 2004 12:02:54 +0800 (root@junhon_linux)
Copyright (C) 2000,2001,2002,2003 Broadcom Corporation.

Initializing Arena.
Initializing Devices.
init 5325E: init mii=0
init 5325E: init success, mii=9f
CPU type 0x29107: 256MHz, Bus: 128MHz, Ref: 32MHz

Total memory used by CFE:  0x80401000 - 0x80521DF0 (1183216)
Initialized Data:          0x8041C740 - 0x8041E1B0 (6768)
BSS Area:                  0x8041E1B0 - 0x8041FDF0 (7232)
Local Heap:                0x8041FDF0 - 0x8051FDF0 (1048576)
Stack Area:                0x8051FDF0 - 0x80521DF0 (8192)
Text (code) segment:       0x80401000 - 0x8041C73C (112444)
Boot area (physical):      0x00522000 - 0x00562000
Relocation Factor:         I:00000000 - D:00000000

Board IP address                : 192.168.1.19
Host IP address                 : 192.168.1.21
Gateway IP address              :
Run from flash/host (f/h)       : f
Default host run file name      : vmlinux
Default host flash file name    : bcm963xx_fs_kernel
Boot delay (0-9 seconds)        : 2
Board Id Name                   : 96348GW-11
Psi size in KB                  : 24
Number of MAC Addresses (1-32)  : 11
Base MAC Address                : 00:30:da:74:9d:e5
Ethernet PHY Type               : External Using Reverse MII with SPI
Memory size in MB               : 16

*** Press any key to stop auto run (2 seconds) ***
Auto run second count down: 0
Code Address: 0x80010000, Entry Address: 0x80010000
Decompression OK!
Entry at 0x80010000
Closing network.
Starting program at 0x80010000
Linux version 2.6.27.22 (HTPC@localhost.localdomain) (gcc version 4.1.2) #2 Tue May 5 09:13:09 CEST 2009
Detected Broadcom 0x6348 CPU revision a2
CPU frequency is 256000000 Hz
16MB of RAM installed
board_bcm963xx: CFE version: 1.0.37-5.17
console [early0] enabled
CPU revision is: 00029107 (Broadcom BCM6348)
board_bcm963xx: board name: 96348GW-11
Determined physical RAM map:
 memory: 01000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
  Normal   0x00000000 -> 0x00001000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x00001000
Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 4064
Kernel command line: root=/dev/mtdblock2 rootfstype=squashfs,jffs2 init=/etc/preinit noinitrd console=ttyS0,115200
Primary instruction cache 16kB, 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: 13660k/16384k available (1921k kernel code, 2724k reserved, 324k data, 124k init, 0k highmem)
Calibrating delay loop... 255.48 BogoMIPS (lpj=510976)
Mount-cache hash table entries: 512
net_namespace: 776 bytes
NET: Registered protocol family 16
registering 37 GPIOs
registering PCI controller with io_map_base unset
bus: 00 index 0 io port: [8000000, 800ffff]
bus: 00 index 1 mmio: [30000000, 37ffffff]
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
audit: initializing netlink socket (disabled)
type=2000 audit(0.269:1): initialized
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.
msgmni has been set to 26
io scheduler noop registered
io scheduler cfq registered (default)
gpiodev: gpio device registered with major 254
gpiodev: gpio platform device registered with access mask FFFFFFFF
bcm63xx_uart.0: ttyS0 at MMIO 0xfffe0

and next at 115200 bauds/sg

bcm63xx_enet MII bus: probed
bcm963xx_flash: 0x00400000 at 0x1fc00000
bcm963xx: Found 1 x16 devices at 0x0 in 16-bit bank
 Amd/Fujitsu Extended Query Table at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
bcm963xx_flash: Read Signature value of CFE1CFE1
bcm963xx_flash: CFE bootloader detected
bcm963xx_flash: CFE boot tag found with version 6 and board type 96348GW-11.
bcm963xx_flash: Partition 0 is CFE offset 0 and length 10000
bcm963xx_flash: Partition 1 is kernel offset 10100 and length c0827
bcm963xx_flash: Partition 2 is rootfs offset e0000 and length 310000
bcm963xx_flash: Partition 3 is nvram offset 3f0000 and length 10000
Creating 4 MTD partitions on "bcm963xx":
0x00000000-0x00010000 : "CFE"
0x00010100-0x000d0927 : "kernel"
mtd: partition "kernel" doesn't start on an erase block boundary -- force read-only
0x000e0000-0x003f0000 : "rootfs"
mtd: partition "rootfs" set to be root filesystem
mtd: partition "rootfs_data" created automatically, ofs=340000, len=B0000 
0x00340000-0x003f0000 : "rootfs_data"
0x003f0000-0x00400000 : "nvram"
TCP bic 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>
SQUASHFS error: Unknown inode type 15 in squashfs_iget!
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000000: 0x7371 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000008: 0x6ebf instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000000c: 0x5800 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000018: 0x1000 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000001c: 0x0003 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000020: 0xf027 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000024: 0x4001 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000028: 0xffe7 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000030: 0x5508 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000034: 0x0100 instead
Further such events for this erase block will not be printed
Empty flash at 0x00000070 ends at 0x00000074
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010000: 0xc9fa instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010004: 0x2bb2 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010008: 0xca18 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0001000c: 0x286a instead

....

jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00240024: 0xd57a instead
Further such events for this erase block will not be printed
Old JFFS2 bitmask found at 0x0024b9ac
You cannot use older JFFS2 filesystems with newer kernels
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00250000: 0x63ee instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00250004: 0x58d2 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00250008: 0x3eda instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0025000c: 0x5887 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00250010: 0x9822 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00250014: 0x9a4d instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00250018: 0xccc5 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0025001c: 0xe581 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00250020: 0xfcd5 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00250024: 0x8860 instead
Further such events for this erase block will not be printed
Cowardly refusing to erase blocks on filesystem with no valid JFFS2 nodes
empty_blocks 11, bad_blocks 0, c->nr_blocks 49
VFS: Cannot open root device "mtdblock2" or unknown-block(31,2)
Please append a correct "root=" boot option; here are the available partitions:
1f00         64 mtdblock0 (driver?)
1f01        770 mtdblock1 (driver?)
1f02       3136 mtdblock2 (driver?)
1f03        704 mtdblock3 (driver?)
1f04         64 mtdblock4 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,2)

mtd partitions seems to be ok

By other hand, with same firmware r15611.bin file, but flashed from cfe menu with flashimage it works ok. ( but speed change from 128000 to 115200 bauds/sg persist)

regards


Edit:
thi is dmesg from firmware r15611.bin flashed via CFE flashimage:

....

bcm63xx_enet MII bus: probed
bcm963xx_flash: 0x00400000 at 0x1fc00000
bcm963xx: Found 1 x16 devices at 0x0 in 16-bit bank
 Amd/Fujitsu Extended Query Table at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
bcm963xx_flash: Read Signature value of CFE1CFE1
bcm963xx_flash: CFE bootloader detected
bcm963xx_flash: CFE boot tag found with version 6 and board type 96348GW-11.
bcm963xx_flash: Partition 0 is CFE offset 0 and length 10000
bcm963xx_flash: Partition 1 is kernel offset 10100 and length c0827
bcm963xx_flash: Partition 2 is rootfs offset e0000 and length 310000
bcm963xx_flash: Partition 3 is nvram offset 3f0000 and length 10000
Creating 4 MTD partitions on "bcm963xx":
0x00000000-0x00010000 : "CFE"
0x00010100-0x000d0927 : "kernel"
mtd: partition "kernel" doesn't start on an erase block boundary -- force read-only
0x000e0000-0x003f0000 : "rootfs"
mtd: partition "rootfs" set to be root filesystem
mtd: partition "rootfs_data" created automatically, ofs=340000, len=B0000
0x00340000-0x003f0000 : "rootfs_data"
0x003f0000-0x00400000 : "nvram"
TCP bic registered
NET: Registered protocol family 17
....

(Last edited by t3l3m4k0 on 5 May 2009, 19:33)

@t3l3m4ko:

I'll have to check the broadcom code and what we're using for lengths.  Maybe the kernelfslen + rootfslen is wrong (that's what determines what is flash).  I'm wondering that because of the message about sqashfs.   Or if there is something wrong with where the DEADC0DE marker is going (it should be at the start of a 64k boundary (erase block), after the ending padding for the rootfs.

@cshore,
i'm very busy now, but i will try this week to read flash from JTAG with:
firmware loaded from web interface and from cfe flashimage command. I will post results.

Thnx.

@t3l3m4ko:

  I looked at the code and it was indeed missing the padding between kernel end and beginning of rootfs.  Can you try the patch in #5108?

cshore wrote:

@t3l3m4ko:

  I looked at the code and it was indeed missing the padding between kernel end and beginning of rootfs.  Can you try the patch in #5108?

Sir, now your patch works fine.

Thnx

two things

1.- snapshots back to work
2.- i made a patch to upgrade from "sysupgrade" script and from luci, https://dev.openwrt.org/ticket/5117

There appears to be a different type of header in the firmware for some devices. (Possibly an earlier version). One of these is the BT Voyager 2110.
Is there any plans to support this type of header (Presuming the layout of the rest of the firmware is not different) so that users of these units can update to OpenWRT through the web interface on these platforms.

An example of a firmware of this type : http://www.voyager.bt.com/firmware_upgr … 2pb022f#0#

I have managed to change bytes 4 to 43 to spaces as in the original firmware however it still fails to be recognized. I am guessing this is due to the variables at 192 bytes and 196 to 199 bytes which are classified as reserved space in OpenWRT and so are not taken into account. If it is not these variables then the problem is not in the header but elsewhere in the firmware.

There appears to be some information about this type of header here : http://skaya.enix.org/wiki/FirmwareFormat

@Isaac702

you must patch file:

root/trunk/target/linux/brcm63xx/files/arch/mips/bcm63xx/boards/board_bcm963xx.c

with apropiate values of your board at this points:

/*
 * known 6338 boards
 */

#ifdef CONFIG_BCM63XX_CPU_6338
static struct board_info __initdata board_96338gw = {
    .name                = "96338GW",
    .expected_cpu_id        = 0x6338,

    .has_enet0            = 1,
    .enet0 = {
        .has_phy        = 1,
        .use_internal_phy    = 1,
    },

    .has_ohci0            = 1,
};
#endif

/*
 * known 6348 boards
 */
#ifdef CONFIG_BCM63XX_CPU_6348
static struct board_info __initdata board_96348r = {
    .name                = "96348R",
    .expected_cpu_id        = 0x6348,

    .has_enet0            = 1,
    .has_pci            = 1,

    .enet0 = {
        .has_phy        = 1,
        .use_internal_phy    = 1,
    },
};

static struct board_info __initdata board_96348gw_10 = { 
    .name                = "96348GW-10",
    .expected_cpu_id        = 0x6348,
    
    .has_enet0            = 1,
    .has_enet1            = 1,
    .has_pci            = 1, 
    
    .enet0 = {
        .has_phy        = 1,
        .use_internal_phy    = 1,
    },
    .enet1 = {
        .force_speed_100    = 1,
        .force_duplex_full    = 1,
    },
    
    .has_ohci0            = 1,
    .has_pccard            = 1,
    .has_ehci0            = 1,
}; 

static struct board_info __initdata board_96348gw_11 = {
    .name                = "96348GW-11",
    .expected_cpu_id        = 0x6348,

    .has_enet0            = 1,
    .has_enet1            = 1,
    .has_pci            = 1,

    .enet0 = {
        .has_phy        = 1,
        .use_internal_phy    = 1,
    },

    .enet1 = {
        .force_speed_100    = 1,
        .force_duplex_full    = 1,
    },


    .has_ohci0 = 1,
    .has_pccard = 1,
    .has_ehci0 = 1,
};

static struct board_info __initdata board_96348gw = {
    .name                = "96348GW",
    .expected_cpu_id        = 0x6348,

    .has_enet0            = 1,
    .has_enet1            = 1,
    .has_pci            = 1,

    .enet0 = {
        .has_phy        = 1,
        .use_internal_phy    = 1,
    },
    .enet1 = {
        .force_speed_100    = 1,
        .force_duplex_full    = 1,
    },

    .has_ohci0 = 1,
};

static struct board_info __initdata board_FAST2404 = {
        .name                           = "F@ST2404",
        .expected_cpu_id                = 0x6348,

        .has_enet0                      = 1,
        .has_enet1                      = 1,
        .has_pci                        = 1,

        .enet0 = {
                .has_phy                = 1,
                .use_internal_phy       = 1,
        },

        .enet1 = {
                .force_speed_100        = 1,
                .force_duplex_full      = 1,
        },


        .has_ohci0 = 1,
        .has_pccard = 1,
        .has_ehci0 = 1,
};

static struct board_info __initdata board_DV201AMR = {
    .name                = "DV201AMR",
    .expected_cpu_id        = 0x6348,

    .has_pci            = 1,
    .has_ohci0            = 1,
    .has_udc0            = 1,

    .has_enet0            = 1,
    .has_enet1            = 1,
    .enet0 = {
        .has_phy        = 1,
        .use_internal_phy    = 1,
    },
    .enet1 = {
        .force_speed_100    = 1,
        .force_duplex_full    = 1,
    },
};

static struct board_info __initdata board_96348gw_a = {
    .name                = "96348GW-A",
    .expected_cpu_id        = 0x6348,

    .has_enet0            = 1,
    .has_enet1            = 1,
    .has_pci            = 1,

    .enet0 = {
        .has_phy        = 1,
        .use_internal_phy    = 1,
    },
    .enet1 = {
        .force_speed_100    = 1,
        .force_duplex_full    = 1,
    },

    .has_ohci0 = 1,
};


#endif

/*
 * known 6358 boards
 */
#ifdef CONFIG_BCM63XX_CPU_6358
static struct board_info __initdata board_96358vw = {
    .name                = "96358VW",
    .expected_cpu_id        = 0x6358,

    .has_enet0            = 1,
    .has_enet1            = 1,
    .has_pci            = 1,

    .enet0 = {
        .has_phy        = 1,
        .use_internal_phy    = 1,
    },

    .enet1 = {
        .force_speed_100    = 1,
        .force_duplex_full    = 1,
    },


    .has_ohci0 = 1,
    .has_pccard = 1,
    .has_ehci0 = 1,
};

static struct board_info __initdata board_96358vw2 = {
    .name                = "96358VW2",
    .expected_cpu_id        = 0x6358,

    .has_enet0            = 1,
    .has_enet1            = 1,
    .has_pci            = 1,

    .enet0 = {
        .has_phy        = 1,
        .use_internal_phy    = 1,
    },

    .enet1 = {
        .force_speed_100    = 1,
        .force_duplex_full    = 1,
    },


    .has_ohci0 = 1,
    .has_pccard = 1,
    .has_ehci0 = 1,
};

static struct board_info __initdata board_AGPFS0 = {
    .name                           = "AGPF-S0",
    .expected_cpu_id                = 0x6358,

    .has_enet0                      = 1,
    .has_enet1                      = 1,
    .has_pci                        = 1,

    .enet0 = {
        .has_phy                = 1,
        .use_internal_phy       = 1,
    },

    .enet1 = {
        .force_speed_100        = 1,
        .force_duplex_full      = 1,
    },

    .has_ohci0 = 1,
    .has_ehci0 = 1,
};
#endif

and

/*
 * all boards
 */
static const struct board_info __initdata *bcm963xx_boards[] = {
#ifdef CONFIG_BCM63XX_CPU_6338
    &board_96338gw,
#endif
#ifdef CONFIG_BCM63XX_CPU_6348
    &board_96348r,
    &board_96348gw,
    &board_96348gw_10,
    &board_96348gw_11,
    &board_FAST2404,
    &board_DV201AMR,
    &board_96348gw_a,
#endif

#ifdef CONFIG_BCM63XX_CPU_6358
    &board_96358vw,
    &board_96358vw2,
    &board_AGPFS0,
#endif

(Last edited by t3l3m4k0 on 21 May 2009, 13:01)

There are any news about the DSL support on BCM63xx ?

Thank you

Ive got a flash issue with a BMC6358 board.

Flash memory starts from 0x1f80 0000, but bootstrap is set from 0x1fc0 0000.
I can flash the firmware from that location and it works fine. Only problem is that i loose 4 entire MB!
How do i solve this? Shouldnt rootfs automatically create a split fs? Should i add a partition manually?

t3l3m4k0 wrote:

@Isaac702

you must patch file:

root/trunk/target/linux/brcm63xx/files/arch/mips/bcm63xx/boards/board_bcm963xx.c

with apropiate values of your board at this points:

I had done this already however just in case I check it again. The boardid is V2110 and the cpu is a 6348.
When I try to update it returns the error "The firmware update is failed. The selected file contains an illegal image."
I have checked other firmwares and cannot see any other firmware with the variables in the positions I stated above. The exception to this is the RTA1025 which is the board the BT Voyager 2110 is based upon.
I will retract the statement saying the problem is with the firmware version as there is a version 1 device supported by OpenWRT.

Editied: To remove quoted code.

(Last edited by Isaac702 on 21 May 2009, 17:14)

Isaac702 wrote:
t3l3m4k0 wrote:

@Isaac702

you must patch file:

root/trunk/target/linux/brcm63xx/files/arch/mips/bcm63xx/boards/board_bcm963xx.c

with apropiate values of your board at this points:

I had done this already however just in case I check it again. The boardid is V2110 and the cpu is a 6348.
When I try to update it returns the error "The firmware update is failed. The selected file contains an illegal image."
I have checked other firmwares and cannot see any other firmware with the variables in the positions I stated above. The exception to this is the RTA1025 which is the board the BT Voyager 2110 is based upon.
I will retract the statement saying the problem is with the firmware version as there is a version 1 device supported by OpenWRT.

Editied: To remove quoted code.

can you post "dmesg" command result, from original firmware?

ma_jk wrote:

Ive got a flash issue with a BMC6358 board.

Flash memory starts from 0x1f80 0000, but bootstrap is set from 0x1fc0 0000.
I can flash the firmware from that location and it works fine. Only problem is that i loose 4 entire MB!
How do i solve this? Shouldnt rootfs automatically create a split fs? Should i add a partition manually?

at this moment you must add this manually or create a patch/profile for your router at:

root/trunk/tools/firmware-utils/src/imagetag.c


salut