OpenWrt Forum Archive

Topic: WRTnode long boot time

The content of this topic has been archived on 22 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Hi,

   I started to play with the WRTnode boards. This board is based on MT7620N chip. I can say that it is a very interesting board, you have access to all the pins you ever dreamed of, the size of the board is half of a credit card.

  Also what is nice about WRTnode board is that you can test any firmware using USB flash boot, simply put on a USB flash drive the firmware you want to try (put the .bin on the root of the USB flash and rename it uimage) and WRTnode will boot that firmware. But this is something I found too late.

   Currently I have 3 WRTnode cards, all are brand new and were working perfect (when I purchased them back in end of August 2014). Working perfect means that in 1-2 minutes boot sequence finished, SSID was available and it was possible to ssh or use LuCI web interface.

  I compiled my own OpenWRT distro because I wanted I2C support and I uploaded that firmware on a WRTnode. After reboot, my WRTnode was not working anymore (kernel messages on serial console stopped after ~10 seconds). Therefore I shorted pin GPIO#1 to GND, I made a special adapter ethernet cable and I was able to access failsafe mode, I connected to 192.168.1.1.

I reflashed the factory firmware (r41508) from WRTnode site (link http://wiki.wrtnode.com/ index.php?title=WRTnode_ firmware). Immediately after reboot, nothing happened. BUT after 9-10 minutes, SSID showed up and I was able to connect to WRTnode SSID (ssh, LuCI to 192.168.8.1).

The issue is this long boot time, I cannot make the board booting faster like it was initially.

To make picture complete (to make sure the hardware is not defective), I used the second WRTnode and I uploaded the same factory firmware, so I got my second WRTnode "damaged" (long boot time). The same with the 3rd one. So now all the WRTnode's are booting after 9-10 minutes.

I contacted WRTnode team and forum, nobody can see something wrong into the kernel serial messages. I looked for other uses of WRTnode, so I found qmp project (http://qmp.cat) very interesting and I decided to check mesh networks.

Therefore I flashed qmp on a WRTnode, but no SSID at all, no possibility to connect to WRTnode. WRTnode does nothing even after 20 minutes. So something is wrong on my side.

Below is a serial log file corresponding to WRTnode factory firmware boot (r41508), after almost 6 seconds, there is no message on the serial console, but suddenly, after 580 seconds, there is something and the boot process ends successfully in almost 10 minutes (593 seconds).


U-Boot 1.1.3 - Modified by Manfeel (Jul  8 2014 - 18:53:13)
Board: Ralink APSoC
_  __             ______        _
|  \/  |           |  ____|      | |
| \  / | __ _ _ __ | |__ ___  ___| |
| |\/| |/ _` | '_ \|  __/ _ \/ _ \ |
| |  | | (_| | | | | | |  __/  __/ |
|_|  |_|\__,_|_| |_|_|  \___|\___|_|

DRAM:  64 MB
relocate_code Pointer at: 83f64000
enable ephy clock...done. rf reg 29 = 5
SSC disabled.
spi_wait_nsec: 28
spi device id: ef 40 18 0 0 (40180000)
find flash: W25Q128FV
raspi_read: from:30000 len:1000
*** Warning - bad CRC, using default environment

============================================
Ralink UBoot Version: 4.1.1.0
--------------------------------------------

ASIC 7620_MP (Port5<->None)
DRAM component: 512 Mbits DDR, width 16
DRAM bus: 16 bit
Total memory: 64 MBytes
Flash component: SPI Flash
Date:Jul  8 2014  Time:18:53:13
============================================

icache: sets:512, ways:4, linesz:32 ,total:65536
dcache: sets:256, ways:4, linesz:32 ,total:32768

##### The CPU freq = 600 MHZ ####
estimate memory size =64 Mbytes
MT7620 gpio init : wps / reset pin
WRTNode LED init.


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.


or long press RESET/WPS button to enter web failsafe mode.
before LEDON:
data:3c7f86

You choosed 3
0

 

3: System Boot system code via Flash.
(Re)start USB...
USB:   usb_lowlevel_init
Mediatek/Ralink USB EHCI host init hccr b01c0000 and hcor b01c0010 hc_length 16
Register 1111 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 1 USB Device(s) found
       scanning bus for storage devices... 0 Storage Device(s) found

** Unable to use usb 0:1 for fatload **
## Booting image at 80c00000 ...
Bad Magic Number,1F9276F7
## Booting image at bc050000 ...
raspi_read: from:50000 len:40
   Image Name:   MIPS OpenWrt Linux-3.10.44
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    1029095 Bytes = 1005 kB
   Load Address: 80000000
   Entry Point:  80000000
raspi_read: from:50040 len:fb3e7
   Verifying Checksum ... OK
   Uncompressing Kernel Image ...
hdr->ih_load = 0x00000080
data pointer = 0x80c00000
first 8 bytes data = 8000006D,2F609C00
data length = 1029095
OK
No initrd
## Transferring control to Linux (at address 80000000) ...

manfeel note, bootargs is : root=8:2 rootdelay=5 rootfstype=ext4 rw eth="00:11:22:33:44:55" console=ttyS0,115200

## Giving linux memsize in MB, 64
83f033b0:linux_argv[1] = root=8:2
83f033b9:linux_argv[2] = rootdelay=5
83f033c5:linux_argv[3] = rootfstype=ext4
83f033d5:linux_argv[4] = rw
83f033d8:linux_argv[5] = eth="00:11:22:33:44:55"
83f033f0:linux_argv[6] = console=ttyS0,115200
83f03810:linux_env[0] = memsize=64
83f0381b:linux_env[1] = initrd_start=0x00000000
83f03833:linux_env[2] = initrd_size=0x0
83f03843:linux_env[3] = flash_start=0x00000000
83f0385a:linux_env[4] = flash_size=0x1000000

Starting kernel ...


[    0.000000] Linux version 3.10.44 (noel@na) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r41508) ) #20 Wed Aug 13 21:00:28 UTC 2014
[    0.000000] Board has DDR2
[    0.000000] Analog PMU set to hw control
[    0.000000] Digital PMU set to hw control
[    0.000000] SoC Type: Ralink MT7620N ver:2 eco:6
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU revision is: 00019650 (MIPS 24KEc)
[    0.000000] MIPS: machine is WRTNODE
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 04000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x03ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x03ffffff]
[    0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
[    0.000000] Kernel command line: console=ttyS0,115200 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Writing ErrCtl register=0007f1d0
[    0.000000] Readback ErrCtl register=0007f1d0
[    0.000000] Memory: 61652k/65536k available (2317k kernel code, 3884k reserved, 553k data, 200k init, 0k highmem)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:256
[    0.000000] CPU Clock: 600MHz
[    0.000000] Calibrating delay loop... 398.13 BogoMIPS (lpj=1990656)
[    0.060000] pid_max: default: 32768 minimum: 301
[    0.060000] Mount-cache hash table entries: 512
[    0.070000] pinctrl core: initialized pinctrl subsystem
[    0.070000] NET: Registered protocol family 16
[    0.090000] bio: create slab <bio-0> at 0
[    0.100000] rt2880_gpio 10000600.gpio: registering 24 gpios
[    0.100000] rt2880_gpio 10000600.gpio: registering 24 irq handlers
[    0.110000] rt2880_gpio 10000638.gpio: registering 16 gpios
[    0.110000] rt2880_gpio 10000638.gpio: registering 16 irq handlers
[    0.120000] rt2880_gpio 10000660.gpio: registering 32 gpios
[    0.120000] rt2880_gpio 10000660.gpio: registering 32 irq handlers
[    0.130000] rt2880_gpio 10000688.gpio: registering 1 gpios
[    0.130000] rt2880_gpio 10000688.gpio: registering 1 irq handlers
[    0.140000] Switching to clocksource MIPS
[    0.140000] NET: Registered protocol family 2
[    0.150000] TCP established hash table entries: 512 (order: 0, 4096 bytes)
[    0.150000] TCP bind hash table entries: 512 (order: -1, 2048 bytes)
[    0.160000] TCP: Hash tables configured (established 512 bind 512)
[    0.160000] TCP: reno registered
[    0.160000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.170000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.180000] NET: Registered protocol family 1
[    0.180000] rt-timer 10000100.timer: maximum frequncy is 2441Hz
[    0.200000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.210000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.220000] msgmni has been set to 120
[    0.220000] io scheduler noop registered
[    0.230000] io scheduler deadline registered (default)
[    0.230000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.240000] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 20) is a 16550A
[    0.250000] console [ttyS0] enabled, bootconsole disabled
[    0.250000] console [ttyS0] enabled, bootconsole disabled
[    0.260000] m25p80 spi32766.0: found w25q128, expected mx25l12805d
[    0.270000] m25p80 spi32766.0: w25q128 (16384 Kbytes)
[    0.280000] 4 ofpart partitions found on MTD device spi32766.0
[    0.280000] Creating 4 MTD partitions on "spi32766.0":
[    0.290000] 0x000000000000-0x000000030000 : "u-boot"
[    0.290000] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.300000] 0x000000040000-0x000000050000 : "factory"
[    0.310000] 0x000000050000-0x000001000000 : "firmware"
[    0.310000] 0x00000014b427-0x000001000000 : "rootfs"
[    0.320000] mtd: partition "rootfs" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only
[    0.330000] mtd: device 4 (rootfs) set to be root filesystem
[    0.340000] mtd: partition "rootfs_data" created automatically, ofs=0x8b0000, len=0x750000
[    0.350000] 0x0000008b0000-0x000001000000 : "rootfs_data"
[    0.360000] ralink_soc_eth 10100000.ethernet: Enabling TSO
[    0.360000] ralink_soc_eth 10100000.ethernet: loaded mt7530 driver
[    0.370000] eth0: done loading
[    0.370000] rt3xxx-usbphy ubsphy.3: loaded
[    0.380000] rt2880_wdt 10000120.watchdog: Initialized
[    0.390000] leds-gpio gpio-leds.4: pins are not configured from the driver
[    0.390000] TCP: cubic registered
[    0.400000] NET: Registered protocol family 17
[    0.400000] 8021q: 802.1Q VLAN Support v1.8
[    0.420000] VFS: Mounted root (squashfs filesystem) readonly on device 31:4.
[    0.430000] Freeing unused kernel memory: 200K (802ce000 - 80300000)
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
procd: Console is alive
procd: - watchdog -
[    5.550000] usbcore: registered new interface driver usbfs
[    5.550000] usbcore: registered new interface driver hub
[    5.560000] ttyS0: 3 input overrun(s)
[    5.560000] usbcore: registered new device driver usb
[    5.610000] SCSI subsystem initialized
[    5.620000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    5.630000] ehci-platform: EHCI generic platform driver
[    5.850000] rt3xxx-usbphy ubsphy.3: remote usb device wakeup disabled
[    5.860000] rt3xxx-usbphy ubsphy.3: UTMI 16bit 30MHz
[    5.860000] ehci-platform 101c0000.ehci: EHCI Host Controller
[    5.870000] ehci-platform 101c0000.ehci: new USB bus registered, assigned bus number 1
[    5.880000] ehci-platform 101c0000.ehci: irq 26, io mem 0x101c0000
[    5.910000] ehci-platform 101c0000.ehci: USB 2.0 started, EHCI 1.00
[    5.910000] hub 1-0:1.0: USB hub found
[    5.920000] hub 1-0:1.0: 1 port detected
[    5.940000] usbcore: registered new interface driver usb-storage
procd: - 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
kmod: ran 1 iterations
[  579.020000] jffs2: notice: (295) jffs2_build_xattr_subsystem: complete building xattr subsystem, 19 of xdatum (0 unchecked, 18 orphan) and 29 of xref (0 dead, 18 orphan) found.
[  579.030000] ttyS0: 2 input overrun(s)
block: extroot: no root or overlay mount defined
jffs2 is ready
jffs2 is ready
[  579.200000] jffs2: notice: (292) jffs2_build_xattr_subsystem: complete building xattr subsystem, 19 of xdatum (0 unchecked, 18 orphan) and 29 of xref (0 dead, 18 orphan) found.
switching to overlay
procd: - early -
procd: - watchdog -
procd: - ubus -
procd: - init -
Please press Enter to activate this console.
[  581.380000] NET: Registered protocol family 10
[  581.390000] ttyS0: 3 input overrun(s)
[  581.400000] NTFS driver 2.1.30 [Flags: R/O MODULE].
[  581.460000] nf_conntrack version 0.5.0 (966 buckets, 3864 max)
[  581.480000] ip6_tables: (C) 2000-2006 Netfilter Core Team
[  581.490000] Ralink/MTK WiFi EEPROM API Driver for OpenWrt Trunk. Copyright 2013 lintel<lintel.huang@gmail.com>
[  581.500000] Ralink/MTK WiFi EEPROM API:Installed.
[  581.510000] Ralink/MTK WiFi EEPROM API:SoC is MT7620.
[  582.480000] rt2860v2_ap: module license 'Proprietary' taints kernel.
[  582.490000] Disabling lock debugging due to kernel taint
[  582.540000] ttyS0: 8 input overrun(s)
[  582.550000]
[  582.550000]
[  582.550000] === pAd = c0554000, size = 871592 ===
[  582.550000]
[  582.560000] <-- RTMPAllocTxRxRingMemory, Status=0
[  582.570000] <-- RTMPAllocAdapterBlock, Status=0
[  582.570000] AP Driver version-2.7.1.6
[  582.590000] Linux video capture interface: v2.00
[  582.610000] fuse init (API version 7.22)
[  582.620000] usbcore: registered new interface driver cdc_acm
[  582.630000] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[  582.650000] ip_tables: (C) 2000-2006 Netfilter Core Team
[  582.710000] usbcore: registered new interface driver usbserial
[  582.710000] usbcore: registered new interface driver usbserial_generic
[  582.730000] usbserial: USB Serial support registered for generic
[  582.740000] usbcore: registered new interface driver uvcvideo
[  582.750000] USB Video Class driver (1.1.1)
[  582.800000] xt_time: kernel timezone is -0000
[  582.810000] usbcore: registered new interface driver ftdi_sio
[  582.810000] usbserial: USB Serial support registered for FTDI USB Serial Device
[  582.830000] PPP generic driver version 2.4.2
[  582.840000] NET: Registered protocol family 24
[  582.860000] usbcore: registered new interface driver snd-usb-audio
[  586.700000] RtmpOSNetDevDetach(): RtmpOSNetDeviceDetach(), dev->name=ra0!
[  586.710000] ttyS0: 23 input overrun(s)
[  587.280000]
[  587.280000]
[  587.280000] === pAd = c09e9000, size = 871592 ===
[  587.280000]
[  587.290000] <-- RTMPAllocTxRxRingMemory, Status=0
[  587.300000] <-- RTMPAllocAdapterBlock, Status=0
[  587.300000] AP Driver version-2.7.1.6
[  587.320000] RX DESC a280b000  size = 2048
[  587.370000] RTMP_TimerListAdd: add timer obj c0a80ec8!
[  587.370000] RTMP_TimerListAdd: add timer obj c0a4a878!
[  587.380000] RTMP_TimerListAdd: add timer obj c0a4d0c4!
[  587.380000] RTMP_TimerListAdd: add timer obj c0a4d184!
[  587.390000] RTMP_TimerListAdd: add timer obj c0a4d244!
[  587.390000] RTMP_TimerListAdd: add timer obj c0a4d304!
[  587.400000] RTMP_TimerListAdd: add timer obj c0a4d3c4!
[  587.400000] RTMP_TimerListAdd: add timer obj c0a4d484!
[  587.410000] RTMP_TimerListAdd: add timer obj c0a4d544!
[  587.410000] RTMP_TimerListAdd: add timer obj c0a4d604!
[  587.420000] RTMP_TimerListAdd: add timer obj c0a4d6c4!
[  587.420000] RTMP_TimerListAdd: add timer obj c0a4d784!
[  587.430000] RTMP_TimerListAdd: add timer obj c0a4d844!
[  587.430000] RTMP_TimerListAdd: add timer obj c0a4d904!
[  587.440000] RTMP_TimerListAdd: add timer obj c0a4d9c4!
[  587.440000] RTMP_TimerListAdd: add timer obj c0a4da84!
[  587.450000] RTMP_TimerListAdd: add timer obj c0a4db44!
[  587.460000] RTMP_TimerListAdd: add timer obj c0a4dc04!
[  587.460000] RTMP_TimerListAdd: add timer obj c0a4a84c!
[  587.470000] RTMP_TimerListAdd: add timer obj c0a4d098!
[  587.470000] RTMP_TimerListAdd: add timer obj c0a4d158!
[  587.480000] RTMP_TimerListAdd: add timer obj c0a4d218!
[  587.480000] RTMP_TimerListAdd: add timer obj c0a4d2d8!
[  587.490000] RTMP_TimerListAdd: add timer obj c0a4d398!
[  587.490000] RTMP_TimerListAdd: add timer obj c0a4d458!
[  587.500000] RTMP_TimerListAdd: add timer obj c0a4d518!
[  587.500000] RTMP_TimerListAdd: add timer obj c0a4d5d8!
[  587.510000] RTMP_TimerListAdd: add timer obj c0a4d698!
[  587.510000] RTMP_TimerListAdd: add timer obj c0a4d758!
[  587.520000] RTMP_TimerListAdd: add timer obj c0a4d818!
[  587.520000] RTMP_TimerListAdd: add timer obj c0a4d8d8!
[  587.530000] RTMP_TimerListAdd: add timer obj c0a4d998!
[  587.530000] RTMP_TimerListAdd: add timer obj c0a4da58!
[  587.540000] RTMP_TimerListAdd: add timer obj c0a4db18!
[  587.540000] RTMP_TimerListAdd: add timer obj c0a4dbd8!
[  587.550000] RTMP_TimerListAdd: add timer obj c0a4a820!
[  587.560000] RTMP_TimerListAdd: add timer obj c0a4d0f0!
[  587.560000] RTMP_TimerListAdd: add timer obj c0a4d1b0!
[  587.570000] RTMP_TimerListAdd: add timer obj c0a4d270!
[  587.570000] RTMP_TimerListAdd: add timer obj c0a4d330!
[  587.580000] RTMP_TimerListAdd: add timer obj c0a4d3f0!
[  587.580000] RTMP_TimerListAdd: add timer obj c0a4d4b0!
[  587.590000] RTMP_TimerListAdd: add timer obj c0a4d570!
[  587.590000] RTMP_TimerListAdd: add timer obj c0a4d630!
[  587.600000] RTMP_TimerListAdd: add timer obj c0a4d6f0!
[  587.600000] RTMP_TimerListAdd: add timer obj c0a4d7b0!
[  587.610000] RTMP_TimerListAdd: add timer obj c0a4d870!
[  587.610000] RTMP_TimerListAdd: add timer obj c0a4d930!
[  587.620000] RTMP_TimerListAdd: add timer obj c0a4d9f0!
[  587.620000] RTMP_TimerListAdd: add timer obj c0a4dab0!
[  587.630000] RTMP_TimerListAdd: add timer obj c0a4db70!
[  587.630000] RTMP_TimerListAdd: add timer obj c0a4dc30!
[  587.640000] RTMP_TimerListAdd: add timer obj c09f11e8!
[  587.640000] RTMP_TimerListAdd: add timer obj c09f0ddc!
[  587.650000] RTMP_TimerListAdd: add timer obj c09f11b8!
[  587.660000] RTMP_TimerListAdd: add timer obj c09f1560!
[  587.660000] RTMP_TimerListAdd: add timer obj c09f12b0!
[  587.670000] RTMP_TimerListAdd: add timer obj c09f12e0!
[  587.670000] RTMP_TimerListAdd: add timer obj c09f14a0!
[  587.680000] RTMP_TimerListAdd: add timer obj c09f14d0!
[  587.680000] RTMP_TimerListAdd: add timer obj c09f4494!
[  587.690000] RTMP_TimerListAdd: add timer obj c09f4088!
[  587.690000] RTMP_TimerListAdd: add timer obj c09f4464!
[  587.700000] RTMP_TimerListAdd: add timer obj c09f480c!
[  587.700000] RTMP_TimerListAdd: add timer obj c09f455c!
[  587.710000] RTMP_TimerListAdd: add timer obj c09f458c!
[  587.710000] RTMP_TimerListAdd: add timer obj c09f474c!
[  587.720000] RTMP_TimerListAdd: add timer obj c09f477c!
[  587.720000] RTMP_TimerListAdd: add timer obj c09f7740!
[  587.730000] RTMP_TimerListAdd: add timer obj c09f7334!
[  587.730000] RTMP_TimerListAdd: add timer obj c09f7710!
[  587.740000] RTMP_TimerListAdd: add timer obj c09f7ab8!
[  587.750000] RTMP_TimerListAdd: add timer obj c09f7808!
[  587.750000] RTMP_TimerListAdd: add timer obj c09f7838!
[  587.760000] RTMP_TimerListAdd: add timer obj c09f79f8!
[  587.760000] RTMP_TimerListAdd: add timer obj c09f7a28!
[  587.770000] RTMP_TimerListAdd: add timer obj c09fa9ec!
[  587.770000] RTMP_TimerListAdd: add timer obj c09fa5e0!
[  587.780000] RTMP_TimerListAdd: add timer obj c09fa9bc!
[  587.780000] RTMP_TimerListAdd: add timer obj c09fad64!
[  587.790000] RTMP_TimerListAdd: add timer obj c09faab4!
[  587.790000] RTMP_TimerListAdd: add timer obj c09faae4!
[  587.800000] RTMP_TimerListAdd: add timer obj c09faca4!
[  587.800000] RTMP_TimerListAdd: add timer obj c09facd4!
[  587.810000] RTMP_TimerListAdd: add timer obj c09fdc98!
[  587.810000] RTMP_TimerListAdd: add timer obj c09fd88c!
[  587.820000] RTMP_TimerListAdd: add timer obj c09fdc68!
[  587.820000] RTMP_TimerListAdd: add timer obj c09fe010!
[  587.830000] RTMP_TimerListAdd: add timer obj c09fdd60!
[  587.830000] RTMP_TimerListAdd: add timer obj c09fdd90!
[  587.840000] RTMP_TimerListAdd: add timer obj c09fdf50!
[  587.850000] RTMP_TimerListAdd: add timer obj c09fdf80!
[  587.850000] RTMP_TimerListAdd: add timer obj c0a00f44!
[  587.860000] RTMP_TimerListAdd: add timer obj c0a00b38!
[  587.860000] RTMP_TimerListAdd: add timer obj c0a00f14!
[  587.870000] RTMP_TimerListAdd: add timer obj c0a012bc!
[  587.870000] RTMP_TimerListAdd: add timer obj c0a0100c!
[  587.880000] RTMP_TimerListAdd: add timer obj c0a0103c!
[  587.880000] RTMP_TimerListAdd: add timer obj c0a011fc!
[  587.890000] RTMP_TimerListAdd: add timer obj c0a0122c!
[  587.890000] RTMP_TimerListAdd: add timer obj c0a041f0!
[  587.900000] RTMP_TimerListAdd: add timer obj c0a03de4!
[  587.900000] RTMP_TimerListAdd: add timer obj c0a041c0!
[  587.910000] RTMP_TimerListAdd: add timer obj c0a04568!
[  587.910000] RTMP_TimerListAdd: add timer obj c0a042b8!
[  587.920000] RTMP_TimerListAdd: add timer obj c0a042e8!
[  587.920000] RTMP_TimerListAdd: add timer obj c0a044a8!
[  587.930000] RTMP_TimerListAdd: add timer obj c0a044d8!
[  587.930000] RTMP_TimerListAdd: add timer obj c0a0749c!
[  587.940000] RTMP_TimerListAdd: add timer obj c0a07090!
[  587.950000] RTMP_TimerListAdd: add timer obj c0a0746c!
[  587.950000] RTMP_TimerListAdd: add timer obj c0a07814!
[  587.960000] RTMP_TimerListAdd: add timer obj c0a07564!
[  587.960000] RTMP_TimerListAdd: add timer obj c0a07594!
[  587.970000] RTMP_TimerListAdd: add timer obj c0a07754!
[  587.970000] RTMP_TimerListAdd: add timer obj c0a07784!
[  587.980000] RTMP_TimerListAdd: add timer obj c0a4cc7c!
[  587.980000] RTMP_TimerListAdd: add timer obj c0a4c870!
[  587.990000] RTMP_TimerListAdd: add timer obj c0a4cc4c!
[  587.990000] RTMP_TimerListAdd: add timer obj c0a4cff4!
[  588.000000] RTMP_TimerListAdd: add timer obj c0a4cd44!
[  588.000000] RTMP_TimerListAdd: add timer obj c0a4cd74!
[  588.010000] RTMP_TimerListAdd: add timer obj c0a4ccac!
[  588.010000] RTMP_TimerListAdd: add timer obj c0a4ccdc!
[  588.020000] RTMP_TimerListAdd: add timer obj c0a4cd0c!
[  588.020000] RTMP_TimerListAdd: add timer obj c0a57834!
[  588.030000] RTMP_TimerListAdd: add timer obj c0a57950!
[  588.030000] RTMP_TimerListAdd: add timer obj c0a57860!
[  588.040000] RTMP_TimerListAdd: add timer obj c0a4edac!
[  588.050000] RTMP_TimerListAdd: add timer obj c09ee668!
[  588.050000] RTMP_TimerListAdd: add timer obj c09f1914!
[  588.060000] RTMP_TimerListAdd: add timer obj c09f4bc0!
[  588.060000] RTMP_TimerListAdd: add timer obj c09f7e6c!
[  588.070000] RTMP_TimerListAdd: add timer obj c09fb118!
[  588.070000] RTMP_TimerListAdd: add timer obj c09fe3c4!
[  588.080000] RTMP_TimerListAdd: add timer obj c0a01670!
[  588.080000] RTMP_TimerListAdd: add timer obj c0a0491c!
[  588.090000] RTMP_TimerListAdd: add timer obj c0a4eac0!
[  588.090000] RTMP_TimerListAdd: add timer obj c0a4ee14!
[  588.210000] ttyS0: 7 input overrun(s)
[  590.030000] APSDCapable[0]=0
[  590.030000] APSDCapable[1]=0
[  590.040000] APSDCapable[2]=0
[  590.040000] APSDCapable[3]=0
[  590.050000] APSDCapable[4]=0
[  590.050000] APSDCapable[5]=0
[  590.060000] APSDCapable[6]=0
[  590.060000] APSDCapable[7]=0
[  590.060000] APSDCapable[8]=0
[  590.070000] APSDCapable[9]=0
[  590.070000] APSDCapable[10]=0
[  590.080000] APSDCapable[11]=0
[  590.080000] APSDCapable[12]=0
[  590.090000] APSDCapable[13]=0
[  590.090000] APSDCapable[14]=0
[  590.100000] APSDCapable[15]=0
[  590.100000] default ApCliAPSDCapable[0]=0
[  590.310000] Key1Str is Invalid key length(0) or Type(0)
[  590.320000] Key2Str is Invalid key length(0) or Type(0)
[  590.330000] Key3Str is Invalid key length(0) or Type(0)
[  590.330000] Key4Str is Invalid key length(0) or Type(0)
[  590.540000] eb:09:33:3f:92:c3:96:d8:fb:3d:0f:ce:7f:ba:af:00:
[  590.540000] da:e2:f9:a8:6d:b3:2d:ce:b2:e2:72:31:69:ba:68:e8:
[  590.550000]
[  590.550000] I/F(apcli0) Key1Str is Invalid key length!
[  590.590000] 1. Phy Mode = 9
[  590.590000] 2. Phy Mode = 9
[  590.600000] EEPROM:Read from [factory] offset 0x0,length 0x200.
[  590.600000] ttyS0: 140 input overrun(s)
[  590.970000] E2PROM: D0 target power=0xff20
[  590.970000] E2PROM: 40 MW Power Delta= 0
[  590.970000] 3. Phy Mode = 9
[  590.980000] RTMP_TimerListAdd: add timer obj c09ee260!
[  590.980000] AntCfgInit: primary/secondary ant 0/1
Initialize RF Central Registers for E2 !!!
[  590.990000] Initialize RF Central Registers for E3 !!!
[  591.000000] Initialize RF Channel Registers for E2 !!!
[  591.000000] Initialize RF Channel Registers for E3 !!!
[  591.010000] Initialize RF DCCal Registers for E2 !!!
[  591.010000] Initialize RF DCCal Registers for E3 !!!
[  591.020000] D1 = 0, D2 = 13, CalCode = 30 !!!
[  591.030000] RT6352_Temperature_Init : BBPR49 = 0x1
[  591.030000] RT6352_Temperature_Init : TemperatureRef25C = 0xfffffff7
[  591.040000] Current Temperature from BBP_R49=0xfffffff7
[  591.040000] RT6352_TssiTableAdjust: upper_bound = 0x7F decimal: 127
[  591.050000] RT6352_TssiTableAdjust: lower_bound = 0xFFFFFF80 decimal: -128
[  591.060000] *** RT6352_TssiTableAdjust: G Tssi[-7 .. +7] = -128 -1 -1 -1 -128 -1 -1
[  591.060000]  - -1 - -1 -1 -1 -1 -1 -1 -1, offset=-9, tuning=0
[  591.070000] RT6352_TssiTableAdjust: G Tssi[-7 .. +7] = -128 -10 -10 -10 -128 -10 -10 - -10 - -10 -10 -10 -10 -10 -10 -10, offset=-9, tuning=0
[  591.080000] mp_temperature=0xffffffff, step = +7
[  591.090000] E2PROM: G Tssi[-7 .. +7] = -128 -10 -10 -10 -128 -10 -10 - -10 - -10 -10 -10 -10 -10 -10 -10, offset=-9, tuning=0
[  591.100000]  TX BW Filter Calibration !!!
[  591.210000]  RX BW Filter Calibration !!!
[  591.420000] LOFT Calibration Done!
[  591.430000] IQCalibration Start!
[  591.440000] IQCalibration Done! CH = 0, (gain= f, phase=3d)
[  591.450000] IQCalibration Start!
[  591.460000] IQCalibration Done! CH = 1, (gain= e, phase= 2)
[  591.470000] TX IQ Calibration Done!
[  591.510000] internal ALC is not enabled in NVM !
[  591.510000] bAutoTxAgcG = 0
[  591.520000] MCS Set = ff ff 00 00 01
[  591.590000] Main bssid = 64:51:7e:33:99:d2
[  591.600000] <==== rt28xx_init, Status=0
[  591.640000] 0x1300 = 00064380
[  591.680000] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[  591.710000] IPv6: ADDRCONF(NETDEV_UP): eth0.1: link is not ready
[  591.710000] device eth0.1 entered promiscuous mode
[  591.720000] device eth0 entered promiscuous mode
[  591.740000] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready
[  592.030000] ttyS0: 29 input overrun(s)
[  593.220000] device ra0 entered promiscuous mode
[  593.230000] br-lan: port 2(ra0) entered forwarding state
[  593.230000] br-lan: port 2(ra0) entered forwarding state
procd: - init complete -
[  593.460000] ttyS0: 41 input overrun(s)
[  593.460000] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready
[  595.230000] br-lan: port 2(ra0) entered forwarding state
[  595.230000] ttyS0: 5 input overrun(s)
[  653.100000] RTMP_TimerListAdd: add timer obj c0a96c80!
[  653.110000] RTMP_TimerListAdd: add timer obj c0a96e38!
[  653.120000] ttyS0: 2 input overrun(s)
[  653.320000] RTMP_TimerListAdd: add timer obj c0ab58f4!
[  653.340000] AP SETKEYS DONE - WPA2, AuthMode(7)=WPA2PSK, WepStatus(6)=AES, GroupWepStatus(6)=AES
[  653.340000]

Any advice is more than appreciated.
Thank you for your support!

[    5.940000] usbcore: registered new interface driver usb-storage
procd: - 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
kmod: ran 1 iterations
[  579.020000] jffs2: notice: (295) jffs2_build_xattr_subsystem: complete building xattr subsystem, 19 of xdatum (0 unchecked, 18 orphan) and 29 of xref (0 dead, 18 orphan) found.

This is a first boot, with creating of jffs2 partition (with 128mb this can take some time). What about second boot, partition formatted again ?

If I remove power and reconnect it again, the same behavior. It will take 10 minutes. For me looks like some setting is not persisten. Is there a command to erase and to check flash?  Thanks!

Possibly wrong partition boundary, damaged by bootloader or by system itself. Problem not in flash itself.

[    0.290000] 0x000000000000-0x000000030000 : "u-boot"
[    0.290000] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.300000] 0x000000040000-0x000000050000 : "factory"
[    0.310000] 0x000000050000-0x000001000000 : "firmware"
[    0.310000] 0x00000014b427-0x000001000000 : "rootfs"
[    0.320000] mtd: partition "rootfs" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only
[    0.330000] mtd: device 4 (rootfs) set to be root filesystem
[    0.340000] mtd: partition "rootfs_data" created automatically, ofs=0x8b0000, len=0x750000
[    0.350000] 0x0000008b0000-0x000001000000 : "rootfs_data"

Ask wrtnode staff about this partition table, mb smth wrong with rootfs_data.

I will ask and come back. One advice I got from WRTnode team was to erase rootfs:

mtd -r erase rootfs_data

Even so, nothing changed.
Thanks!

rootfs_data newly created and empty, no need to erase.

I found a fix to my problem (long boot time), I cannot say that I found the solution since I don't know the cause of the problem with the long boot time on WRTnode.
Step01. - I prepared brand new cables (special Ethernet cable and USB-to-serial cable).
The initial  Ethernet cable was using jumper wires with header connectors, connection was done to the server 192.168.1.1 (I used a fixed IP on my laptop), so I considered that cable as a good working cable.
The current cable uses a 2x2 female header soldered to an end.
The initial USB-to-serial cable was a PL2303 cable (system recognized it this way), I used it many times to communicate to microcontroller applications; microcontroller expected input from me, I was able to send characters from the keyboard, microcontroller answered, so I considered that cable as a good working cable. Unfortunately with this initial cable I cannot send characters to the keyboard to WRTnode, for example when I had to choose options during boot sequence, it was not possible to select them.
The current USB-to-serial cable is recognized also as PL2303, it is marked as CA-42 cable for Nokia mobile phones, I soldered to an end a 2x2 female header. With this new cable I can send characters to the keyboard to WRTnode, so when I have to choose options during boot sequence, I can choose the desired option.

Step 2. - I put the board in recovery mode (connect pin 71 (I2C_SD) (or 58(I2C_SCLK)) to GND) and loaded the factory firmware - from the link from WRTnode wiki (it is r41508).
Things went different, the board booted in less than 1 minute - regular boot time.

So something was wrong with the cables, I cannot see the relation between cables and programming, maybe the firmware was corrupted by the cables, who knows.
Lesson learnt: double check your cables even if these are known good cables, try to use soldered cables rather than jumper cables (here is a short tutorial describing the method I used to built them: http://www.instructables.com/id/Make-cu … nking-tub/).
Thanks for support!

(Last edited by yo2lyp on 13 Nov 2014, 08:38)

The discussion might have continued from here.