1

Temat: Reanimacja WDR3600 z pamięcią 16MB

Witam

Mój WDR3600 z wymienioną pamięcią (16MB) przez kolegę pepe2k po jakichś 2 latach nieprzerwanej pracy padł... w dość dziwnych okolicznościach. Pewnego dnia rano odłączyłem wszytko co się da ( zasilanie , modem, drukarkę, hdd, lany, zasilanie) i ładni odłożyłem go na półkę. wieczorem zapragnąłem pośmigać po necie więc podłączyłem tylko modem LTE oraz zasilanie i niestety router już nie wstał. Objaw świeci się tylko dioda zasilania oraz zapalają się kontrolki LAN po podłączeniu kabla do portu. Próbowałem już failsafe ale nie mogę wprowadzić routera w ten odmienny stan. Niewiele więcej myśląc podłączyłem się pod złącze serial (czy jak się to tam fachowo zwie) - mam porządny konwerter FDTI (używałem go do wgrywania ubootów do nboxów ze starym softem) i oto log z uruchomienia:

U-Boot 1.1.4 (Jun 18 2013 - 21:44:31)

U-boot DB120


DRAM:  128 MB
id read 0x100000ff
flash size 16MB, sector count = 256
Flash: 16 MB
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   ag934x_enet_initialize...
No valid address in Flash. Using fixed address
 wasp  reset mask:c03300
WASP  ----> S17 PHY *
: cfg1 0x7 cfg2 0x7114
eth0: ba:be:fa:ce:08:41
athrs17_reg_init: complete
eth0 up
eth0
Autobooting in 1 seconds
## Booting image at 9f020000 ...
   Uncompressing Kernel Image ... OK

Starting kernel ...

[    0.000000] Linux version 3.18.17 (cezary@eko.one.pl) (gcc version 4.8.3 (Ope nWrt/Linaro GCC 4.8-2014.04 unknown) ) #21 Sat Jul 4 08:47:38 CEST 2015
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001974c (MIPS 74Kc)
[    0.000000] SoC: Atheros AR9344 rev 2
[    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] 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] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32  bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pag es: 32512
[    0.000000] Kernel command line:  board=TL-WDR4300  console=ttyS0,115200 root fstype=squashfs,jffs2 noinitrd
[    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=00000000
[    0.000000] Readback ErrCtl register=00000000
[    0.000000] Memory: 125724K/131072K available (2629K kernel code, 133K rwdata , 548K rodata, 264K init, 194K bss, 5348K reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:51
[    0.000000] Clocks: CPU:650.000MHz, DDR:450.000MHz, AHB:225.000MHz, Ref:40.00 0MHz
[    0.000000] Calibrating delay loop... 324.40 BogoMIPS (lpj=1622016)
[    0.060000] 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.070000] NET: Registered protocol family 16
[    0.080000] MIPS: machine is TP-LINK TL-WDR3600/4300/4310
[    0.080000] registering PCI controller with io_map_base unset
[    0.320000] PCI host bridge to bus 0000:00
[    0.320000] pci_bus 0000:00: root bus resource [mem 0x10000000-0x13ffffff]
[    0.330000] pci_bus 0000:00: root bus resource [io  0x0000]
[    0.330000] pci_bus 0000:00: No busn resource found for root bus, will use [b us 00-ff]
[    0.340000] pci 0000:00:00.0: invalid calibration data
[    0.340000] pci 0000:00:00.0: BAR 0: assigned [mem 0x10000000-0x1001ffff 64bi t]
[    0.350000] pci 0000:00:00.0: BAR 6: assigned [mem 0x10020000-0x1002ffff pref ]
[    0.350000] pci 0000:00:00.0: using irq 40 for pin 1
[    0.360000] Switched to clocksource MIPS
[    0.360000] NET: Registered protocol family 2
[    0.370000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.370000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.380000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.380000] TCP: reno registered
[    0.390000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.390000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.400000] NET: Registered protocol family 1
[    0.400000] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.420000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.420000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORIT Y) (c) 2001-2006 Red Hat, Inc.
[    0.430000] msgmni has been set to 245
[    0.440000] io scheduler noop registered
[    0.440000] io scheduler deadline registered (default)
[    0.440000] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.480000] serial8250.0: ttyS0 at MMIO 0x18020000 (irq = 11, base_baud = 250 0000) is a 16550A
[    0.490000] console [ttyS0] enabled
[    0.490000] console [ttyS0] enabled
[    0.490000] bootconsole [early0] disabled
[    0.490000] bootconsole [early0] disabled
[    0.500000] m25p80 spi0.0: found w25q128, expected m25p80
[    0.510000] m25p80 spi0.0: w25q128 (16384 Kbytes)
[    0.510000] 5 tp-link partitions found on MTD device spi0.0
[    0.520000] Creating 5 MTD partitions on "spi0.0":
[    0.520000] 0x000000000000-0x000000020000 : "u-boot"
[    0.530000] 0x000000020000-0x000000143714 : "kernel"
[    0.530000] 0x000000143714-0x000000ff0000 : "rootfs"
[    0.540000] mtd: device 2 (rootfs) set to be root filesystem
[    0.550000] 1 squashfs-split partitions found on MTD device rootfs
[    0.550000] 0x0000006a0000-0x000000ff0000 : "rootfs_data"
[    0.560000] 0x000000ff0000-0x000001000000 : "art"
[    0.560000] 0x000000020000-0x000000ff0000 : "firmware"
[    0.590000] switch0: Atheros AR8327 rev. 2 switch registered on ag71xx-mdio.0
[    0.660000] libphy: ag71xx_mdio: probed
[    1.260000] ag71xx ag71xx.0: connected to PHY at ag71xx-mdio.0:00 [uid=004dd0 33, driver=Atheros AR8216/AR8236/AR8316]
[    1.270000] eth0: Atheros AG71xx at 0xb9000000, irq 4, mode:RGMII
[    1.280000] TCP: cubic registered
[    1.280000] NET: Registered protocol family 17
[    1.280000] bridge: automatic filtering via arp/ip/ip6tables has been depreca ted. Update your scripts to load br_netfilter if you need this.
[    1.300000] Bridge firewalling registered
[    1.300000] 8021q: 802.1Q VLAN Support v1.8
[    1.310000] VFS: Mounted root (squashfs filesystem) readonly on device 31:
[    1.320000] Freeing unused kernel memory: 264K (8039e000 - 803e0000)
[    2.180000] SQUASHFS error: xz decompression failed, data probably corrupt
[    2.190000] SQUASHFS error: squashfs_read_data failed to read block 0x3c33
[    2.190000] SQUASHFS error: Unable to read fragment cache entry [3c33c2]
[    2.200000] SQUASHFS error: Unable to read page, block 3c33c2, size 172fc
[    2.210000] SQUASHFS error: Unable to read fragment cache entry [3c33c2]
[    2.210000] SQUASHFS error: Unable to read page, block 3c33c2, size 172fc
[    2.220000] SQUASHFS error: Unable to read fragment cache entry [3c33c2]
[    2.230000] SQUASHFS error: Unable to read page, block 3c33c2, size 172fc
[    2.230000] SQUASHFS error: Unable to read fragment cache entry [3c33c2]
[    2.240000] SQUASHFS error: Unable to read page, block 3c33c2, size 172fc
[    2.250000] SQUASHFS error: Unable to read fragment cache entry [3c33c2]
[    2.250000] SQUASHFS error: Unable to read page, block 3c33c2, size 172fc
/sbin/init: '/usr/lib/libjson-c.so.2' is not an ELF file
/sbin/init: can't load library 'libjson-c.so.2'
[    2.290000] Kernel panic - not syncing: Attempted to kill init! exitcode=0    001000
[    2.290000]
[    2.290000] ---[ end Kernel panic - not syncing: Attempted to kill init! e    code=0x00001000
[    2.290000]
[   82.370000] random: nonblocking pool is initialized

Trochę będę zgadywał ale wygląda mi to na problem z jakimiś błędami pamięci albo systemu plików, zgadza się?

Pytania są 3 :
1. Czy (ewentualnie jak) da się naprawić pamięć( wystarczy erase i wganie nowego obrazu?) ?
2. W opisie "reanimacji" WDR3600 jest napisane aby użyć obrazu *factory.bin ale czy w moim przypadku - wymieniona pamięć - też mam takiego użyć?
3. Jakie adresy wpisać aby wyczyścić pamięć i wgrać obraz przez konsolę w przypadku routera z pamięcią 16MB?

Z góry dziękuje za pomoc.

Pozdrawiam

Asus Merlin RT-AC86U + 2xRT-AC68U
OpenWRT rPi3+ E3372
rPi5 HA, rPi4 OH

2

Odp: Reanimacja WDR3600 z pamięcią 16MB

Albo padł system plików, albo zajechałeś FLASH.

1. Wejdź w konsolę U-Boot, wgraj factory zgodnie z instrukcjami z http://eko.one.pl/?p=openwrt-wdr3600#in … bootloader
2. Tak, factory.
3. Takie same jak w instrukcji, chyba że wgrywasz jakiś ogromny, niestandardowy obraz, ale chyba nie?

3

Odp: Reanimacja WDR3600 z pamięcią 16MB

Wgraj normalnie obraz z poziomu u-boot. Jeżeli się nie wgra, albo wgra i dalej będzie sypał błędami to pewnie kość do wymiany. Ostatnio "w ramach gwarancji" wymieniałem kość w routerze z podobnymi objawami. Najpierw nie dało się zaktualizować openwrt ( niby się wgrywało, ale po restarcie było stare ), nie zapisywał ustawień, a po wgraniu openwrt z poziomu u-boot zaczął właśnie sypać takimi błędami.

Home: ZyXEL NBG6817 (OpenWrt)
NAS: HP ProLiant MicroServer Gen8 E3-1265L V2, 16 GB (PVE)

4

Odp: Reanimacja WDR3600 z pamięcią 16MB

Dzięki Panowie.
Zgodnie z waszymi wskazówkami wgrałem soft i router ożył.

Jest jakiś sposób na sprawdzenie pamięci flash w routerze? Coś jak scandisk?

Asus Merlin RT-AC86U + 2xRT-AC68U
OpenWRT rPi3+ E3372
rPi5 HA, rPi4 OH