Skip to content

Asus RT N53

Michael Zhilin edited this page May 17, 2016 · 2 revisions

Overview

Asus RT-N53 is Broadcom-based board with:

  • BCM5358UB0 SoC, MIPS74K, 500MHz
  • 32MiB RAM
  • 8MiB flash (SPI-mx25l)
  • WiFi BGN chip
  • Ether Roboswitch 5x100M

How to build

  • Check out freebsd-HEAD to /path/to/src
  • clone the freebsd-wifi-build repo to /path/to/freebsd-wifi-build
$ cd /path/to/src
$ ../freebsd-wifi-build/bin/build bcm-trx

How to flash (using tftp)

  • Setup your host as 192.168.1.100
  • Plug into a LAN port
  • On host, start tftp session from /path/to/tftpboot:
$ cd /path/to/tftpboot
$ tftp 192.168.1.1
tftp> mode binary
tftp> put bcm-trx.trx
  • Power on router
  • TFTP establishes connection to router and start writing session
  • Wait for 2-3 minutes after TFTP session completion (flash is slow for writing, so it takes few minutes).
  • Reboot router

It's easier to verify this with the serial port wired up.

Issues

Boot log

CFE version 5.70.55.33 @VERSION_TYPE@ based on BBP 1.0.37 for BCM947XX (32bit,SP,LE)
Build Date: 三  1月  2 13:05:22 CST 2013 (root@raymonddev-vm)
Copyright (C) 2000-2008 Broadcom Corporation.

Init Arena
Init Devs.
Boot partition size = 131072(0x20000)
Found a 8MB ST compatible serial flash
et0: Broadcom BCM47XX 10/100/1000 Mbps Ethernet Controller 5.70.55.33 @VERSION_TYPE@
CPU type 0x19749: 500MHz
Tot mem: 32768 KBytes

CFE mem:    0x80700000 - 0x8079FDE0 (654816)
Data:       0x80735C30 - 0x80738E60 (12848)
BSS:        0x80738E60 - 0x80739DE0 (3968)
Heap:       0x80739DE0 - 0x8079DDE0 (409600)
Stack:      0x8079DDE0 - 0x8079FDE0 (8192)
Text:       0x80700000 - 0x80735C2C (220204)

Device eth0:  hwaddr BC-EE-7B-71-97-8B, ipaddr 192.168.1.1, mask 255.255.255.0
        gateway not set, nameserver not set
Startup canceled
CFE> boot -tftp -raw -addr=0x80800000 -max=0x770000 192.168.1.178:kernel.BCM.tramp.bin
Loader:raw Filesys:tftp Dev:eth0 File:192.168.1.178:kernel.BCM.tramp.bin Options:(null)
Loading: CFE works as TFTP Client.
......TFTP_BLKLEN!!
break!! last block!!
.. 5177416 bytes read
Entry at 0x80800000
Closing network.
Starting program at 0x80800000
entry: mips_init()
Cache info:
  picache_stride    = 4096
  picache_loopcount = 8
  pdcache_stride    = 4096
  pdcache_loopcount = 8
cpu0: MIPS Technologies processor v73.151
  MMU: Standard TLB, 64 entries (4K 16K 64K 256K 1M 16M 64M 256M pg sizes)
  L1 i-cache: 4 ways of 256 sets, 32 bytes per line
  L1 d-cache: 4 ways of 256 sets, 32 bytes per line
  L2 cache: disabled
  Config1=0xfea3519e<PerfCount,WatchRegs,MIPS16,EJTAG>
  Config2=0x80000000
  Config3=0x2c20
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1992-2016 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 11.0-CURRENT #0 c6124a6(user/mizhka/bcm-mips-squash-rebase)-dirty: Mon May 16 23:39:33 MSK 2016
    mizhka@gidrarium:/repo/freebsd/onion/obj/mipsel/mips.mipsel/repo/freebsd/onion/src/sys/BCM mips
gcc version 4.2.1 20070831 patched [FreeBSD]
real memory  = 32899072 (32128K bytes)
avail memory = 26075136 (24MB)
random: entropy device external interface
nexus0: <MIPS32 root nexus>
bhnd_soc0 at mem 0-0x1fffffff on nexus0
bhnd0: <BCMA BHND bus> on bhnd_soc0
bhnd0: core 5: can't find RID by port number: 0
bhnd0: core 7: can't find RID by port number: 0
bhnd0: core 10: can't find RID by port number: 0
bhnd0: core 11: can't find RID by port number: 0
bhnd0: core 12: can't find RID by port number: 0
bhnd_chipc0: <Broadcom ChipCommon I/O Controller, rev 38> mem 0x18000000-0x18000fff,0x1fc00000-0x1fffffff,0x1c000000-0x1dffffff,0x18100000-0x18100fff,0x18108000-0x18108fff at core 0 on bhnd0
bhnd_chipc0: NVRAM-OTP unsupported
cpupic0: <MIPS32 Interrupt Controller> on nexus0
clock0: <Generic MIPS32 ticker> on nexus0
Timecounter "MIPS32" frequency 250000000 Hz quality 800
Event timer "MIPS32" frequency 250000000 Hz quality 800
spi0: <ChipCommon SPI> on bhnd_chipc0
spibus0: <spibus bus> on spi0
mx25l0: <M25Pxx Flash Family> at cs 0 on spibus0
mx25l0: mx25ll64, sector 65536 bytes, 128 sectors
uart0: <16750 or compatible> on bhnd_chipc0
uart0: console (115200,n,8,1)
bhnd0: <Broadcom 802.11 MAC/PHY/Radio> mem 0x18001000-0x18001fff,0x18101000-0x18101fff at core 1 (no driver attached)
bhnd0: <Broadcom Gigabit MAC core> mem 0x18002000-0x18002fff,0x18008000-0x18008fff,0x18102000-0x18102fff at core 2 (no driver attached)
bhnd_mipscore0: <MIPS unknown, rev 4> mem 0x18003000-0x18003fff,0x18103000-0x18103fff at core 3 on bhnd0
bhnd0: <Broadcom USB 2.0 Host Controller> mem 0x18004000-0x18004fff,0x18009000-0x18009fff,0x18104000-0x18104fff at core 4 (no driver attached)
bhnd0: <Broadcom DDR1/DDR2 Memory Controller> mem 0x18005000-0x18005fff,0-0x7ffffff,0x10000000-0x17ffffff,0x80000000-0xbfffffff,0x18105000-0x18105fff at core 5 (no driver attached)
bhnd0: <Broadcom I2S Digital Audio Interface> mem 0x18006000-0x18006fff,0x18106000-0x18106fff at core 6 (no driver attached)
bhnd0: <Broadcom Internal Memory> mem 0x18007000-0x18007fff,0x1e000000-0x1e01ffff,0x18107000-0x18107fff at core 7 (no driver attached)
Timecounters tick every 10.000 msec
Trying to mount root from ufs:ufs/FBSD []...
warning: no time-of-day clock registered, system time will not be set accurately
May 12 21:47:41 init: login_getclass: unknown class 'daemon'

random: unblocking device.
*** Populating /var ..
*** Loading configuration files ..
*** Restoring from  .. 
dd: no value specified for if
gunzip: (stdin): unexpected end of file
0 blocks
*** Completed.
*** setting up hostname
*** Load kernel modules
  .. bridgestp
kldload: can't load bridgestp: No such file or directory
  .. if_bridge
kldload: can't load if_bridge: No such file or directory
  .. random
kldload: can't load random: No such file or directory
*** Setting kern.random.harvest.mask=511
kern.random.harvest.mask: 2047 -> 511
*** bringing up loopback ..
*** Default password/login databases ..
cap_mkdb: file argument: No such file or directory
*** Starting networking via /etc/rc.d/base/net
*** Interface: arge0: start
ifconfig: interface arge0 does not exist
*** Interface: arge0: done
*** Interface: bridge0: start
ifconfig: SIOCIFCREATE2: Invalid argument
ifconfig: interface bridge0 does not exist
ifconfig: interface bridge0 does not exist
ifconfig: interface bridge0 does not exist
*** Interface: bridge0: done
*** inetd
*** Done!


FreeBSD/mips (freebsd-wifi) (ttyu0)



login: root
uname -a
No home directory.
Logging in with home = "/".
# uname -a
FreeBSD freebsd-wifi 11.0-CURRENT FreeBSD 11.0-CURRENT #0 c6124a6(user/mizhka/bcm-mips-squash-rebase)-dirty: Mon May 16 23:39:33 MSK 2016     mizhka@gidrarium:/repo/freebsd/onion/obj/mipsel/mips.mipsel/repo/freebsd/onion/src/sys/BCM  mips
# devinfo -r
nexus0
  bhnd_soc0
    bhnd0
        Memory addresses:
            0x18100000-0x18100fff
            0x18101000-0x18101fff
            0x18102000-0x18102fff
            0x18103000-0x18103fff
            0x18104000-0x18104fff
            0x18106000-0x18106fff
            0x18109000-0x18109fff
            0x1810a000-0x1810afff
            0x1810d000-0x1810dfff
      bhnd_chipc0
          Memory addresses:
              0x18000000-0x18000fff
        uart0
            ChipCommon IRQs:
                2
            ChipCommon Memory:
                0x18000300-0x180003ff
        spi0
            ChipCommon Memory:
                0x18000040-0x1800004b
                0x1c000000-0x1dffffff
          spibus0
            mx25l0
      bhnd_mipscore0
          Memory addresses:
              0x18003000-0x18003fff
  cpupic0
      MIPS PIC IRQs:
          0x0
          0x1
          0x2
          0x3
          0x4
          0x5
          0x6
          0x7
  clock0
# hostname
freebsd-wifi
#