Help Learning How To Add Support For Sagem 4320 - Chip ID 63268

I'm looking to add support for F@ST 4320 by Sagemcom, it's a Windstream modem I bought at a vintage store years ago (if the ISP needs to be redacted, please do so. I just added it so anyone else with the same modem can find the modem more easily via Google).

This post is long as I try to put as much info I can to help figure out how to add support for this modem. I'm using a combination of https://openwrt.org/docs/guide-developer/adding_new_device#collecting_relevant_data and my own knowledge of Linux to pull the information.

I sadly do not have access to the source code for this modem like I do for the Sagem 1704N (which works fine with the 2704N firmware). Sagemcom only ever released the source code for 1704N.

The router identifies itself as BCM963268 Broadband Router when connecting to the telnet port.

The CPU info is:

# cat /proc/cpuinfo
cat /proc/cpuinfo
system type             : F@ST4320
processor               : 0
cpu model               : Broadcom4350 V8.0
BogoMIPS                : 399.36
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 32
extra interrupt vector  : no
hardware watchpoint     : no
ASEs implemented        :
shadow register sets    : 1
core                    : 0
VCED exceptions         : not available
VCEI exceptions         : not available

unaligned exceptions            : 76
processor               : 1
cpu model               : Broadcom4350 V8.0
BogoMIPS                : 402.43
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 32
extra interrupt vector  : no
hardware watchpoint     : no
ASEs implemented        :
shadow register sets    : 1
core                    : 0
VCED exceptions         : not available
VCEI exceptions         : not available

unaligned exceptions            : 76

The meminfo is:

# cat /proc/meminfo
cat /proc/meminfo
MemTotal:         123436 kB
MemFree:           62096 kB
Buffers:               0 kB
Cached:            17196 kB
SwapCached:            0 kB
Active:             6692 kB
Inactive:          15412 kB
Active(anon):       4908 kB
Inactive(anon):        0 kB
Active(file):       1784 kB
Inactive(file):    15412 kB
SwapTotal:             0 kB
SwapFree:              0 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:          4936 kB
Mapped:             4964 kB
Slab:              33684 kB
SReclaimable:        436 kB
SUnreclaim:        33248 kB
PageTables:          388 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:       61716 kB
Committed_AS:      10040 kB
VmallocTotal:    1032148 kB
VmallocUsed:        4888 kB
VmallocChunk:    1017952 kB

The cmdline is:

# cat /proc/cmdline
cat /proc/cmdline
root=mtd:rootfs ro rootfstype=jffs2 console=ttyS0,115200

The devices are:

# cat /proc/devices
cat /proc/devices
Character devices:
  1 mem
  2 pty
  3 ttyp
  4 ttyS
  5 /dev/tty
  5 /dev/console
  5 /dev/ptmx
 10 misc
 13 input
 90 mtd
108 ppp
128 ptm
136 pts
166 ttyACM
180 usb
188 ttyUSB
189 usb_device
206 brcmboard
208 adsl
227 p8021ag
228 bcmxtmcfg
233 spu
238 bcmvlan
240 pwrmngt
241 bcmfap
242 fcache
243 ingqos
244 bpm
245 bcmarl
246 chipinfo
249 gmac
254 usb_endpoint

Block devices:
259 blkext
  8 sd
 31 mtdblock
 65 sd
 66 sd
 67 sd
 68 sd
 69 sd
 70 sd
 71 sd
128 sd
129 sd
130 sd
131 sd
132 sd
133 sd
134 sd
135 sd

Also,

# ls /sys/devices/platform
ls /sys/devices/platform
bcmhs_spi.1   bcmleg_spi.0  brcmnand.0    uevent

So, I just learned how to get the mtd maps from https://openwrt.org/docs/guide-developer/adding_new_device#collecting_relevant_data:

# cat /proc/mtd
cat /proc/mtd
dev:    size   erasesize  name
mtd0: 03d60000 00020000 "rootfs"
mtd1: 03d60000 00020000 "rootfs_update"
mtd2: 00400000 00020000 "data"
mtd3: 00020000 00020000 "nvram"

IfConfig Info:

# ifconfig -a
ifconfig -a
bcmsw     Link encap:Ethernet  HWaddr 90:72:82:D9:F5:B0
          UP BROADCAST RUNNING MULTICAST  MTU:2048  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)
          Base address:0xda00

br0       Link encap:Ethernet  HWaddr 90:72:82:D9:F5:B0
          inet addr:192.168.254.254  Bcast:192.168.254.255  Mask:255.255.255.0
          inet6 addr: fe80::9272:82ff:fed9:f5b0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:210 multicast:75 unicast:116 broadcast:19
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:561 multicast:0 unicast:561 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:0
          RX bytes:23669 (23.1 KiB) TX bytes:164820 (160.9 KiB)
          RX multicast bytes:19790 (19.3 KiB) TX multicast bytes:0 (0.0 B)

dsl0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          [NO FLAGS]  MTU:0  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:0
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)

eth0      Link encap:Ethernet  HWaddr 90:72:82:D9:F5:B0
          inet6 addr: fe80::9272:82ff:fed9:f5b0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:2048  Metric:1
          RX packets:227 multicast:0 unicast:227 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:134 multicast:20 unicast:110 broadcast:4
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:13532 (13.2 KiB)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)


eth1      Link encap:Ethernet  HWaddr 90:72:82:D9:F5:B0
          UP BROADCAST MULTICAST  MTU:2048  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)


eth2      Link encap:Ethernet  HWaddr 90:72:82:D9:F5:B0
          UP BROADCAST MULTICAST  MTU:2048  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)


eth3      Link encap:Ethernet  HWaddr 90:72:82:D9:F5:B0
          UP BROADCAST MULTICAST  MTU:2048  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)


eth4      Link encap:Ethernet  HWaddr 90:72:82:D9:F5:B2
          UP BROADCAST MULTICAST  MTU:2048  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)


gre0      Link encap:UNSPEC  HWaddr 00-00-00-00-7E-0F-7F-EE-00-00-00-00-00-00-00-00
          NOARP  MTU:1476  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:0
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)

ifb0      Link encap:Ethernet  HWaddr 7E:FA:19:B9:43:4E
          BROADCAST NOARP  MTU:1500  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:32
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)

ifb1      Link encap:Ethernet  HWaddr DA:91:00:EE:3F:26
          BROADCAST NOARP  MTU:1500  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:32
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)

ip6tnl0   Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          NOARP  MTU:1460  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:0
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:89 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:89 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:0
          RX bytes:12424 (12.1 KiB) TX bytes:12424 (12.1 KiB)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)

sit0      Link encap:IPv6-in-IPv4
          NOARP  MTU:1480  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:0
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)

wl0       Link encap:Ethernet  HWaddr 90:72:82:D9:F5:B1
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:3273
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)
          Interrupt:15

wl0.1     Link encap:Ethernet  HWaddr 5A:72:82:D9:F5:B2
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:3273
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)

wl0.2     Link encap:Ethernet  HWaddr 5A:72:82:D9:F5:B3
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:3273
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)

wl0.3     Link encap:Ethernet  HWaddr 5A:72:82:D9:F5:B0
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 multicast:0 unicast:0 broadcast:0
          RX errors:0 dropped:0 overruns:0 frame:3273
          TX packets:0 multicast:0 unicast:0 broadcast:0
          TX errors:0 dropped:0 overruns:0 carrier:0 collisions:0
          txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
          RX multicast bytes:0 (0.0 B) TX multicast bytes:0 (0.0 B)
# ls /sys/class/net
ls /sys/class/net
bcmsw    eth0     eth3     ifb0     lo       wl0.1
br0      eth1     eth4     ifb1     sit0     wl0.2
dsl0     eth2     gre0     ip6tnl0  wl0      wl0.3
# brctl show
brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.907282d9f5b0       no              eth0
                                                        eth1
                                                        eth2
                                                        eth3

Neither, /sys/class/mtd/mtd*/offset, nor /sys/kernel/debug/gpio exists. I figured the gpio didn't as I didn't see any gpio pins, however, I'm not sure what's up with mtd offsets. The sysfs-class-mtd link now 404s, and this isn't Linux 4.1+ anyway.

# cat /proc/version
cat /proc/version
Linux version 2.6.30 (cookiechen@SZ01007.DONGGUAN.CN) (gcc version 4.4.2 (Buildroot 2010.02-git) ) #1 SMP PREEMPT Tue Sep 8 18:34:23 CST 2015

I also pulled the rootfs and data partition off of the modem via netcat. The rootfs is stored at /dev/mtdblock0 and the data partition is stored at /dev/mtdblock2. Both of them are jffs2 partitions. Block 1 is jffs2 but has no files when mounted as mount -t jffs2 /dev/mtdblock1 /tmp/block1. Blocks 4 through 7 returns a No such device error when attempting to mount them. I had verified the transfer of the rootfs and data partitions by using sha256sum that I statically compiled for mips32 from coreutils (I did remount rootfs as rw to put a test.txt at the root in order to determine that I had the right block for rootfs).

I know the adsl line driver chip is a BCM6306KMLG from opening up the casing on the modem. I determined that the board chip id is 63268 from seeing what happens by loading a wrong firmware against the modem via tftp. Using the command, tftp -g -t i -f openwrt_cfe_image_filename.bin my_computers_ip_assigned_by_this_modem_via_ethernet.

I get the message:

# tftp -g -t i -f openwrt-brcm63xx-smp-FAST2404-squashfs-cfe.bin 192.168.254.1
tftp -g -t i -f openwrt-brcm63xx-smp-FAST2404-squashfs-cfe.bin 192.168.254.1
tftp: Allocating 64356372 bytes for flash image.

tftp: Memory allocated

tftp: Got image via tftp, total image size: 3932164

tftp:error:697.092:matchChipId:96:Chip Id error.  Image Chip Id = 6348, Board Chip Id = 63268.
tftp:error:697.096:verifyBroadcomFileTag:187:chipid check failed
tftp:error:697.465:cmsImg_validateImage:1032:The format isn't broadcom image
tftp: Tftp Image failed: Illegal image.

The tftp command is from busybox: BusyBox v1.17.2 (2015-09-08 18:40:00 CST) multi-call binary..

The modem has a DSL port, WAN port, 4 ethernet ports, two usb ports, a reset button, one unlabeled light, an "@" light (forgot what that means), a DSL light, a Bonding Light (whatever that means, it uses the same icon as the DSL icon right next to it), an ECO button with a light below it, a WPS button also with a light, a Wireless button with a light (it looks like a radio antenna), and a power button also with a light. As for power, it receives a 12 V DC and a minimum of 2 Amps.

For some reason, I wrote "F@ST 4320 US" on the box years ago, not sure where I got the US part from.

Here are a couple of images of the board itself and one image of me showing how to open the casing (after removing the screws). As the images are too big to open here, and I'm not trying to make the quality poorer than it needs to be, here's an Imgur link: https://imgur.com/a/bkNUtL0

This board has 2 cores and should work with smp builds. I saw mention of the ability to do Symmetric multiprocessing somewhere on the Windstream HTTP server.

I know the stock firmware can automount a MBR table with a single FAT32 partition from a usb drive plugged into it.

What I would like to do is be able to add support for this modem. I have full root access to sh through telnet as well as Debian running in Virtualbox and a TFTP server running on my Mac.

If we can figure out how to get the modem to boot from usb and/or tftp without flashing the firmware, that'll be great as then I can test a built firmware without worrying about bricking the modem. I don't have access to a jtag, and have to find my solder if using serial. I don't know if the RPi is stable enough for flashing firmware, but I've used the RPI before to communicate with a sim900 over serial.

Thanks for any help you can give! :smiley:

Edit: I believe BCM963268 is the bootloader. It seems that quite a few devices share this id and on this mirror of Wikidevi (cause the original site is dead and well search isn't going to work on the Wayback machine), a random device I found in search shows this id refers to a bootloader. I did find out where I got the US from back then. https://wikidevi.wi-cat.ru/Sagemcom_F@ST_4320US

Edit 2: I'm currently trying to work out if the source code named bcm963xx_4.12L.08_consumer_release.tar.gz, would contain the necessary data for being able to compile OpenWRT for this router. The source of my link is https://www.reddit.com/r/teksavvy/comments/62wvwb/smartrg_gpl_violation/dfxglda?utm_source=share&utm_medium=web2x&context=3. That'll most likely be a no as other devices with that bootloader can have different hardware configuration. E.g. SKY SR102 from the old OpenWRT Wiki does not have USB.

You do realize that neither the xDSL modem (nor most likely the wireless either) is going to be supported?

If by xDSL modem you mean the ability to connect it to an ISP, then that's fine. I don't plan on using this with an ISP (moreso I plan on using this to play around with mesh networking). As for wireless, I can work with that. I'll just have to use ethernet for now and see if I can get this to boot OpenWRT to a state where I can connect via ethernet.

My goal is to stick this into an RV and then see if I can get 3G+ to work via the USB port. I can then use another modem I have which already works with OpenWRT to send out the wireless connection (assuming I can't get wireless working on this one).

Edit: If I can learn how to get any system to work on this at all, that'd be great to help teach me how to build firmware for devices which aren't officially supported. I've never built firmware for a board before and am currently working out how exactly to use the build tools to do so. https://openwrt.org/docs/guide-developer/adding_new_device

From what I can tell, I need a device tree file to decompile in order to find out information like the leds, network adapters, and any other hardware. Problem is, /sys/firmware is an empty folder, so I'm trying to figure out where the information is located at (as the stock firmware knows about the hardware, so it's getting the info from somewhere). The symlink /proc/device-tree does not exist either.

Apparently I forgot to put the dmesg log here, so here's the log I dumped last night.

hash table entries: 512 (order: 9, 2048 bytes)
<6>console [ttyS0] enabled
<6>Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
<6>Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
<6>Memory: 123092k/129024k available (3292k kernel code, 5744k reserved, 841k data, 156k init, 0k highmem)
<6>Calibrating delay loop... 399.36 BogoMIPS (lpj=199680)
<4>Mount-cache hash table entries: 512
<6>--Kernel Config--
<6>  SMP=1
<6>  PREEMPT=1
<6>  DEBUG_SPINLOCK=0
<6>  DEBUG_MUTEXES=0
<4>Broadcom Logger v0.1 Sep  8 2015 18:30:45
<6>CPU revision is: 0002a080 (Broadcom4350)
<4>Primary instruction cache 64kB, VIPT, 4-way, linesize 16 bytes.
<4>Primary data cache 32kB, 2-way, VIPT, cache aliases, linesize 16 bytes
<6>Calibrating delay loop... 402.43 BogoMIPS (lpj=201216)
<6>Brought up 2 CPUs
<6>net_namespace: 1140 bytes
<6>NET: Registered protocol family 16
<4>Total Flash size: 0K with -1 sectors
<4>Internal 1P2 VREG will be shutdown if unused...Used, leave it on (00009162-00008be6=1404>=300)
<4>registering PCI controller with io_map_base unset
<4>registering PCI controller with io_map_base unset
<4>bio: create slab <bio-0> at 0
<5>SCSI subsystem initialized
<6>usbcore: registered new interface driver usbfs
<6>usbcore: registered new interface driver hub
<6>usb_fortune: Module loaded.
<6>usbcore: registered new device driver usb
<7>pci 0000:00:00.0: reg 10 32bit mmio: [0x10004000-0x10013fff]
<7>pci 0000:00:00.0: reg 30 32bit mmio: [0x000000-0x0007ff]
<7>pci 0000:00:00.0: supports D1 D2
<6>pci 0000:00:00.0: PME# supported from D0 D3hot D3cold
<6>pci 0000:00:00.0: PME# disabled
<7>pci 0000:00:09.0: reg 10 32bit mmio: [0x10002600-0x100026ff]
<7>pci 0000:00:0a.0: reg 10 32bit mmio: [0x10002500-0x100025ff]
<6>pci 0000:01:00.0: PME# supported from D0 D3hot
<6>pci 0000:01:00.0: PME# disabled
<6>pci 0000:01:00.0: PCI bridge, secondary bus 0000:02
<6>pci 0000:01:00.0:   IO window: disabled
<6>pci 0000:01:00.0:   MEM window: disabled
<6>pci 0000:01:00.0:   PREFETCH window: disabled
<7>PCI: Setting latency timer of device 0000:01:00.0 to 64
<4>e[0;34mBLOG v3.0 Initializede[0m
<4>BLOG Rule v1.0 Initialized
<4>Broadcom IQoS v0.1 Sep  8 2015 18:34:12 initialized
<4>Broadcom GBPM v0.1 Sep  8 2015 18:34:12 initialized
<6>NET: Registered protocol family 8
<6>NET: Registered protocol family 20
<6>NET: Registered protocol family 2
<6>IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
<6>TCP established hash table entries: 4096 (order: 3, 32768 bytes)
<6>TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
<6>TCP: Hash tables configured (established 4096 bind 4096)
<6>TCP reno registered
<6>NET: Registered protocol family 1
<6>JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
<6>fuse init (API version 7.11)
<6>msgmni has been set to 240
<6>io scheduler noop registered (default)
<7>PCI: Setting latency timer of device 0000:01:00.0 to 64
<4>Driver 'sd' needs updating - please use bus_type methods
<6>PPP generic driver version 2.4.2
<6>PPP Deflate Compression module registered
<6>PPP BSD Compression module registered
<6>NET: Registered protocol family 24
<6>PPPoL2TP kernel driver, V1.0
<4>bcm963xx_mtd driver v1.0
<4>Failed to read image tag from flash
<6>Broadcom DSL NAND controller (BrcmNand Controller)
<4>-->brcmnand_scan: CS=0, numchips=1, csi=0
<6>mtd->oobsize=0, mtd->eccOobSize=0
<4>NAND_CS_NAND_XOR=00000000
<4>Disabling XOR on CS#0
<4>brcmnand_scan: Calling brcmnand_probe for CS=0
<4>B4: NandSelect=40000001, nandConfig=15142200, chipSelect=0
<4>brcmnand_read_id: CS0: dev_id=92f18095
<4>After: NandSelect=40000001, nandConfig=15142200
<4>DevId 92f18095 may not be supported.  Will use config info
<4>Spare Area Size = 16B/512B
<4>Block size=00020000, erase shift=17
<6>NAND Config: Reg=15142200, chipSize=128 MB, blockSize=128K, erase_shift=11
<6>busWidth=1, pageSize=2048B, page_shift=11, page_mask=000007ff
<4>timing1 not adjusted: 6574845b
<4>timing2 not adjusted: 00001e96
<4>brcmnand_adjust_acccontrol: gAccControl[CS=0]=00000000, ACC=f7ff1010
<4>ECC level changed to 15
<4>OOB size changed to 16
<6>BrcmNAND mfg 0 0 UNSUPPORTED NAND CHIP 128MB on CS0
<6>
<6>Found NAND on CS0: ACC=f7ff1010, cfg=15142200, flashId=92f18095, tim1=6574845b, tim2=00001e96
<6>BrcmNAND version = 0x0400 128MB @00000000
<4>brcmnand_scan: Done brcmnand_probe
<4>brcmnand_scan: B4 nand_select = 40000001
<4>brcmnand_scan: After nand_select = 40000001
<4>100 CS=0, chip->ctrl->CS[0]=0
<4>ECC level 15, threshold at 1 bits
<4>reqEccLevel=0, eccLevel=15
<4>190 eccLevel=15, chip->ecclevel=15, acc=f7ff1010
<4>brcmnand_scan 10
<4>200 CS=0, chip->ctrl->CS[0]=0
<4>200 chip->ecclevel=15, acc=f7ff1010
<6>page_shift=11, bbt_erase_shift=17, chip_shift=27, phys_erase_shift=17
<4>brcmnand_scan 220
<6>Brcm NAND controller version = 4.0 NAND flash size 128MB @18000000
<4>brcmnand_scan 230
<4>brcmnand_scan 40, mtd->oobsize=64, chip->ecclayout=00000000
<4>brcmnand_scan 42, mtd->oobsize=64, chip->ecclevel=15, isMLC=0, chip->cellinfo=0
<4>ECC layout=brcmnand_oob_bch4_4k
<6>brcmnand_scan:  mtd->oobsize=64
<6>brcmnand_scan: oobavail=50, eccsize=512, writesize=2048
<6>brcmnand_scan, eccsize=512, writesize=2048, eccsteps=4, ecclevel=15, eccbytes=3
<4>300 CS=0, chip->ctrl->CS[0]=0
<4>500 chip=87a45590, CS=0, chip->ctrl->CS[0]=0
<4>-->brcmnand_default_bbt
<4>brcmnand_default_bbt: bbt_td = bbt_main_descr
<7>Bad block table Bbt0 found at page 0000ffc0, version 0x01 for chip on CS0
<7>Bad block table 1tbB found at page 0000ff80, version 0x01 for chip on CS0
<6>brcmnandCET: Status -> Deferred
<4>brcmnand_scan 99
<5>Creating 4 MTD partitions on "brcmnand.0":
<5>0x000000020000-0x000003d80000 : "rootfs"
<5>0x000003d80000-0x000007ae0000 : "rootfs_update"
<5>0x000007b00000-0x000007f00000 : "data"
<5>0x000000000000-0x000000020000 : "nvram"
<6>ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
<4>PCI: Enabling device 0000:00:0a.0 (0000 -> 0002)
<7>PCI: Setting latency timer of device 0000:00:0a.0 to 64
<6>ehci_hcd 0000:00:0a.0: EHCI Host Controller
<6>ehci_hcd 0000:00:0a.0: new USB bus registered, assigned bus number 1
<4>ehci_hcd 0000:00:0a.0: Enabling legacy PCI PM
<6>ehci_hcd 0000:00:0a.0: irq 18, io mem 0x10002500
<6>ehci_hcd 0000:00:0a.0: USB f.f started, EHCI 1.00
<6>usb usb1: configuration #1 chosen from 1 choice
<6>hub 1-0:1.0: USB hub found
<6>hub 1-0:1.0: 2 ports detected
<4>generic_probe wake up Monitor!!
<6>message received before monitor task is initialized kerSysSendtoMonitorTask 
<6>ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
<4>PCI: Enabling device 0000:00:09.0 (0000 -> 0002)
<7>PCI: Setting latency timer of device 0000:00:09.0 to 64
<6>ohci_hcd 0000:00:09.0: OHCI Host Controller
<6>ohci_hcd 0000:00:09.0: new USB bus registered, assigned bus number 2
<6>ohci_hcd 0000:00:09.0: irq 17, io mem 0x10002600
<6>usb usb2: configuration #1 chosen from 1 choice
<6>hub 2-0:1.0: USB hub found
<6>hub 2-0:1.0: 2 ports detected
<4>generic_probe wake up Monitor!!
<6>message received before monitor task is initialized kerSysSendtoMonitorTask 
<6>usbcore: registered new interface driver cdc_acm
<6>cdc_acm: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters
<6>usbcore: registered new interface driver usblp
<6>Initializing USB Mass Storage driver...
<6>usbcore: registered new interface driver usb-storage
<6>USB Mass Storage support registered.
<6>usbcore: registered new interface driver usbserial
<6>USB Serial support registered for generic
<6>usbcore: registered new interface driver usbserial_generic
<6>usbserial: USB Serial Driver core
<6>USB Serial support registered for GSM modem (1-port)
<6>usbcore: registered new interface driver option
<6>option: v0.7.2:USB Driver for GSM modems
<6>input: Unspecified device as /devices/virtual/input/input0
<4>brcmboard: brcm_board_init entry
<4>SES: Button Interrupt 0x1 is enabled
<4>SES: LED GPIO 0xc000 is enabled
<4>PCIe: No device found - Powering down
<4>power detect button init: GPIO 0x8027 is enable as power button
<4>power output button: GPIO 0x8026
<4>ECO enable button: GPIO 0x8023 is enabled as button detection
<6>Serial: BCM63XX driver $Revision: 3.00 $
<6>e[0;33mMagic SysRq enabled (type ^ h for list of supported commands)e[0m
<6>ttyS0 at MMIO 0xb0000180 (irq = 13) is a BCM63XX
<6>ttyS1 at MMIO 0xb00001a0 (irq = 42) is a BCM63XX
<4>bcmPktDma_init: Broadcom Packet DMA Library initialized
<4>Total # RxBds=1448
<4>bcmPktDmaBds_init: Broadcom Packet DMA BDs initialized
<4>
<4>bcmxtmrt: Broadcom BCM3168D0 ATM/PTM Network Device v0.5 Sep  8 2015 18:33:49
<3>IPSEC SPU: SUCCEEDED 
<4>GACT probability NOT on
<4>Mirror/redirect action on
<4>u32 classifier
<4>    input device check on 
<4>    Actions configured 
<6>GRE over IPv4 tunneling driver
<6>TCP cubic registered
<6>Initializing XFRM netlink socket
<6>NET: Registered protocol family 10
<6>IPv6 over IPv4 tunneling driver
<6>NET: Registered protocol family 17
<6>NET: Registered protocol family 15
<6>Initializing MCPD Module
<6>Ebtables v2.0 registered
<6>ebt_time registered
<6>ebt_ftos registered
<6>ebt_wmm_mark registered
<6>802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
<6>All bugs added by David S. Miller <davem@redhat.com>
<5>jffs2_scan_inode_node(): CRC failed on node at 0x019177c0: Read 0xffffffff, calculated 0x1460037f
<4>Empty flash at 0x01917808 ends at 0x01918000
<4>VFS: Mounted root (jffs2 filesystem) readonly on device 31:0.
<6>Freeing unused kernel memory: 156k freed
<3>usbfs: unrecognised mount option "defaults" or missing value
<4>usbfs: mount parameter error.
<4>Empty flash at 0x0030238c ends at 0x00302800
<4>chipinfo: module license 'proprietary' taints kernel.
<4>Disabling lock debugging due to kernel taint
<4>brcmchipinfo: brcm_chipinfo_init entry
<4>Broadcom Ingress QoS Module  Char Driver v0.1 Sep  8 2015 18:31:34 Registered<243>e[0m
<4>
<4>Broadcom Ingress QoS ver 0.1 initialized
<4>BPM: tot_mem_size=134217728B (128MB), buf_mem_size=20132655B (19MB), num of buffers=7489, buf size=2688
<4>Broadcom BPM Module Char Driver v0.1 Sep  8 2015 18:31:16 Registered<244>e[0m
<4>e[0;34m[NTC bpm] bpm_set_status: BPM status : enabled 
<4>e[0m
<4>NBUFF v1.0 Initialized
<4>e[0;36;44mInitialized fcache statee[0m
<4>e[0;36;44mBroadcom Packet Flow Cache  Char Driver v2.2 Sep  8 2015 18:31:35 Registered<242>e[0m
<4>Created Proc FS /procfs/fcache
<4>e[0;36;44mBroadcom Packet Flow Cache registered with netdev chaine[0m
<4>e[0;36;44mBroadcom Packet Flow Cache learning via BLOG enabled.e[0m
<4>e[0;36;44mConstructed Broadcom Packet Flow Cache v2.2 Sep  8 2015 18:31:35e[0m
<4>chipId 0x631680D0
<4>Broadcom Forwarding Assist Processor (FAP) Char Driver v0.1 Sep  8 2015 18:31:17 Registered <241>
<4>FAP Debug values at 0x00000010 0x00000010
<4>Enabling SMISBUS PHYS_FAP_BASE[0] is 0x10c01000
<4>FAP Soft Reset Done
<4>4ke Reset Done
<4>Enabling SMISBUS PHYS_FAP_BASE[1] is 0x10c01000
<4>FAP Soft Reset Done
<4>4ke Reset Done
<4>FAP Debug values at 0xa5e1cea0 0xa5e5cea0
<4>Allocated FAP0 GSO Buffers (0xA5E22FB8) : 1048576 bytes @ 0xA5F00000
<4>Allocated FAP1 GSO Buffers (0xA5E62FB8) : 1048576 bytes @ 0xA5800000
<4>Allocated FAP0 TM SDRAM Queue Storage (a5e22fbc) : 341376 bytes @ a5e80000
<4>Allocated FAP1 TM SDRAM Queue Storage (a5e62fbc) : 341376 bytes @ a5900000
<4>e[0;34m[NTC fapProto] fapReset  : Reset FAP Protocol layere[0m
<4>[FAP0] DSPRAM : stack <0x80000000><1536>, global <0x80000600><6600>, free <56>, total<8192>
<4>[FAP1] DSPRAM : stack <0x80000000><1536>, global <0x80000600><6600>, free <56>, total<8192>
<4>[FAP0] PSM : addr<0x80002000>, used <24520>, free <56>, total <24576>
<4>[FAP1] PSM : addr<0x80002000>, used <24520>, free <56>, total <24576>
<4>[FAP0] Flows supported: 218 (dsp 56, psm 21, qsm 141)
<4>[FAP1] Flows supported: 218 (dsp 56, psm 21, qsm 141)
<4>[FAP0] DQM : totalAllocMemory 14652 bytes, availableMemory 14808 bytes, nextByteAddress 0xE0010628
<4>[FAP1] DQM : totalAllocMemory 14652 bytes, availableMemory 14808 bytes, nextByteAddress 0xE0010628
<4>[FAP0] GSO Buffer set to 0xA5F00000
<4>[FAP1] GSO Buffer set to 0xA5800000
<4>[FAP0] FAP BPM Initialized.
<4>[FAP1] FAP BPM Initialized.
<4>fapDrv_construct: FAP0: pManagedMemory=b0820710. wastage 8 bytes
<4>fapDrv_construct: FAP1: pManagedMemory=b0a20710. wastage 8 bytes
<4>bcmPktDma_bind: FAP Driver binding successfull
<4>[FAP0] FAP TM: ON
<4>[FAP1] FAP TM: ON
<4>bcmxtmcfg: bcmxtmcfg_init entry
<4>adsl: adsl_init entry
<4>Broadcom BCM63168D0 Ethernet Network Device v0.1 Sep  8 2015 18:33:37
<4>Broadcom GMAC Char Driver v0.1 Sep  8 2015 18:33:45 Registered<249>e[0m
<4>Broadcom GMAC Driver v0.1 Sep  8 2015 18:33:45 Initialized
<4>fapDrv_psmAlloc: fapIdx=1, size: 4000, offset=b0a20710 bytes remaining 7000
<4>ETH Init: Ch:0 - 200 tx BDs at 0xb0a20710
<4>fapDrv_psmAlloc: fapIdx=0, size: 4000, offset=b0820710 bytes remaining 7000
<4>ETH Init: Ch:1 - 200 tx BDs at 0xb0820710
<4>fapDrv_psmAlloc: wastage 8 bytes
<4>fapDrv_psmAlloc: fapIdx=0, size: 4808, offset=b08216b0 bytes remaining 2184
<4>ETH Init: Ch:0 - 600 rx BDs at 0xb08216b0
<4>fapDrv_psmAlloc: wastage 8 bytes
<4>fapDrv_psmAlloc: fapIdx=1, size: 4808, offset=b0a216b0 bytes remaining 2184
<4>ETH Init: Ch:1 - 600 rx BDs at 0xb0a216b0
<4>dgasp: kerSysRegisterDyingGaspHandler: bcmsw registered 
<4>eth0: MAC Address: 90:72:82:D9:F5:B0
<4>eth1: MAC Address: 90:72:82:D9:F5:B0
<4>eth2: MAC Address: 90:72:82:D9:F5:B0
<4>eth3: MAC Address: 90:72:82:D9:F5:B0
<4>eth4: MAC Address: 90:72:82:D9:F5:B0
<4>e[0;34m[NTC arl] arlEnable : Enabled ARL binding to FAPe[0m
<4>Broadcom Adress Resolution Logic Processor (ARL) Char Driver v0.1 Sep  8 2015 18:31:16 Registered <245>
<4>--SMP support
<4>wl: high_wmark_tot=4867
<7>PCI: Setting latency timer of device 0000:00:00.0 to 64
<4>wl: passivemode=1
<4>wl: napimode=0
<4>wl0: allocskbmode=1 currallocskbsz=512
<4>otp_read_pci: bad crc
<4>Neither SPROM nor OTP has valid image
<4>wl:srom/otp not programmed, using main memory mapped srom info(wombo board)
<4>wl:loading /etc/wlan/bcm6362_vars.bin
<4>Failed to open srom image from '/etc/wlan/bcm6362_vars.bin'.
<4>wl:loading /etc/wlan/bcm6362_map.bin
<4>wl: updating srom from flash...
<4>wl: updating srom from flash...
<4>wl0: Broadcom BCM435f 802.11 Wireless Controller 5.100.138.2008.cpe4.12L06B.4
<4>dgasp: kerSysRegisterDyingGaspHandler: wl0 registered 
<4>p8021ag: p8021ag_init entry
<6>Broadcom 802.1Q VLAN Interface, v0.1
<4>Host MIPS Clock divider pwrsaving is enabled
<4>DDR Self Refresh pwrsaving is enabled
<4>Netfilter messages via NETLINK v0.30.
<6>ip_tables: (C) 2000-2006 Netfilter Core Team
<4>nf_conntrack version 0.5.0 (2016 buckets, 8064 max)
<6>device eth0 entered promiscuous mode
<6>ADDRCONF(NETDEV_UP): eth0: link is not ready
<6>ip6_tables: (C) 2000-2006 Netfilter Core Team
<6>device eth1 entered promiscuous mode
<6>ADDRCONF(NETDEV_UP): eth1: link is not ready
<6>device eth2 entered promiscuous mode
<6>ADDRCONF(NETDEV_UP): eth2: link is not ready
<6>device eth3 entered promiscuous mode
<6>ADDRCONF(NETDEV_UP): eth3: link is not ready
<4>*** dslThread dslPid=765
<4>BcmAdsl_Initialize=0xC021D1E0, g_pFnNotifyCallback=0xC02669D4
<4>AdslCoreLoadImage: Bonding PHY
<4>loading bonding line PHY.
<4>open error...
<4>AdslFileLoadImage name /etc/adsl/adsl_phy.bin
<4>lmemhdr[2]=0x10080000, pAdslLMem[2]=0x10080000
<4>pSdramPHY=0xA7FFFFF8, 0x20309803 0x202804
<4>*** XfaceOffset: 0x65790 => 0x65790 ***
<4>*** PhySdramSize got adjusted: 0xF6748 => 0x17B440 ***
<4>AdslCoreSharedMemInit: shareMemSize=19360(19360)
<4>*** XdslCoreHwReset6306 ***
<4>**** SetupReferenceClockTo6306 ****
<4>*** XdslCoreHwReset6306 ***
<4>AdslCoreHwReset:  pLocSbSta=84950000 bkupThreshold=3072
<4>AdslCoreHwReset:  AdslOemDataAddr = 0xA7F5FE28
<4>***BcmDiagsMgrRegisterClient: 0 ***
<4>dgasp: kerSysRegisterDyingGaspHandler: dsl0 registered 
<4>fapDrv_psmAlloc: fapIdx=1, size: 1600, offset=b0a22980 bytes remaining 584
<4>XTM Init: Ch:0 - 200 rx BDs at 0xb0a22980
<4>fapDrv_psmAlloc: fapIdx=1, size: 128, offset=b0a22fc0 bytes remaining 456
<4>XTM Init: Ch:1 - 16 rx BDs at 0xb0a22fc0
<4>bcmxtmrt: PTM/ATM Bonding Mode configured in system 
<4>bcmxtmcfg: gulBondDslMonitorValid = 1 
<4>*** XdslCoreHwReset6306 ***
<6>ADDRCONF(NETDEV_UP): eth4: link is not ready
<6>monitor task is initialized pid= 338 
<2>eth0 (switch port: 1) Link UP 1000 mbps full duplex
<6>ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
<6>br0: port 1(eth0) entering forwarding state

Edit: Okay, so looking at https://openwrt.org/docs/techref/targets/brcm63xx and the dmesg log, I have 100% confirmed this modem uses the brcm63xx target. It's renamed to bcm63xx which is what shows up in the dmesg log. I'm still not sure why the cpu is marked as Broadcom4350 in /proc/cpuinfo instead of the BCM63168 that is on the wiki. I do know it's mips32 big endian though due to checking the existing busybox which I pulled and being able to successfully compile and run sha256sum for the modem statically.

➜  windstream-modem file busybox
busybox: ELF 32-bit MSB executable, MIPS, MIPS32 version 1 (SYSV), dynamically linked, interpreter /lib/ld-uClibc.so.0, no section header

I updated the Imgur pictures to add a SoC shot. It's a bcm6318ukfe80 (bcm6318).