SamKnows SK-WB8

SamKnows SK-WB8

The SamKnows Whitebox 8 (SK-WB8) is SamKnow's measurement node for broadband connections in excess of 500Mbps and up to 1Gbps (which cannot be reliably measured by earlier incarnations of customized TP-Link devices).

Breaking SamKnows tradition of using retail TP-Link routers running customized OpenWrt, the SamKnows Whitebox 8 is a custom manufactured router that does not resemble any devices currently in retail.

Needs testing:

  • Wi-Fi speed and stability wifi range is very good and association is stable, but throughput is very poor
  • Failsafe mode connectivity

Install OpenWrt (generic explanation)

A TTL USB serial adapter and disassembly is required to gain access to the SamKnows-customized OpenWrt distribution, as telnet and SSH are not accessible on the SamKnows stock firmware, even in the failsafe environment.

  1. Use your favorite software to connect to the serial port at 57600 8N1
  2. Power the router up and let SamKnows' OpenWrt boot
  3. Watch for the failsafe prompt, then press “f” followed by enter key
  4. Run `passwd` to choose a root password
  5. Edit /etc/config/network to set an IP address of your choice on LAN
  6. Use scp/wget/etc to transfer OpenWrt to /tmp/ (note that dropbear sshd is configured at port 2222)
  7. `sysupgrade -n /tmp/openwrt-ramips-mt7621-sk-wb8-squashfs-sysupgrade.bin`
  8. Router will reboot into vanilla OpenWrt

You will need access to the serial port to debrick if you flash an image that does not boot. The SamKnows Whitebox 8's U-Boot is able to flash OpenWrt images loaded from TFTP.

  1. Upon power up, type “2” to re-flash via TFTP
  2. Type “Y” to confirm overwrite of existing firmware
  3. Follow the prompts to set IP addresses
  4. The router will flash the firmware and automatically reboot when complete
  1. WIP firmware that has correctly defined WPS GPIO for failsafe
  2. Stock SamKnows firmware goes into failsafe mode with WPS button, but dropbear is password protected on port 2222

hardware.button on howto use and configure the hardware button(s). Here, we merely name the buttons, so we can use them in the above Howto.

The SamKnows SK-WB8 has the following buttons:

BUTTON Event
Reset reset
WPS wps
Architecture MIPS 1004KEc
Vendor MediaTek
Bootloader U-Boot
System-On-Chip MediaTek MT7621A - MIPS 1004KEc
CPU/Speed Dual-core 880MHz (4 threads)
Flash-Chip Spansion S25FL128S......0
Flash size 16 MiB
RAM 128 MiB
Wireless MT7603E 802.11bgn, MT7612E 802.11an+ac
Ethernet 4+1 port Gigabit switch with VLANs
USB 1x 2.0
Serial Yes
JTAG No
Layer0 raw flash, 16384 KiB
Layer1 mtd0
u-boot
192 KiB
mtd1
u-boot-env
64 KiB
mtd2
factory
64 KiB
mtd3
firmware
7872 KiB
mtd7
recovery
1856 KiB
Layer2 mtd4
kernel
about 1 MiB
mtd5
rootfs
Layer3 /dev/root
around 2 MiB
mtd6
rootfs_data
around 4.5 MiB

Note that the MediaTek WiFi EEPROMs are located at:

  • 2.4GHz: factory offset 000h
  • 5GHz: factory offset 0000h

Exterior Backside label

PCB (Heatsinks Removed)

PCB Top

MT7602EN on the left, connected to stamped metal inverted-F antennae
MT7612EN on the right, U.FL connectors to 2 small PCB antennae mounted in case (not pictured)

If you are careful, it is possible to flip the PCB over without disconnecting antennae, making re-assembly easier.

  1. Turn Whitebox upside down
  2. Remove 4x rubber feet
  3. Remove 4x screws
  4. Gently insert a flathead screwdriver or knife along the seams
  5. Gently pry and the clips will easily release (2 clips along all edges except 3 clips along the rear)
  6. Lift PCB from the front (towards LEDs) and pull forward to free ethernet ports and buttons
  7. Lift PCB from the rear and flip over towards the front

You should now have access to the top of the PCB for the serial port without having to unglue the antenna connectors.

Be extremely careful not to scrape/knock the surface mount resistors between the CPU and RAM chips off, as they are extremely small and impossible to solder back on by hand

The Whitebox can be reassembled without screws to make future disassembly easier, though the PCB will rattle slightly.

port.serial general information about the serial port, serial port cable, etc.

How to connect to the Serial Port (J2) of the SK-WB8:

Serial Port

  • Pin 1: VCC (3V3) (towards Ethernet ports)
  • Pin 2: GND
  • Pin 3: Tx
  • Pin 4: Rx (towards LEDs)
Serial connection parameters
for SamKnows SK-WB8
57600, 8N1
GPIO Description
46 (Bank 1 GPIO 14) WPS LED
47 (Bank 1 GPIO 15) USB2 LED
MT7602EN GPIO WLAN 1 LED
MT7612EN GPIO WLAN 2 LED
43 (Bank 1 GPIO 11) WPS Button
41 (Bank 1 GPIO 9) Reset Button

Note that the WLAN LEDs are not userspace controlled, and the mt76 driver does not presently initialize LEDs attached to the WiFi chip's GPIOs.

=================================================================== MT7621 stage1 code Mar 12 2015 14:43:30 (ASIC) CPU=500000000 HZ BUS=125000000 HZ ================================================================== Change MPLL source from XTAL to CR... do MEMPLL setting.. MEMPLL Config : 0x31100000 3PLL mode + External loopback === XTAL-40Mhz === DDR-800Mhz === PLL2 FB_DL: 0xc, 1/0 = 555/469 31000000 PLL4 FB_DL: 0x12, 1/0 = 535/489 49000000 PLL3 FB_DL: 0x15, 1/0 = 544/480 55000000 do DDR setting..[01F40000] Apply DDR2 Setting...(use customer AC) 0 8 16 24 32 40 48 56 64 72 80 88 96 104 112 120 -------------------------------------------------------------------------------- 0000:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0001:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0002:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0003:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0004:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0005:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0006:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0007:| 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0008:| 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0009:| 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 000A:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000B:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000C:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000D:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000E:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000F:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0010:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0011:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0012:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0013:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0014:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0015:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0016:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0017:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0018:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0019:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 001A:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 001B:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 001C:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 001D:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 001E:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 001F:| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 DRAMC_DQSCTL1[0e0]=1A000000 DRAMC_DQSGCTL[124]=80000000 rank 0 coarse = 8 rank 0 fine = 56 B:| 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 opt_dle value:5 DRAMC_DDR2CTL[07c]=40001253 DRAMC_PADCTL4[0e4]=00000005 DRAMC_DQIDLY1[210]=0B0B0A0B DRAMC_DQIDLY2[214]=08090909 DRAMC_DQIDLY3[218]=07050503 DRAMC_DQIDLY4[21c]=08060906 DRAMC_R0DELDLY[018]=00002E30 ================================================================== RX DQS perbit delay software calibration ================================================================== 1.0-15 bit dq delay value ================================================================== bit| 0 1 2 3 4 5 6 7 8 9 -------------------------------------- 0 | 9 7 8 9 7 6 9 6 3 5 10 | 5 7 6 9 6 8 -------------------------------------- ================================================================== 2.dqs window x=pass dqs delay value (min~max)center y=0-7bit DQ of every group input delay:DQS0 =48 DQS1 = 46 ================================================================== bit DQS0 bit DQS1 0 (1~92)46 8 (1~91)46 1 (1~90)45 9 (1~92)46 2 (1~90)45 10 (1~91)46 3 (1~92)46 11 (1~91)46 4 (1~92)46 12 (0~92)46 5 (1~90)45 13 (1~91)46 6 (2~94)48 14 (1~92)46 7 (1~92)46 15 (1~91)46 ================================================================== 3.dq delay value last ================================================================== bit| 0 1 2 3 4 5 6 7 8 9 -------------------------------------- 0 | 11 10 11 11 9 9 9 8 3 5 10 | 5 7 6 9 6 8 ================================================================== ================================================================== TX perbyte calibration ================================================================== DQS loop = 15, cmp_err_1 = ffff0000 dqs_perbyte_dly.last_dqsdly_pass[0]=15, finish count=1 dqs_perbyte_dly.last_dqsdly_pass[1]=15, finish count=2 DQ loop=15, cmp_err_1 = ffff0000 dqs_perbyte_dly.last_dqdly_pass[0]=15, finish count=1 dqs_perbyte_dly.last_dqdly_pass[1]=15, finish count=2 byte:0, (DQS,DQ)=(8,8) byte:1, (DQS,DQ)=(8,8) DRAMC_DQODLY1[200]=88888888 DRAMC_DQODLY2[204]=88888888 20,data:88 [EMI] DRAMC calibration passed =================================================================== MT7621 stage1 code done CPU=500000000 HZ BUS=125000000 HZ =================================================================== U-Boot 1.1.3 (Jan 15 2016 - 09:47:18) Board: Ralink APSoC DRAM: 128 MB relocate_code Pointer at: 87fb8000 Config XHCI 40M PLL flash manufacture id: 1, device id 20 18 find flash: S25FL128P ============================================ Ralink UBoot Version: 4.3.0.0 -------------------------------------------- ASIC MT7621A DualCore (MAC to MT7530 Mode) DRAM_CONF_FROM: Auto-Detection DRAM_TYPE: DDR2 DRAM bus: 16 bit Xtal Mode=3 OCP Ratio=1/4 Flash component: SPI Flash Date:Jan 15 2016 Time:09:47:18 ============================================ icache: sets:256, ways:4, linesz:32 ,total:32768 dcache: sets:256, ways:4, linesz:32 ,total:32768 ##### The CPU freq = 880 MHZ #### estimate memory size =128 Mbytes #Reset_MT7530 Please choose the operation: 1: Load system code to SDRAM via TFTP. 2: Load system code then write to Flash via TFTP. 3: Boot system code via Flash (default). 4: Entr boot command line interface. 7: Load Boot Loader code then write to Flash via Serial. 9: Load Boot Loader code then write to Flash via TFTP.  4  3  2  1  0 bootcount: 0 3: System Boot system code via Flash. Erasing SPI Flash... . Writing to SPI Flash... . done ## Booting image at bc050000 ... Image Name: MIPS OpenWrt Linux-3.18.23 Image Type: MIPS Linux Kernel Image (lzma compressed) Data Size: 1230350 Bytes = 1.2 MB Load Address: 80001000 Entry Point: 80001000 Verifying Checksum ... OK Uncompressing Kernel Image ... OK No initrd ## Transferring control to Linux (at address 80001000) ... ## Giving linux memsize in MB, 128 Starting kernel ... [ 0.000000] Linux version 3.18.23 (samknows@nbs2.samknows.com) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r48220) ) #1 SMP Thu Jan 14 21:50:39 GMT 2016 [ 0.000000] SoC Type: MediaTek MT7621 ver:1 eco:3 [ 0.000000] bootconsole [early0] enabled [ 0.000000] CPU0 revision is: 0001992f (MIPS 1004Kc) [ 0.000000] MIPS: machine is SamKnows Whitebox 8 [ 0.000000] Determined physical RAM map: [ 0.000000] memory: 08000000 @ 00000000 (usable) [ 0.000000] Initrd not found or empty - disabling initrd [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x00000000-0x07ffffff] [ 0.000000] HighMem empty [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x00000000-0x07ffffff] [ 0.000000] Initmem setup node 0 [mem 0x00000000-0x07ffffff] [ 0.000000] Detected 3 available secondary CPU(s) [ 0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes. [ 0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes [ 0.000000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes. [ 0.000000] PERCPU: Embedded 9 pages/cpu @8110a000 s5824 r8192 d22848 u36864 [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512 [ 0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2 [ 0.000000] PID hash table entries: 512 (order: -1, 2048 bytes) [ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes) [ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes) [ 0.000000] Writing ErrCtl register=0001ca00 [ 0.000000] Readback ErrCtl register=0001ca00 [ 0.000000] Memory: 125836K/131072K available (2776K kernel code, 144K rwdata, 536K rodata, 180K init, 228K bss, 5236K reserved, 0K highmem) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 [ 0.000000] Hierarchical RCU implementation. [ 0.000000] NR_IRQS:256 [ 0.000000] gic: revision 3.0 [ 0.000000] CPU Clock: 880MHz [ 0.000000] Calibrating delay loop... 577.53 BogoMIPS (lpj=2887680) [ 0.050000] pid_max: default: 32768 minimum: 301 [ 0.060000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.070000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.080000] Performance counters: mips/1004K PMU enabled, 2 32-bit counters available to each CPU, irq -1 (share with timer interrupt) [ 0.090000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes. [ 0.090000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes [ 0.090000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes. [ 0.090000] CPU1 revision is: 0001992f (MIPS 1004Kc) [ 0.190000] Synchronize counters for CPU 1: done. [ 0.190000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes. [ 0.190000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes [ 0.190000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes. [ 0.200000] CPU2 revision is: 0001992f (MIPS 1004Kc) [ 0.290000] Synchronize counters for CPU 2: done. [ 0.300000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes. [ 0.300000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes [ 0.300000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes. [ 0.300000] CPU3 revision is: 0001992f (MIPS 1004Kc) [ 0.390000] Synchronize counters for CPU 3: done. [ 0.400000] Brought up 4 CPUs [ 0.410000] pinctrl core: initialized pinctrl subsystem [ 0.420000] NET: Registered protocol family 16 [ 0.430000] pull PCIe RST: RALINK_RSTCTRL = 0 [ 0.730000] release PCIe RST: RALINK_RSTCTRL = 7000000 [ 0.740000] ***** Xtal 40MHz ***** [ 0.740000] release PCIe RST: RALINK_RSTCTRL = 7000000 [ 0.750000] Port 0 N_FTS = 1b102800 [ 0.750000] Port 1 N_FTS = 1b102800 [ 0.760000] Port 2 N_FTS = 1b102800 [ 1.890000] PCIE2 no card, disable it(RST&CLK) [ 1.900000] -> 21007f2 [ 1.900000] PCIE0 enabled [ 1.910000] PCIE1 enabled [ 1.910000] PCI host bridge /pcie@1e140000 ranges: [ 1.920000] MEM 0x0000000060000000..0x000000006fffffff [ 1.930000] IO 0x000000001e160000..0x000000001e16ffff [ 1.970000] mt7621_gpio 1e000600.gpio: registering 32 gpios [ 1.980000] mt7621_gpio 1e000600.gpio: registering 32 gpios [ 1.990000] mt7621_gpio 1e000600.gpio: registering 32 gpios [ 2.000000] PCI host bridge to bus 0000:00 [ 2.000000] pci_bus 0000:00: root bus resource [mem 0x60000000-0x6fffffff] [ 2.010000] pci_bus 0000:00: root bus resource [io 0xffffffff] [ 2.020000] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff] [ 2.030000] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring [ 2.040000] pci 0000:00:01.0: bridge configuration invalid ([bus 00-00]), reconfiguring [ 2.050000] pci 0000:00:00.0: BAR 0: no space for [mem size 0x80000000] [ 2.060000] pci 0000:00:00.0: BAR 0: failed to assign [mem size 0x80000000] [ 2.070000] pci 0000:00:01.0: BAR 0: no space for [mem size 0x80000000] [ 2.080000] pci 0000:00:01.0: BAR 0: failed to assign [mem size 0x80000000] [ 2.090000] pci 0000:00:00.0: BAR 8: assigned [mem 0x60000000-0x600fffff] [ 2.100000] pci 0000:00:00.0: BAR 9: assigned [mem 0x60100000-0x601fffff pref] [ 2.110000] pci 0000:00:01.0: BAR 8: assigned [mem 0x60200000-0x602fffff] [ 2.120000] pci 0000:00:01.0: BAR 9: assigned [mem 0x60300000-0x603fffff pref] [ 2.130000] pci 0000:00:00.0: BAR 1: assigned [mem 0x60400000-0x6040ffff] [ 2.140000] pci 0000:00:01.0: BAR 1: assigned [mem 0x60410000-0x6041ffff] [ 2.150000] pci 0000:01:00.0: BAR 0: assigned [mem 0x60000000-0x600fffff 64bit] [ 2.160000] pci 0000:01:00.0: BAR 6: assigned [mem 0x60100000-0x6010ffff pref] [ 2.170000] pci 0000:00:00.0: PCI bridge to [bus 01] [ 2.170000] pci 0000:00:00.0: bridge window [mem 0x60000000-0x600fffff] [ 2.180000] pci 0000:00:00.0: bridge window [mem 0x60100000-0x601fffff pref] [ 2.190000] pci 0000:02:00.0: BAR 0: assigned [mem 0x60200000-0x602fffff 64bit] [ 2.200000] pci 0000:02:00.0: BAR 6: assigned [mem 0x60300000-0x6030ffff pref] [ 2.210000] pci 0000:00:01.0: PCI bridge to [bus 02] [ 2.210000] pci 0000:00:01.0: bridge window [mem 0x60200000-0x602fffff] [ 2.220000] pci 0000:00:01.0: bridge window [mem 0x60300000-0x603fffff pref] [ 2.230000] BAR0 at slot 0 = 0 [ 2.230000] bus=0x0, slot = 0x0 [ 2.240000] BAR0 at slot 1 = 0 [ 2.240000] bus=0x0, slot = 0x1 [ 2.250000] bus=0x1, slot = 0x0, irq=0xff [ 2.250000] bus=0x2, slot = 0x1, irq=0xff [ 2.260000] Switched to clocksource MIPS [ 2.260000] NET: Registered protocol family 2 [ 2.270000] TCP established hash table entries: 1024 (order: 0, 4096 bytes) [ 2.290000] TCP bind hash table entries: 1024 (order: 1, 8192 bytes) [ 2.300000] TCP: Hash tables configured (established 1024 bind 1024) [ 2.310000] TCP: reno registered [ 2.320000] UDP hash table entries: 256 (order: 1, 8192 bytes) [ 2.330000] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes) [ 2.340000] NET: Registered protocol family 1 [ 2.350000] futex hash table entries: 1024 (order: 4, 65536 bytes) [ 2.370000] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 2.380000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc. [ 2.400000] msgmni has been set to 245 [ 2.410000] io scheduler noop registered [ 2.420000] io scheduler deadline registered (default) [ 2.430000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled [ 2.440000] console [ttyS0] disabled [ 2.450000] 1e000c00.uartlite: ttyS0 at MMIO 0x1e000c00 (irq = 34, base_baud = 3125000) is a 16550A [ 2.470000] console [ttyS0] enabled [ 2.470000] console [ttyS0] enabled [ 2.480000] bootconsole [early0] disabled [ 2.480000] bootconsole [early0] disabled [ 2.500000] spi-mt7621 1e000b00.spi: sys_freq: 50000000 [ 2.510000] m25p80 spi32766.0: s25fl129p1 (16384 Kbytes) [ 2.520000] m25p80 spi32766.0: using chunked io [ 2.530000] 5 ofpart partitions found on MTD device spi32766.0 [ 2.540000] Creating 5 MTD partitions on "spi32766.0": [ 2.550000] 0x000000000000-0x000000030000 : "u-boot" [ 2.560000] 0x000000030000-0x000000040000 : "u-boot-env" [ 2.570000] 0x000000040000-0x000000050000 : "factory" [ 2.590000] 0x000000050000-0x000000e30000 : "firmware" [ 2.640000] 2 uimage-fw partitions found on MTD device firmware [ 2.660000] 0x000000050000-0x00000017c64e : "kernel" [ 2.670000] 0x00000017c64e-0x000000e30000 : "rootfs" [ 2.680000] mtd: device 5 (rootfs) set to be root filesystem [ 2.690000] 1 squashfs-split partitions found on MTD device rootfs [ 2.700000] 0x000000d20000-0x000000e30000 : "rootfs_data" [ 2.710000] 0x000000e30000-0x000001000000 : "recovery" [ 2.720000] netif_napi_add() called with weight 128 on device eth%d [ 2.750000] change HW-TRAP to 0x17ccf [ 2.760000] libphy: mdio: probed [ 2.770000] ralink_soc_eth 1e100000.ethernet: loaded mt7530 driver [ 2.790000] ralink_soc_eth 1e100000.ethernet eth0: ralink at 0xbe100000, irq 11 [ 2.800000] mt7621_wdt 1e000100.wdt: Initialized [ 2.810000] TCP: cubic registered [ 2.820000] NET: Registered protocol family 17 [ 2.830000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this. [ 2.850000] 8021q: 802.1Q VLAN Support v1.8 [ 2.870000] VFS: Mounted root (squashfs filesystem) readonly on device 31:5. [ 2.880000] Freeing unused kernel memory: 180K (80363000 - 80390000) [ 2.990000] random: nonblocking pool is initialized [ 4.430000] init: Console is alive [ 4.440000] init: - watchdog - [ 6.590000] usbcore: registered new interface driver usbfs [ 6.600000] usbcore: registered new interface driver hub [ 6.610000] usbcore: registered new device driver usb [ 6.640000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.660000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.680000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.700000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.720000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.740000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.760000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.780000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.800000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.820000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.880000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.900000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.920000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.940000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.960000] FM_OUT value: u4FmOut = 0(0x00000000) [ 6.980000] FM_OUT value: u4FmOut = 0(0x00000000) [ 7.000000] FM_OUT value: u4FmOut = 0(0x00000000) [ 7.020000] FM_OUT value: u4FmOut = 0(0x00000000) [ 7.040000] FM_OUT value: u4FmOut = 0(0x00000000) [ 7.060000] FM_OUT value: u4FmOut = 0(0x00000000) [ 7.210000] xhci-hcd xhci-hcd: xHCI Host Controller [ 7.220000] xhci-hcd xhci-hcd: new USB bus registered, assigned bus number 1 [ 7.230000] xhci-hcd xhci-hcd: irq 30, io mem 0x1e1c0000 [ 7.240000] hub 1-0:1.0: USB hub found [ 7.250000] hub 1-0:1.0: 2 ports detected [ 7.260000] xhci-hcd xhci-hcd: xHCI Host Controller [ 7.270000] xhci-hcd xhci-hcd: new USB bus registered, assigned bus number 2 [ 7.280000] hub 2-0:1.0: USB hub found [ 7.290000] hub 2-0:1.0: 1 port detected [ 7.440000] init: - preinit - Press the [f] key and hit [enter] to enter failsafe mode Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level [ 10.970000] mount_root: loading kmods from internal overlay [ 11.570000] jffs2: notice: (347) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found. [ 11.600000] block: attempting to load /tmp/jffs_cfg/upper/etc/config/fstab [ 11.620000] block: extroot: not configured [ 11.780000] jffs2: notice: (344) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found. [ 12.050000] block: attempting to load /tmp/jffs_cfg/upper/etc/config/fstab [ 12.070000] block: extroot: not configured [ 12.130000] mount_root: switching to jffs2 overlay [ 12.170000] procd: - early - [ 12.170000] procd: - watchdog - Failed to connect to ubus [ 12.870000] procd: - ubus - [ 13.880000] procd: - init - Please press Enter to activate this console. [ 15.580000] NET: Registered protocol family 10 [ 16.160000] register rt2860 [ 16.170000] [ 16.170000] [ 16.170000] === pAd = c0481000, size = 1720032 === [ 16.170000] [ 16.190000] <-- RTMPAllocTxRxRingMemory, Status=0 [ 16.200000] <-- RTMPAllocAdapterBlock, Status=0 [ 16.210000] pAd->CSRBaseAddress =0xc0380000, csr_addr=0xc0380000! [ 16.220000] device_id =0x7612 [ 16.230000] ==>rlt_wlan_chip_onoff(): OnOff:1, Reset= 1, pAd->WlanFunCtrl:0x0, Reg-WlanFunCtrl=0x20a [ 16.260000] cfg_mode=14 [ 16.270000] wmode_band_equal(): Band Not Equal! [ 16.280000] Key1Str is Invalid key length(0) or Type(0) [ 16.290000] Key2Str is Invalid key length(0) or Type(0) [ 16.300000] Key3Str is Invalid key length(0) or Type(0) [ 16.310000] Key4Str is Invalid key length(0) or Type(0) [ 16.320000] RtmpChipOpsEepromHook::e2p_type=0, inf_Type=5 [ 16.330000] RtmpEepromGetDefault::e2p_dafault=2 [ 16.340000] RtmpEepromTypeAdjust:: eeFlashId = 0x7662. [ 16.350000] NVM is FLASH mode (pAd->flash_offset = 0x48000) [ 16.360000] get_dev_name_prefix(): dev_idx = 1, dev_name_prefix=rai [ 16.390000] [ 16.390000] [ 16.390000] === pAd = c0781000, size = 1720032 === [ 16.390000] [ 16.400000] <-- RTMPAllocTxRxRingMemory, Status=0 [ 16.410000] <-- RTMPAllocAdapterBlock, Status=0 [ 16.420000] pAd->CSRBaseAddress =0xc0680000, csr_addr=0xc0680000! [ 16.440000] device_id =0x7662 [ 16.440000] ==>rlt_wlan_chip_onoff(): OnOff:1, Reset= 1, pAd->WlanFunCtrl:0x0, Reg-WlanFunCtrl=0x20a [ 16.460000] cfg_mode=9 [ 16.470000] wmode_band_equal(): Band Not Equal! [ 16.480000] Key1Str is Invalid key length(0) or Type(0) [ 16.490000] Key2Str is Invalid key length(0) or Type(0) [ 16.500000] Key3Str is Invalid key length(0) or Type(0) [ 16.510000] Key4Str is Invalid key length(0) or Type(0) [ 16.520000] RtmpChipOpsEepromHook::e2p_type=0, inf_Type=5 [ 16.530000] RtmpEepromGetDefault::e2p_dafault=2 [ 16.540000] NVM is efuse and the information is too less to bring up the interface [ 16.560000] Force to use Flash mode [ 16.560000] NVM is FLASH mode (pAd->flash_offset = 0x40000) [ 16.570000] get_dev_name_prefix(): dev_idx = 0, dev_name_prefix=ra BusyBox v1.23.2 (2016-01-14 21:31:09 GMT) built-in shell (ash) _ ___ __ _ _ __ ___ | | ___ __ _____ _____ / __|/ _` | '_ ` _ \| |/ / '_ \ / _ \ \ /\ / / __| \__ \ (_| | | | | | | <| | | | (_) \ V V /\__ \ |___/\__,_|_| |_| |_|_|\_\_| |_|\___/ \_/\_/ |___/ P E R F O R M A N C E M O N I T O R I N G OS: OpenWRT Chaos Calmer, r48220 SW: WB8 Build ------------------------------------------------- root@SKWB8:/#


[ 0.000000] Linux version 4.4.7 (andrew@doopad) (gcc version 5.3.0 (OpenWrt GCC 5.3.0 r49223) ) #1 SMP Tue Apr 26 17:23:12 UTC 2016 [ 0.000000] SoC Type: MediaTek MT7621 ver:1 eco:3 [ 0.000000] bootconsole [early0] enabled [ 0.000000] CPU0 revision is: 0001992f (MIPS 1004Kc) [ 0.000000] MIPS: machine is SamKnows Whitebox 8 [ 0.000000] Determined physical RAM map: [ 0.000000] memory: 08000000 @ 00000000 (usable) [ 0.000000] Initrd not found or empty - disabling initrd [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x0000000000000000-0x0000000007ffffff] [ 0.000000] HighMem empty [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x0000000007ffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000007ffffff] [ 0.000000] On node 0 totalpages: 32768 [ 0.000000] free_area_init_node: node 0, pgdat 8044cfe0, node_mem_map 81000000 [ 0.000000] Normal zone: 256 pages used for memmap [ 0.000000] Normal zone: 0 pages reserved [ 0.000000] Normal zone: 32768 pages, LIFO batch:7 [ 0.000000] VPE topology {2,2} total 4 [ 0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes. [ 0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes [ 0.000000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes. [ 0.000000] PERCPU: Embedded 10 pages/cpu @8110b000 s8416 r8192 d24352 u40960 [ 0.000000] pcpu-alloc: s8416 r8192 d24352 u40960 alloc=10*4096 [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512 [ 0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2 [ 0.000000] PID hash table entries: 512 (order: -1, 2048 bytes) [ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes) [ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes) [ 0.000000] Writing ErrCtl register=00000065 [ 0.000000] Readback ErrCtl register=00000065 [ 0.000000] Memory: 124708K/131072K available (3508K kernel code, 163K rwdata, 820K rodata, 232K init, 248K bss, 6364K reserved, 0K cma-reserved, 0K highmem) [ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 [ 0.000000] Hierarchical RCU implementation. [ 0.000000] NR_IRQS:256 [ 0.000000] clocksource: GIC: mask: 0xffffffffffffffff max_cycles: 0xcaf478abb4, max_idle_ns: 440795247997 ns [ 0.000000] sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 21474836475000000ns [ 0.010000] Calibrating delay loop... 586.13 BogoMIPS (lpj=2930688) [ 0.070000] pid_max: default: 32768 minimum: 301 [ 0.080000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.090000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.100000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes. [ 0.100000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes [ 0.100000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes. [ 0.100000] CPU1 revision is: 0001992f (MIPS 1004Kc) [ 0.190000] Synchronize counters for CPU 1: done. [ 0.200000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes. [ 0.200000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes [ 0.200000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes. [ 0.200000] CPU2 revision is: 0001992f (MIPS 1004Kc) [ 0.290000] Synchronize counters for CPU 2: done. [ 0.300000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes. [ 0.300000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes [ 0.300000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes. [ 0.300000] CPU3 revision is: 0001992f (MIPS 1004Kc) [ 0.390000] Synchronize counters for CPU 3: done. [ 0.400000] Brought up 4 CPUs [ 0.400000] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 0.410000] pinctrl core: initialized pinctrl subsystem [ 0.420000] NET: Registered protocol family 16 [ 0.430000] rt2880-pinmux pinctrl: try to register 61 pins ... [ 0.430000] pinctrl core: registered pin 0 (io0) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 1 (io1) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 2 (io2) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 3 (io3) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 4 (io4) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 5 (io5) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 6 (io6) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 7 (io7) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 8 (io8) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 9 (io9) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 10 (io10) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 11 (io11) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 12 (io12) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 13 (io13) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 14 (io14) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 15 (io15) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 16 (io16) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 17 (io17) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 18 (io18) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 19 (io19) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 20 (io20) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 21 (io21) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 22 (io22) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 23 (io23) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 24 (io24) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 25 (io25) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 26 (io26) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 27 (io27) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 28 (io28) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 29 (io29) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 30 (io30) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 31 (io31) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 32 (io32) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 33 (io33) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 34 (io34) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 35 (io35) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 36 (io36) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 37 (io37) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 38 (io38) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 39 (io39) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 40 (io40) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 41 (io41) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 42 (io42) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 43 (io43) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 44 (io44) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 45 (io45) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 46 (io46) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 47 (io47) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 48 (io48) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 49 (io49) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 50 (io50) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 51 (io51) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 52 (io52) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 53 (io53) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 54 (io54) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 55 (io55) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 56 (io56) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 57 (io57) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 58 (io58) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 59 (io59) on rt2880-pinmux [ 0.430000] pinctrl core: registered pin 60 (io60) on rt2880-pinmux [ 0.430000] pinctrl core: add 5 pinctrl maps [ 0.430000] rt2880-pinmux pinctrl: found group selector 1 for i2c [ 0.430000] rt2880-pinmux pinctrl: found group selector 3 for uart2 [ 0.430000] rt2880-pinmux pinctrl: found group selector 2 for uart3 [ 0.430000] rt2880-pinmux pinctrl: found group selector 8 for rgmii2 [ 0.430000] rt2880-pinmux pinctrl: found group selector 10 for sdhci [ 0.430000] rt2880-pinmux pinctrl: request pin 3 (io3) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 4 (io4) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 9 (io9) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 10 (io10) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 11 (io11) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 12 (io12) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 5 (io5) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 6 (io6) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 7 (io7) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 8 (io8) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 22 (io22) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 23 (io23) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 24 (io24) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 25 (io25) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 26 (io26) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 27 (io27) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 28 (io28) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 29 (io29) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 30 (io30) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 31 (io31) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 32 (io32) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 33 (io33) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 41 (io41) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 42 (io42) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 43 (io43) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 44 (io44) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 45 (io45) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 46 (io46) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 47 (io47) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: request pin 48 (io48) for pinctrl [ 0.430000] rt2880-pinmux pinctrl: failed to lookup the sleep state [ 0.430000] FPU Affinity set after 11720 emulations [ 0.460000] pinctrl core: add 1 pinctrl maps [ 0.460000] rt2880-pinmux pinctrl: found group selector 6 for pcie [ 0.460000] rt2880-pinmux pinctrl: request pin 19 (io19) for 1e140000.pcie [ 0.460000] pull PCIe RST: RALINK_RSTCTRL = 0 [ 0.690000] release PCIe RST: RALINK_RSTCTRL = 7000000 [ 0.700000] ***** Xtal 40MHz ***** [ 0.700000] release PCIe RST: RALINK_RSTCTRL = 7000000 [ 0.710000] Port 0 N_FTS = 1b102800 [ 0.720000] Port 1 N_FTS = 1b102800 [ 0.730000] Port 2 N_FTS = 1b102800 [ 1.590000] PCIE2 no card, disable it(RST&CLK) [ 1.600000] -> 21007f2 [ 1.610000] PCIE0 enabled [ 1.610000] PCIE1 enabled [ 1.620000] PCI host bridge /pcie@1e140000 ranges: [ 1.630000] MEM 0x0000000060000000..0x000000006fffffff [ 1.640000] IO 0x000000001e160000..0x000000001e16ffff [ 1.650000] PCI coherence region base: 0x60000000, mask/settings: 0xf0000002 [ 1.690000] mt7621_gpio 1e000600.gpio: registering 32 gpios [ 1.700000] mt7621_gpio 1e000600.gpio: registering 32 gpios [ 1.720000] mt7621_gpio 1e000600.gpio: registering 32 gpios [ 1.730000] PCI host bridge to bus 0000:00 [ 1.740000] pci_bus 0000:00: root bus resource [mem 0x60000000-0x6fffffff] [ 1.750000] pci_bus 0000:00: root bus resource [io 0xffffffff] [ 1.760000] pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0] [ 1.770000] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff] [ 1.790000] pci 0000:00:00.0: [0e8d:0801] type 01 class 0x060400 [ 1.790000] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x7fffffff] [ 1.790000] pci 0000:00:00.0: reg 0x14: [mem 0x00000000-0x0000ffff] [ 1.790000] pci 0000:00:00.0: supports D1 [ 1.790000] pci 0000:00:00.0: PME# supported from D0 D1 D3hot [ 1.790000] pci 0000:00:01.0: [0e8d:0801] type 01 class 0x060400 [ 1.790000] pci 0000:00:01.0: reg 0x10: [mem 0x00000000-0x7fffffff] [ 1.790000] pci 0000:00:01.0: reg 0x14: [mem 0x00000000-0x0000ffff] [ 1.790000] pci 0000:00:01.0: supports D1 [ 1.790000] pci 0000:00:01.0: PME# supported from D0 D1 D3hot [ 1.790000] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring [ 1.810000] pci 0000:00:01.0: bridge configuration invalid ([bus 00-00]), reconfiguring [ 1.820000] pci 0000:01:00.0: [14c3:7612] type 00 class 0x028000 [ 1.820000] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit] [ 1.820000] pci 0000:01:00.0: reg 0x30: [mem 0x00000000-0x0000ffff pref] [ 1.820000] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold [ 1.820000] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01 [ 1.820000] pci 0000:02:00.0: [14c3:7662] type 00 class 0x028000 [ 1.820000] pci 0000:02:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit] [ 1.820000] pci 0000:02:00.0: reg 0x30: [mem 0x00000000-0x0000ffff pref] [ 1.820000] pci 0000:02:00.0: PME# supported from D0 D3hot D3cold [ 1.820000] pci_bus 0000:02: busn_res: [bus 02-ff] end is updated to 02 [ 1.820000] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 02 [ 1.820000] pci 0000:00:00.0: BAR 0: no space for [mem size 0x80000000] [ 1.840000] pci 0000:00:00.0: BAR 0: failed to assign [mem size 0x80000000] [ 1.850000] pci 0000:00:01.0: BAR 0: no space for [mem size 0x80000000] [ 1.860000] pci 0000:00:01.0: BAR 0: failed to assign [mem size 0x80000000] [ 1.880000] pci 0000:00:00.0: BAR 8: assigned [mem 0x60000000-0x600fffff] [ 1.890000] pci 0000:00:00.0: BAR 9: assigned [mem 0x60100000-0x601fffff pref] [ 1.900000] pci 0000:00:01.0: BAR 8: assigned [mem 0x60200000-0x602fffff] [ 1.920000] pci 0000:00:01.0: BAR 9: assigned [mem 0x60300000-0x603fffff pref] [ 1.930000] pci 0000:00:00.0: BAR 1: assigned [mem 0x60400000-0x6040ffff] [ 1.950000] pci 0000:00:01.0: BAR 1: assigned [mem 0x60410000-0x6041ffff] [ 1.960000] pci 0000:01:00.0: BAR 0: assigned [mem 0x60000000-0x600fffff 64bit] [ 1.970000] pci 0000:01:00.0: BAR 6: assigned [mem 0x60100000-0x6010ffff pref] [ 1.990000] pci 0000:00:00.0: PCI bridge to [bus 01] [ 2.000000] pci 0000:00:00.0: bridge window [mem 0x60000000-0x600fffff] [ 2.010000] pci 0000:00:00.0: bridge window [mem 0x60100000-0x601fffff pref] [ 2.030000] pci 0000:02:00.0: BAR 0: assigned [mem 0x60200000-0x602fffff 64bit] [ 2.040000] pci 0000:02:00.0: BAR 6: assigned [mem 0x60300000-0x6030ffff pref] [ 2.050000] pci 0000:00:01.0: PCI bridge to [bus 02] [ 2.060000] pci 0000:00:01.0: bridge window [mem 0x60200000-0x602fffff] [ 2.080000] pci 0000:00:01.0: bridge window [mem 0x60300000-0x603fffff pref] [ 2.090000] BAR0 at slot 0 = 0 [ 2.100000] bus=0x0, slot = 0x0 [ 2.100000] BAR0 at slot 1 = 0 [ 2.110000] bus=0x0, slot = 0x1 [ 2.120000] bus=0x1, slot = 0x0, irq=0xff [ 2.130000] bus=0x2, slot = 0x1, irq=0xff [ 2.130000] clocksource: Switched to clocksource GIC [ 2.140000] NET: Registered protocol family 2 [ 2.150000] TCP established hash table entries: 1024 (order: 0, 4096 bytes) [ 2.160000] TCP bind hash table entries: 1024 (order: 1, 8192 bytes) [ 2.170000] TCP: Hash tables configured (established 1024 bind 1024) [ 2.180000] UDP hash table entries: 256 (order: 1, 8192 bytes) [ 2.200000] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes) [ 2.210000] NET: Registered protocol family 1 [ 2.220000] PCI: CLS 80 bytes, default 32 [ 2.220000] alarmtimer alarmtimer: no of_node; not parsing pinctrl DT [ 2.220000] futex hash table entries: 1024 (order: 3, 32768 bytes) [ 2.240000] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 2.250000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc. [ 2.270000] io scheduler noop registered [ 2.280000] io scheduler deadline registered (default) [ 2.290000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled [ 2.300000] serial8250 serial8250: no of_node; not parsing pinctrl DT [ 2.300000] console [ttyS0] disabled [ 2.310000] 1e000c00.uartlite: ttyS0 at MMIO 0x1e000c00 (irq = 33, base_baud = 3125000) is a 16550A [ 2.330000] console [ttyS0] enabled [ 2.340000] bootconsole [early0] disabled [ 2.360000] MediaTek Nand driver init, version v2.1 Fix AHB virt2phys error [ 2.370000] pinctrl core: add 1 pinctrl maps [ 2.370000] rt2880-pinmux pinctrl: found group selector 9 for spi [ 2.370000] rt2880-pinmux pinctrl: request pin 34 (io34) for 1e000b00.spi [ 2.370000] rt2880-pinmux pinctrl: request pin 35 (io35) for 1e000b00.spi [ 2.370000] rt2880-pinmux pinctrl: request pin 36 (io36) for 1e000b00.spi [ 2.370000] rt2880-pinmux pinctrl: request pin 37 (io37) for 1e000b00.spi [ 2.370000] rt2880-pinmux pinctrl: request pin 38 (io38) for 1e000b00.spi [ 2.370000] rt2880-pinmux pinctrl: request pin 39 (io39) for 1e000b00.spi [ 2.370000] rt2880-pinmux pinctrl: request pin 40 (io40) for 1e000b00.spi [ 2.370000] spi-mt7621 1e000b00.spi: sys_freq: 50000000 [ 2.390000] m25p80 spi32766.0: found s25fl128s, expected mx25l6405d [ 2.400000] m25p80 spi32766.0: using chunked io (size=32) [ 2.410000] m25p80 spi32766.0: s25fl128s (16384 Kbytes) [ 2.420000] 5 ofpart partitions found on MTD device spi32766.0 [ 2.430000] Creating 5 MTD partitions on "spi32766.0": [ 2.440000] 0x000000000000-0x000000030000 : "u-boot" [ 2.450000] 0x000000030000-0x000000040000 : "u-boot-env" [ 2.460000] 0x000000040000-0x000000050000 : "factory" [ 2.480000] 0x000000050000-0x000000800000 : "firmware" [ 2.500000] 2 uimage-fw partitions found on MTD device firmware [ 2.520000] 0x000000050000-0x0000001c46f8 : "kernel" [ 2.530000] 0x0000001c46f8-0x000000800000 : "rootfs" [ 2.540000] mtd: device 5 (rootfs) set to be root filesystem [ 2.550000] 1 squashfs-split partitions found on MTD device rootfs [ 2.560000] 0x0000003d0000-0x000000800000 : "rootfs_data" [ 2.570000] 0x000000e30000-0x000001000000 : "recovery" [ 2.580000] netif_napi_add() called with weight 128 on device eth%d [ 2.610000] libphy: mdio: probed [ 2.630000] mtk_soc_eth 1e100000.ethernet: loaded mt7530 driver [ 2.640000] mtk_soc_eth 1e100000.ethernet eth0: mediatek frame engine at 0xbe100000, irq 10 [ 2.660000] mt7621_wdt 1e000100.wdt: Initialized [ 2.670000] NET: Registered protocol family 10 [ 2.680000] NET: Registered protocol family 17 [ 2.690000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this. [ 2.710000] 8021q: 802.1Q VLAN Support v1.8 [ 2.720000] hctosys: unable to open rtc device (rtc0) [ 2.730000] UBIFS error (pid: 1): cannot open "ubi0:rootfs", error -19 [ 2.750000] VFS: Mounted root (squashfs filesystem) readonly on device 31:5. [ 2.770000] Freeing unused kernel memory: 232K (80466000 - 804a0000) [ 2.960000] random: nonblocking pool is initialized [ 3.800000] init: Console is alive [ 3.800000] init: - watchdog - [ 4.510000] usbcore: registered new interface driver usbfs [ 4.520000] usbcore: registered new interface driver hub [ 4.530000] usbcore: registered new device driver usb [ 4.550000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 4.560000] ehci-platform: EHCI generic platform driver [ 4.570000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 4.590000] ohci-platform: OHCI generic platform driver [ 4.600000] xhci-mtk 1e1c0000.xhci: xHCI Host Controller [ 4.610000] xhci-mtk 1e1c0000.xhci: new USB bus registered, assigned bus number 1 [ 4.630000] xhci-mtk 1e1c0000.xhci: hcc params 0x01401198 hci version 0x96 quirks 0x00210010 [ 4.650000] xhci-mtk 1e1c0000.xhci: irq 29, io mem 0x1e1c0000 [ 4.660000] usb usb1: no of_node; not parsing pinctrl DT [ 4.660000] hub 1-0:1.0: no of_node; not parsing pinctrl DT [ 4.660000] hub 1-0:1.0: USB hub found [ 4.670000] hub 1-0:1.0: 2 ports detected [ 4.680000] xhci-mtk 1e1c0000.xhci: xHCI Host Controller [ 4.690000] xhci-mtk 1e1c0000.xhci: new USB bus registered, assigned bus number 2 [ 4.700000] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM. [ 4.720000] usb usb2: no of_node; not parsing pinctrl DT [ 4.720000] hub 2-0:1.0: no of_node; not parsing pinctrl DT [ 4.720000] hub 2-0:1.0: USB hub found [ 4.730000] hub 2-0:1.0: 1 port detected [ 4.740000] init: - preinit - [ 8.270000] jffs2: notice: (393) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found. [ 8.310000] mount_root: switching to jffs2 overlay [ 8.350000] procd: - early - [ 8.350000] procd: - watchdog - [ 9.030000] procd: - ubus - [ 9.090000] procd: - init - [ 9.610000] ip6_tables: (C) 2000-2006 Netfilter Core Team [ 9.620000] Loading modules backported from Linux version v4.4-rc5-1913-gc8fdf68 [ 9.640000] Backport generated by backports.git backports-20151218-0-g2f58d9d [ 9.690000] mt76x2e 0000:01:00.0: ASIC revision: 76120044 [ 9.720000] ROM patch already applied [ 9.720000] Firmware Version: 0.0.00 [ 9.730000] Build: 1 [ 9.740000] Build Time: 201507311614____ [ 9.770000] Firmware running! [ 9.770000] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht' [ 9.770000] mt76x2e 0000:02:00.0: ASIC revision: 76020044 [ 9.810000] ROM patch already applied [ 9.810000] Firmware Version: 0.0.00 [ 9.820000] Build: 1 [ 9.830000] Build Time: 201507311614____ [ 9.860000] Firmware running! [ 9.860000] ieee80211 phy1: Selected rate control algorithm 'minstrel_ht' [ 9.870000] ip_tables: (C) 2000-2006 Netfilter Core Team [ 9.890000] nf_conntrack version 0.5.0 (1952 buckets, 7808 max) [ 10.020000] xt_time: kernel timezone is -0000 [ 10.030000] PPP generic driver version 2.4.2 [ 10.040000] NET: Registered protocol family 24 [ 14.190000] device eth0 entered promiscuous mode [ 14.210000] br-lan: port 1(eth0) entered forwarding state [ 14.220000] br-lan: port 1(eth0) entered forwarding state [ 16.220000] br-lan: port 1(eth0) entered forwarding state [ 16.760000] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready [ 17.110000] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready [ 17.120000] device wlan0 entered promiscuous mode [ 17.140000] device wlan1 entered promiscuous mode BusyBox v1.24.2 () built-in shell (ash) _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- DESIGNATED DRIVER (Bleeding Edge, r49223) ----------------------------------------------------- * 2 oz. Orange Juice Combine all juices in a * 2 oz. Pineapple Juice tall glass filled with * 2 oz. Grapefruit Juice ice, stir well. * 2 oz. Cranberry Juice ----------------------------------------------------- root@OpenWrt:~#


Note #1: SamKnows Whitebox 8's bootloader keeps track of failed boots by incrementing U-Boot environment variable bootcount. If bootcount reaches 3, U-Boot boots from the recovery partition. The patch takes care of this behavior with the script /etc/init.d/bootcount (START=99) which resets bootcount to 0 on each completed boot.

Note #2: The MT7602EN reports itself as 0x14c3:0x7612 which is not listed in the upstream mt76 driver. The patch takes care of this by patching the OpenWrt mt76 makefile in package/kernel/mt76/patches/000-mt7612.patch.

Note #3: WiFi transmit power is correctly calibrated and has decent range and stability. However, speed remains to be tested. Bear in mind that SamKnows never intended for these Whiteboxes to be used as APs (they only use monitor mode). YMMV.

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2024/02/12 08:58
  • by 127.0.0.1