OK, i dove in. Backed the truck out of garage, got the ladder out, rescued the NAS from its shelf, brought it down. Here it is all innocent looking. Its been running in the garage for about 4 years now…
I’m going to open it up. After running in this environment so long (with a fan, and internal heat) its bound to be full of dirt and ‘protein’.
OK, top off, ugh, so many dead bugs. OK, vacuum called to action, cleaned, boards removed. This is a Marvell Kirkwood design, so it should be straightforward (?) for me to make a Linux image for it. OK, well, that will be a plan for later. First, we have to find a serial port. Usually these have a header inside somewhere that is labelled.
OK, much to my chagrin, the headers are not labelled. The ‘obvious’ one after a lot of scoping (J4) is not serial. The 6-pin small pitch one has GND/RX/TX on the first 3 pins (so sayeth the scope) so I hook this up to the USB-TTL serial. And connect to minicom, guess on 115200 baud (its right), and we are in.
The top and bottom of the motherboard. The serial is on the white connector midway along the board (farthest to the right in the left image).
Since its not 0.1″ pitch, i soldered a header on the bottom to make life simpler:
And now we are in! Here is what it has to say, Its u-boot, this should be doable. If i run ‘dhcp’ it works, so I can network boot it. This will be convenient. Man, this is a lot of work to fix someone else’s bug. Too bad there is no new firmware from them! Its got 1G of RAM and 512MB of flash, so its pretty beefy for such an embedded device.
__ __ _ _ | \/ | __ _ _ ____ _____| | | | |\/| |/ _` | '__\ \ / / _ \ | | | | | | (_| | | \ V / __/ | | |_| |_|\__,_|_| \_/ \___|_|_| _ _ ____ _ | | | | | __ ) ___ ___ | |_ | | | |___| _ \ / _ \ / _ \| __| | |_| |___| |_) | (_) | (_) | |_ \___/ |____/ \___/ \___/ \__| ** MARVELL BOARD: DB-88F6282A-BP LE U-Boot 1.1.4 (Apr 9 2014 - 20:42:53) Marvell version: 3.5.9 U-Boot code: 00600000 -> 0067FFF0 BSS: -> 006CFD80 Soc: 88F6282 A1CPU running @ 1600Mhz L2 running @ 533Mhz SysClock = 533Mhz , TClock = 200Mhz DRAM (DDR3) CAS Latency = 7 tRP = 7 tRAS = 20 tRCD=7 DRAM CS base 0x00000000 size 512MB DRAM CS base 0x20000000 size 512MB DRAM Total size 1GB 16bit width Addresses 8M - 0M are saved for the U-Boot usage. Mem malloc Initialization (8M - 7M): Done NAND:512 MB Flash: 0 kB CPU : Marvell Feroceon (Rev 1) Generate Random Mac:[00:50:43:44:02:22][00:50:43:1e:02:22] Streaming disabled Write allocate disabled USB 0: host mode PEX 0: interface detected no Link. PEX 1: interface detected no Link. Net: egiga0 [PRIME] Sys reset key pressed: 0 ms at last time Hit any key to skip autoboot: 0 Marvell>>
OK, now to go figure out how to build an image for this and boot it.