User Tools

Site Tools


toh:d-link:dsl-2542b

D-Link DSL-2542b

Model Version Status Target(s) PlatformSwitch CPU Speed (MHz) Flash (MB) RAM (MB) Wired Ports USB
DSL-2542b D2 (EU) WIP bcm63xx Broadcom 6338 Broadcom 5325 240 4 16 4x 100M No

Hardware summary

IC Info Datasheet
Processor BCM6338 Click
Flash ROMEN29LV320AB-70TIP 32Mbit (4Mbyte x 8 / 2Mbyte x 16) Click
SDRAMV54C3128164VB17 128Mbit (8Mbyte x 16) Click
Ethernet controllerBCM5325(¿E?) Click
ADSL2+ 5V Line Driver AnnexALAL2020 Click

Hardware Info

dsl-2542b_top_cover_removed.jpgdsl-2542b_bottom_mb.jpg

I couldn't remove the heatsinks

#/proc/cpuinfo

system type             : 96338W
processor               : 0
cpu model               : BCM6338 V1.0
BogoMIPS                : 239.20
wait instruction        : no
microsecond timers      : yes
tlb_entries             : 32
extra interrupt vector  : yes
hardware watchpoint     : no
unaligned access        : 16175
VCED exceptions         : not available
VCEI exceptions         : not available

Looking at the original GPL sourcecode v1.10 (bcmnet.h) I have found that the switch chipset is a BCM5325

Original Firmware Info

The original GPL sourcecode v1.10 can be downloaded Here. It consist on a Linux 2.6.8.1 kernel with binary Broadcom tools&drivers and sourcecode of the kernel and the rest of tools.

The lastest original firmware (v1.21 at 21/06/2010) can be found Here

TAG information about the last firmware

# ./analyzetag -t bc310 -i EU_DSL-2542B_1.21_10192009_CFE

Broadcom image analyzer - v0.1.0
Copyright (C) 2009 Daniel Dickinson
Tag Version: 6
Signature 1: Broadcom Corporatio
Signature 2: ver. 2.0
Chip ID: 6338
Board ID: 96338W
Bigendian: true
Image size: 0029f84e, 2750542
CFE Address: bfc00000, 3217031168
CFE Length: 0000f35c, 62300
Flash Root Address: bfc10100, 3217096960
Flash Root Length: 0020b000, 2142208
Flash Kernel Address: bfe1b100, 3219239168
Flash Kernel Length: 000854f2, 546034
Vendor information: 
Image CRC: bc972a30   [Computed Value: 7e29b4f5]
Rootfs CRC:             [Computed Value: 651ea864]
Image CRC from sections: bc972a30   [Computed Value: 7e29b4f5]
Header CRC: 4a6079fd   [Computed Value: 4a6079fd]
Kernel CRC: 7098a85e   [Computed Value: 2e54128c]
Rootfs CRC: bdac1a5e   [Computed Value: 64a81e65]

dmesg of the last firmware

dmesg of the original firmware EU_DSL-2542B_1.21_10192009_CFE just after installing it:

# dmesg Linux version 2.6.8.1 (root@mochow) (gcc version 3.4.2) #1 Mon Oct 19 10:35:09 CST 2009 Parallel flash device: name AM29LV320B, id 0x22f9, size 4096KB 96338W prom init CPU revision is: 00029010 Determined physical RAM map: memory: 00fa0000 @ 00000000 (usable) On node 0 totalpages: 4000 DMA zone: 4000 pages, LIFO batch:1 Normal zone: 0 pages, LIFO batch:1 HighMem zone: 0 pages, LIFO batch:1 Built 1 zonelists Kernel command line: root=31:0 ro noinitrd console=ttyS0,115200 brcm mips: enabling icache and dcache... Primary instruction cache 16kB, physically tagged, 2-way, linesize 16 bytes. Primary data cache 8kB 2-way, linesize 16 bytes. PID hash table entries: 64 (order 6: 512 bytes) Using 120.000 MHz high precision timer. Dentry cache hash table entries: 4096 (order: 2, 16384 bytes) Inode-cache hash table entries: 2048 (order: 1, 8192 bytes) Memory: 13920k/16000k available (1448k kernel code, 2060k reserved, 203k data, 68k init, 0k highmem) Calibrating delay loop... 239.20 BogoMIPS Mount-cache hash table entries: 512 (order: 0, 4096 bytes) Checking for 'wait' instruction... unavailable. NET: Registered protocol family 16 Total Flash size: 4096K with 71 sectors File system address: 0xbfc10100 Can't analyze prologue code at 80178ad4 Initializing Cryptographic API PPP generic driver version 2.4.2 NET: Registered protocol family 24 Using noop io scheduler bcm963xx_mtd driver v1.0 brcmboard: brcm_board_init entry ======= GPIO CONFIG_BCM96338 inited ======== Serial: BCM63XX driver $Revision: 3.00 $ ttyS0 at MMIO 0xfffe0300 (irq = 10) is a BCM63XX u32 classifier NET: Registered protocol family 2 IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 512 bind 1024) Initializing IPsec netlink socket NET: Registered protocol family 1 NET: Registered protocol family 17 NET: Registered protocol family 15 Ebtables v2.0 registered NET: Registered protocol family 8 NET: Registered protocol family 20 802.1Q VLAN Support v1.8 Ben Greear All bugs added by David S. Miller VFS: Mounted root (squashfs filesystem) readonly. Freeing unused kernel memory: 68k freed Algorithmics/MIPS FPU Emulator v1.5 atmapi: module license 'Proprietary' taints kernel. adsl: adsl_init entry blaadd: blaa_detect entry Broadcom BCMPROCFS v1.0 initialized Broadcom BCM6338A2 Ethernet Network Device v0.3 Oct 19 2009 10:33:20 Config Ethernet Switch Through MDIO Pseudo PHY Interface dgasp: kerSysRegisterDyingGaspHandler: eth0 registered eth0: MAC Address: 00:26:5A:75:EC:08 BCM63XX_USB: USB device not detected. BcmAdsl_Initialize=0xC0068808, g_pFnNotifyCallback=0xC0081514 AnnexCParam=0x7FFF7EB8 AnnexAParam=0x00000980 adsl2=0x00000000 pSdramPHY=0xA0FFFFF8, 0xB9E3 0xDEAC34EF AdslCoreHwReset: AdslOemDataAddr = 0xA0FFCE54 AnnexCParam=0x7FFF7EB8 AnnexAParam=0x00000980 adsl2=0x00000000 dgasp: kerSysRegisterDyingGaspHandler: dsl0 registered eth0 Link UP. ATM proc init !!! ip_tables: (C) 2000-2002 Netfilter core team ip_conntrack version 2.1 (125 buckets, 0 max) - 400 bytes per conntrack ip_conntrack_pptp version 2.1 loaded ip_nat_pptp version 2.0 loaded ip_ct_h323: init success ip_nat_h323: init success ipt_time loading ip_conntrack_rtsp v0.01 loading ip_nat_rtsp v0.01 loading device eth0 entered promiscuous mode br0: port 1(eth0) entering learning state br0: topology change detected, propagating br0: port 1(eth0) entering forwarding state set vlan_id 65535 vlan_priority 65535 device nas_0_8_35 entered promiscuous mode br0: port 2(nas_0_8_35) entering learning state br0: topology change detected, propagating br0: port 2(nas_0_8_35) entering forwarding state ioctl, p_name=diapd eth0 Link DOWN. br0: port 1(eth0) entering disabled state eth0 Link UP. br0: port 1(eth0) entering learning state br0: topology change detected, propagating br0: port 1(eth0) entering forwarding state

Config from CEF

Board IP address                  : 192.168.1.1:ffffff00  
Host IP address                   : 192.168.1.100  
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)          : 1  
Board Id (0-9)                    : 96338W  
Number of MAC Addresses (1-32)    : 12  
Base MAC Address                  : f0:7d:68:68:xx:xx  
PSI Size (1-64) KBytes            : 24

Tags

Following :owrt:Barrier-Breaker-14-07

DMESG:

[    0.000000] Linux version 3.10.49 (bb@builder1) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r42625) ) #3 Wed Oct 1 15:07:11 CEST 2014
[    0.000000] Detected Broadcom 0x6338 CPU revision a2
[    0.000000] CPU frequency is 240 MHz
[    0.000000] 16MB of RAM installed
[    0.000000] registering 8 GPIOs
[    0.000000] board_bcm963xx: Boot address 0xbfc00000
[    0.000000] board_bcm963xx: CFE version: 1.0.37-8.7
[    0.000000] bcm63xx_nvram: nvram checksum failed, contents may be invalid (expected 14233aa0, got ecfd7db5)
[    0.000000] No bcm_tag found!
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU revision is: 00029010 (Broadcom BCM6338)
[    0.000000] board: board name: 96338W
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 01000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x00ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x00ffffff]
[    0.000000] On node 0 totalpages: 4096
[    0.000000] free_area_init_node: node 0, pgdat 80318c60, node_mem_map 803af000
[    0.000000]   Normal zone: 32 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 4096 pages, LIFO batch:0
[    0.000000] Primary instruction cache 16kB, VIPT, 2-way, linesize 16 bytes.
[    0.000000] Primary data cache 8kB, 2-way, VIPT, no aliases, linesize 16 bytes
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 4064
[    0.000000] Kernel command line:  root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200
[    0.000000] PID hash table entries: 64 (order: -4, 256 bytes)
[    0.000000] Dentry cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000000] Memory: 12412k/16384k available (2485k kernel code, 3972k reserved, 725k data, 308k init, 0k highmem)
[    0.000000] NR_IRQS:256
[    0.036000] Calibrating delay loop... 237.82 BogoMIPS (lpj=475648)
[    0.040000] pid_max: default: 32768 minimum: 301
[    0.044000] Mount-cache hash table entries: 512
[    0.060000] NET: Registered protocol family 16
[    0.132000] bio: create slab <bio-0> at 0
[    0.156000] Switching to clocksource MIPS
[    0.184000] NET: Registered protocol family 2
[    0.192000] TCP established hash table entries: 512 (order: 0, 4096 bytes)
[    0.200000] TCP bind hash table entries: 512 (order: -1, 2048 bytes)
[    0.208000] TCP: Hash tables configured (established 512 bind 512)
[    0.212000] TCP: reno registered
[    0.216000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.224000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.232000] NET: Registered protocol family 1
[    0.236000] PCI: CLS 0 bytes, default 16
[    0.248000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.256000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.268000] msgmni has been set to 24
[    0.272000] io scheduler noop registered
[    0.280000] io scheduler deadline registered (default)
[    0.292000] bcm63xx_uart.0: ttyS0 at MMIO 0xfffe0300 (irq = 10) is a bcm63xx_uart
[    0.300000] console [ttyS0] enabled, bootconsole disabled
[    0.324000] physmap platform flash device: 00400000 at 1fc00000
[    0.332000] physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x00007f Chip ID 0x0022f9
[    0.340000] Amd/Fujitsu Extended Query Table at 0x0040
[    0.348000]   Amd/Fujitsu Extended Query version 1.1.
[    0.352000] number of CFI chips: 1
[    0.356000] bcm63xxpart: CFE boot tag found with version 6 and board type 6338GW
[    0.364000] bcm63xxpart: Partition 0 is CFE offset 0 and length 10000
[    0.372000] bcm63xxpart: Partition 1 is kernel offset 10100 and length 11ff00
[    0.380000] bcm63xxpart: Partition 2 is rootfs offset 130000 and length 2c0000
[    0.388000] bcm63xxpart: Partition 3 is nvram offset 3f0000 and length 10000
[    0.392000] bcm63xxpart: Partition 4 is linux offset 10000 and length 3e0000
[    0.400000] bcm63xxpart: Spare partition is offset 350004 and length 9fffc
[    0.408000] 5 bcm63xxpart partitions found on MTD device physmap-flash.0
[    0.416000] Creating 5 MTD partitions on "physmap-flash.0":
[    0.420000] 0x000000000000-0x000000010000 : "CFE"
[    0.436000] 0x000000010100-0x000000130000 : "kernel"
[    0.440000] mtd: partition "kernel" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only
[    0.464000] 0x000000130000-0x0000003f0000 : "rootfs"
[    0.476000] mtd: device 2 (rootfs) set to be root filesystem
[    0.484000] mtd: partition "rootfs_data" created automatically, ofs=0x350000, len=0xa0000
[    0.492000] 0x000000350000-0x0000003f0000 : "rootfs_data"
[    0.504000] 0x0000003f0000-0x000000400000 : "nvram"
[    0.520000] 0x000000010000-0x0000003f0000 : "linux"
[    0.544000] bcm63xx-spi bcm63xx-spi: at 0xfffe0c00 (irq 9, FIFOs size 63)
[    0.580000] libphy: bcm63xx_enet MII bus: probed
[    0.588000] b53_common: found switch: BCM5325, rev 0
[    0.592000] bcm63xx_enet bcm63xx_enet.0: attached PHY at address 0 [Broadcom B53 (1)]
[    0.612000] bcm63xx-wdt bcm63xx-wdt:  started, timer margin: 30 sec
[    0.632000] TCP: cubic registered
[    0.636000] NET: Registered protocol family 17
[    0.644000] Bridge firewalling registered
[    0.648000] 8021q: 802.1Q VLAN Support v1.8
[    0.680000] VFS: Mounted root (squashfs filesystem) readonly on device 31:2.
[    0.696000] Freeing unused kernel memory: 308K (80333000 - 80380000)
[    5.460000] Button Hotplug driver version 0.4.1
[   10.740000] jffs2: notice: (196) jffs2_build_xattr_subsystem: complete building xattr subsystem, 1 of xdatum (1 unchecked, 0 orphan) and 299 of xref (0 dead, 19 orphan) found.
[   16.088000] NET: Registered protocol family 10
[   16.148000] nf_conntrack version 0.5.0 (198 buckets, 792 max)
[   16.180000] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   16.252000] u32 classifier
[   16.256000]     input device check on
[   16.260000]     Actions configured
[   16.276000] Mirror/redirect action on
[   16.304000] ip_tables: (C) 2000-2006 Netfilter Core Team
[   16.520000] xt_time: kernel timezone is -0000
[   16.564000] PPP generic driver version 2.4.2
[   16.580000] NET: Registered protocol family 24
[   25.104000] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   26.584000] eth0: link UP - 100/full - flow control off
[   26.592000] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   35.164000] device eth0.1 entered promiscuous mode
[   35.168000] device eth0 entered promiscuous mode
[   35.188000] br-lan: port 1(eth0.1) entered forwarding state
[   35.192000] br-lan: port 1(eth0.1) entered forwarding state
[   36.852000] eth0: link UP - 100/full - flow control off
[   37.196000] br-lan: port 1(eth0.1) entered forwarding state
[  125.656000] nf_conntrack: automatic helper assignment is deprecated and it will be removed soon. Use the iptables CT target to attach helpers instead.

Network Configuration file (VLANS)

/etc/config/network

config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fd67:471b:0df9::/48'

config interface 'lan'
        option ifname 'eth0.1'
        option force_link '1'
        option type 'bridge'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface        'wan'
        option ifname   'eth0.2'
        option proto   'dhcp'


config switch
        option name 'eth0'
        option reset '1'
        option enable_vlan '1'

config switch_vlan 'eth0_1'
        option device 'eth0'
        option vlan '1'
        option ports '0 1 2 4 5t'
config switch_vlan 'eth0_2'
        option device   'eth0'
        option vlan     '2'
        option ports    '3 5t'

Tags

toh/d-link/dsl-2542b.txt · Last modified: 2015/05/26 20:49 by tmomas