User Tools

Site Tools


toh:seagate:goflexnet

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Previous revision
toh:seagate:goflexnet [2013/11/04 16:33]
toh:seagate:goflexnet [2016/10/24 22:22] (current)
excogitation [Install OpenWrt Chaos Calmer 15.05.1 into NAND via serial cable and tftp-server (UBIFS!)] fixed x_bootarg for data
Line 1: Line 1:
 +====== Seagate GoFlexNet ======
  
 +===== Supported Versions =====
 +^ Model               ^ OpenWrt Version Supported ​  ^ Model Specific Notes   ^
 +| Seagate GoFlexNet ​  | WIP, trunk                  |                        |
 +
 +
 +<WRAP box center 80%> {{:​meta:​icons:​tango:​48px-emblem-question.svg.png }} If you can **confirm** that OpenWrt is running on this device (i.e. you or someone else has **tested** it), please update the data accordingly. -> Click //View/Edit data//
 +/* Special style definitions for the various Tables of Hardware. ​           */
 +{{page>​meta:​infobox:​tohstyles&​noheader&​nofooter&​noeditbtn&​inline&​indent&​link}}
 +---- datatable ----
 +cols    : Model, Versions, Supported Since Rev_url, Supported Since Rel, Supported Current Rel, Device Techdata_pageid
 +align   : l,c,l,c,c,c
 +filter ​ : Model=GoFlexNet
 +----</​WRAP>​
 +<WRAP center round important 60%>
 +Unfortunately the trunk version is not booting atm // 14.09.2016 //exco
 +</​WRAP>​
 +
 +
 +===== Highlights =====
 +^ CPU ^ Ram ^ Flash ^ Network ^ USB ^ Serial ^ JTAG ^ SATA ^
 +| Marvell Kirkwood@1200MHz | 128 MiB | 256 MiB | 1 gigE | 1x 2.0 | Yes | Yes | 2x data+power |
 +
 +===== Hardware =====
 +==== Info ====
 +| **Architecture:​** [[http://​en.wikipedia.org/​wiki/​ARM_architecture|ARM ]]  armv5te |
 +| **Vendor:** Marvell | 
 +| **[[doc:​techref:​Bootloader]]:​** [[doc:​techref:​bootloader:​uboot | U-Boot]] | 
 +| **System-On-Chip:​** Marvell [[http://​www.marvell.com/​products/​processors/​embedded/​kirkwood/​HW_88F6281_OpenSource.pdf|MV88F6281 A0 (DDR2)]] with ARM926EJ-S CPU (Marvell Feroceon) | 
 +| **CPU Speed:** 1200 Mhz | 
 +| **Flash size:** 256 MiB / 1x Micron 29F2G08AAD | 
 +| **RAM:** 128 MiB / 1x Nanya NT5TU64M16DG-AC | 
 +| **Wireless:​** n/a | 
 +| **Ethernet:​** 1x GigE port / Marvell "​Alaska"​ 88E1116R |
 +| **USB:** 1x USB 2.0 port | 
 +| **Serial:** [[#​Serial|Yes]] | 
 +| **JTAG:** [[#​JTAG|Yes]] | 
 +| **SATA:** 2x (data & power) | 
 +
 +==== Flash Layout ====
 +^               ​original u-boot flash layout ​           ^^^^^
 +^ mtdparts ​   | mtd0     | mtd1     | mtd2      | mtd3      |
 +^ start (hex) | 0x000000 | 0x100000 | 0x500000 ​ | 0x2500000 |
 +^ size (hex)  | 0x100000 | 0x400000 | 0x2000000 | 0xdb00000 |
 +^ size (MB)   | 1        | 4        | 32        | 219       |
 +^ name        | u-boot ​  | kernel ​  | rootfs ​   | data      |
 +^ file system | raw      | uImage? ​ | JFFS2     | ?         |
 + 
 +^               ​u-boot with 2nd stage u-boot ​ flash layout ​         ^^^^^^^
 +^ mtdparts ​   | mtd0     | mtd1                | mtd2     | mtd3      | mtd4      |
 +^ start (hex) | 0x000000 | 0x100000 ​           | 0x200000 | 0x500000 ​ | 0x2500000 |
 +^ size (hex)  | 0x100000 | 0x100000 ​           | 0x300000 | 0x2000000 | 0xdb00000 |
 +^ size (MB)   | 1        | 1                   | 3        | 32        | 219       |
 +^ name        | u-boot ​  | second_stage_u-boot | kernel ​  | rootfs ​   | data      |
 +^ file system | raw      | raw                 | uImage? ​ | JFFS2     | ?         |
 +
 +
 +===== Specific Configuration =====
 +==== Interfaces ====
 +The default network configuration is:
 +
 +^ Interface Name ^ Description ^ Default configuration ^
 +| eth0 | Ethernet port | DHCP |
 +
 +==== Failsafe ====
 +The GoFlexNet cannot be put into failsafe mode by pressing the button.
 +
 +It can however be put in failsafe mode using serial console and pressing '​f'​ and <​enter>​ when prompted during boot-up
 +
 +==== Buttons ====
 +The GoFlexNet'​s only button is not configurable and inevitably performs a hard reset when pressed, the button open the bridge between the positive pole and the power cord.
 +
 +==== Crypto Hardware Acceleration ====
 +See [[:​toh:​seagate/​dockstar#​crypto.hardware.acceleration|Crypto Hardware Acceleration]]
 +
 +
 +==== Photos ====
 +
 +for serial cable (nokia'​s DKU-5, CA-42 and etc ttl...), 115200 8n1:
 +
 +**NOTE:** The pins to use are the ones "​covered up" by the tips of the arrows, i.e. the pins in the row toward the outer edge of the PCB.
 +(for comparison, see [[http://​www.varkey.in/​wp-content/​uploads/​2011/​06/​IMG_0771.jpg|here]])
 +
 +{{media:​seagate:​goflex_net_1.jpg?​400|}}
 +
 +
 +for enable 3.5" disks (3 pins sata power to +12V DC):
 +
 +**NOTE:** The ellipse in the picture indicates **three** pins for Serial ATA +12 V. (Multiple pins are used for current (Ampere) considerations,​ compare https://​en.wikipedia.org/​wiki/​Serial_ATA#​Power_connectors.)
 +
 +**NOTE** the board is not able to provide enough wattage @5v to drive standard 3.5" hard disks, and even with '​green'​ disks might not be powerful enough to drive 2 3.5" hd or use a 3.5" hd and a 2.5" at the same time (i.e. Raid1). Using a '​green'​ 3.5" and a regular 2.5" not at the same time works perfectly for me.
 +
 +{{media:​seagate:​goflex_net_2.jpg?​400|}}
 +{{media:​seagate:​goflex_net_3.jpg?​400|}}
 +
 +example:
 +
 +{{media:​seagate:​goflex_net_4.jpg?​400|}}
 +
 +==== Opening the case ====
 +There are no screws - the bottom cover is held by ten plastic snap on clips, three on the sides and two on the edges. To open the case, gently pry all around with a thin screwdriver until it is open.
 +
 +The serial pins are accessible without further disassembly.
 +
 +==== SSH ====
 +Connect device to Ethernet port. To prevent automatic updates by cloud engines (which will disable ssh access), use a separate switch or disconnect your router from the internet. If the ssh access was disabled by the automatic cloud engine update service, you need to login there and re-activate ssh.
 +On later versions the ssh access is already disabled. The option on the pogoplug site to enable ssh is missing or may be dependent on a public ipv4 and open ssh port on the router.
 +
 +Find IP address, BE and EF are the last two bytes of the MAC of your device (printed on the bottom of the GoFlexNet)
 +<​code>​
 +root@host ~ # ifconfig eth0 169.254.1.0 ​
 +root@host ~ # nmap -e eth0 -sP $(printf "​169.254.%d.%d"​ 0xbe 0xef)
 +</​code>​
 +Connect to IP address via ssh (root / stxadmin) to see if it works.
 +
 +==== Backup original firmware ====
 +Login to the original firmware via SSH (enable it first in popoplug site) or Serial cable (nokia'​s CA-52, DKU-5 and etc ttl...).
 +Plug the flash drive (FAT32) to USB port in Seagate GoFlex Net, then:
 +<​code>​
 +mkdir /tmp/backup
 +mount /dev/sda1 /tmp/backup
 +cd /tmp/backup
 +wget http://​download.doozan.com/​uboot/​nanddump
 +chmod +x nanddump
 +./nanddump -nof uboot-mtd0-dump /dev/mtd0
 +./nanddump -nof uboot-original -s 0 -l 0x80000 /dev/mtd0
 +./nanddump -nof uImage-mtd1-dump /dev/mtd1
 +./nanddump -nof rootfs-mtd2-dump /dev/mtd2
 +umount /dev/sda1
 +</​code>​
 +To create an image of mtd0, you need to dump the nand without ecc. using "dd if=/​dev/​mtd0 of=mtd0.DOESNOTWORK"​ will automatically do ecc for you and will result in a corrupt image.
 +
 +==== Restore original firmware via serial cable and tftp-server ====
 +<​code>​
 +#set goflex net ip
 +setenv ipaddr '​192.168.1.1'​
 +#set tftp-server ip
 +setenv serverip '​192.168.1.2'​
 +
 +#original uImage (backuped before)
 +tftpboot 0x800000 uImage-mtd1-dump
 +nand erase 0x100000 0x400000
 +nand write.e 0x800000 0x100000 0x400000
 +
 +#original rootfs (backuped before)
 +tftpboot 0x800000 rootfs-mtd2-dump
 +nand erase 0x500000 0x2000000
 +nand write.e 0x800000 0x500000 0x2000000
 +
 +resetenv
 +reset
 +
 +Hit any key to stop autoboot: ​ 0
 +
 +setenv bootcmd 'nand read.e 0x800000 0x100000 0x300000; setenv bootargs $(console) $(bootargs_root);​ bootm 0x800000'​
 +
 +#change value to your device
 +setenv ethaddr '​00:​10:​75:​26:​3D:​9F'​
 +setenv cesvcid '​5RFAJDGYNLPLDUHN4BWUWC3EKJ'​
 +setenv ceserialno '​NA1Y0EG1'​
 +setenv ceboardver '​DISCOVERY:​0.1'​
 +saveenv
 +
 +reset
 +</​code>​
 +
 +==== Install OpenWrt Chaos Calmer 15.05.1 into NAND via serial cable and tftp-server (UBIFS!)====
 +Prerequisites
 +  * hookup a (USB-)serial to the goflexnet box and get it running (e.g. minicom)
 +  * connect the Goflexnet and your computer to a router (or directly and counfigure your computer with static IP 192.168.2.1)
 +Files to download
 +  * [[https://​www.dropbox.com/​s/​c7kevnx68hgoldw/​uboot.2016.05-tld-1.goflexnet.bodhi.tar|uboot]] (via [[http://​forum.doozan.com/​read.php?​3,​12381|doozan forum]])
 +  * [[https://​downloads.openwrt.org/​chaos_calmer/​15.05.1/​kirkwood/​generic/​openwrt-15.05.1-kirkwood-goflexnet-uImage|openwrt-15.05.1-kirkwood-goflexnet-uImage]]
 +  * [[https://​downloads.openwrt.org/​chaos_calmer/​15.05.1/​kirkwood/​generic/​openwrt-15.05.1-kirkwood-goflexnet-rootfs.ubifs|openwrt-15.05.1-kirkwood-goflexnet-rootfs.ubifs]]
 +
 +Todo
 +  * get data partition working
 +  * file ticket because trunk kernel won't boot
 +
 +
 +Extract the uboot
 +<​code>​
 +tar -xvf uboot.2016.05-tld-1.goflexnet.bodhi.tar
 +</​code>​
 +
 +Start a tftp server in that folder
 +<​code>​
 +sudo dnsmasq -p0 --enable-tftp --tftp-root=`pwd` -d --user=`whoami`
 +</​code>​
 +
 +Hit any key to stop autoboot in the uboot and set goflexnet ip, tftp-server ip, goflexnet mac:
 +<​code>​
 +setenv ipaddr '​192.168.1.1'​
 +setenv serverip '​192.168.1.2'​
 +setenv ethaddr '​yourmac'​ <<- it is written on the bottom of your goflexnet box
 +</​code>​
 +
 +download from tftp-server file uboot.2016.05-tld-1.goflexnet.mtd0.kwb to RAM start offset 0x6400000
 +<​code>​
 +tftp 0x6400000 uboot.2016.05-tld-1.goflexnet.mtd0.kwb
 +</​code>​
 +
 +Bytes transferred = 524288 (**80000** hex) ← this number is needed for nand write
 +erase nand start from 0 size 0x100000
 +<​code>​
 +nand erase 0x0 0x100000
 +</​code>​
 +
 +write nand from RAM start offset 0x6400000 to nand start 0x0 size **0x80000**
 +<​code>​
 +nand write.e 0x6400000 0x0 0x80000
 +</​code>​
 +
 +download from tftp-server file openwrt-15.05.1-kirkwood-goflexnet-uImage to RAM start offset 0x6400000
 +<​code>​
 +tftp 0x6400000 openwrt-15.05.1-kirkwood-goflexnet-uImage
 +</​code>​
 +
 +Bytes transferred = 1740617 (**1a8f49** hex) ← this number is needed for nand write
 +erase nand start from 0x100000 size 0x400000
 +<​code>​
 +nand erase 0x100000 0x400000
 +</​code>​
 +
 +write nand from RAM start offset 0x6400000 to nand start 0x100000 size **1a8f49**
 +<​code>​
 +nand write.e 0x6400000 0x100000 1a8f49
 +</​code>​
 +
 +erase nand rootfs (start 0x500000 size 0x2000000)
 +<​code>​
 +nand erase.part rootfs
 +</​code>​
 +NAND erase.part: device 0 offset 0x500000, size 0x2000000
 +Erasing at 0x24e0000 -- 100% complete.
 +OK
 +
 +select partition rootfs
 +<​code>​
 +ubi part rootfs
 +</​code>​
 +
 +<​code>​
 +ubi0: attaching mtd1
 +ubi0: scanning is finished
 +ubi0: empty MTD device detected
 +ubi0: attached mtd1 (name "​mtd=2",​ size 32 MiB)
 +ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 129024 bytes
 +ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 512
 +ubi0: VID header offset: 512 (aligned 512), data offset: 2048
 +ubi0: good PEBs: 256, bad PEBs: 0, corrupted PEBs: 0
 +ubi0: user volume: 0, internal volumes: 1, max. volumes count: 128
 +ubi0: max/mean erase counter: 1/0, WL threshold: 4096, image sequence number: 0 
 +ubi0: available PEBs: 212, total reserved PEBs: 44, PEBs reserved for bad PEB h0
 +</​code>​
 +
 +
 +create ubi fs?
 +<​code>​
 +ubi create rootfs
 +</​code>​
 +No size specified -> Using max size (27353088)
 +Creating dynamic volume rootfs of size 27353088
 +
 +
 +download from tftp-server openwrt-15.05.1-kirkwood-goflexnet-rootfs.ubifs to RAM start offset 0x6400000
 +<​code>​
 +tftp 0x6400000 openwrt-15.05.1-kirkwood-goflexnet-rootfs.ubifs
 +</​code>​
 +Bytes transferred = 4644864 (**46e000** hex) ← this number is needed for nand write
 +
 +
 +write nand from RAM start offset 0x6400000 to nand start 0x500000 size **4c0000**
 +<​code>​
 +ubi write 0x6400000 rootfs 46e000
 +</​code>​
 +4644864 bytes written to volume rootfs
 +
 +reboot
 +<​code>​
 +reset
 +</​code>​
 +
 +Hit any key to stop autoboot! and set your mac-address from bottom side of the box (if you don't do this - ethernet wont work) and set other openwrt'​s environment
 +<​code>​
 +setenv baudrate '​115200'​
 +setenv bootcmd '​${x_bootcmd_kernel};​ setenv bootargs ${x_bootargs} ${x_bootargs_root};​ ${x_bootcmd_usb};​ bootm 0x6400000;'​
 +setenv bootdelay '​3'​
 +setenv ethact '​egiga0'​
 +setenv ethaddr '​yourmacaddress'​
 +setenv ipaddr '​192.168.1.1'​
 +setenv serverip '​192.168.1.2'​
 +setenv stderr '​serial'​
 +setenv stdin '​serial'​
 +setenv stdout '​serial'​
 +setenv x_bootargs '​console=ttyS0,​115200 mtdparts=orion_nand:​1M(u-boot),​4M@1M(kernel),​32M@5M(rootfs),​-(data) rw'
 +setenv x_bootargs_root '​ubi.mtd=2 ​ rootfstype=ubifs'​
 +setenv x_bootcmd_kernel 'nand read 0x6400000 0x100000 0x400000'​
 +setenv x_bootcmd_usb 'usb start'
 +setenv machid c11
 +saveenv
 +reset
 +</​code>​
 +
 +
 +we did it: 
 +<​code>​
 +U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:27:19 -0700)
 +Seagate GoFlex Net
 +
 +SoC:   ​Kirkwood 88F6281_A1
 +DRAM:  128 MiB
 +WARNING: Caches not enabled
 +NAND:  256 MiB
 +In:    serial
 +Out:   ​serial
 +Err:   ​serial
 +Net:   ​egiga0
 +88E1116 Initialized on egiga0
 +Hit any key to stop autoboot: ​ 0 
 +
 +NAND read: device 0 offset 0x100000, size 0x400000
 + ​4194304 bytes read: OK
 +starting USB...
 +USB0:   USB EHCI 1.00
 +scanning bus 0 for devices... 1 USB Device(s) found
 +       ​scanning usb for storage devices... 0 Storage Device(s) found
 +## Booting kernel from Legacy Image at 06400000 ...
 +   Image Name:   ARM OpenWrt Linux-3.18.23
 +   ​Created: ​     2016-02-02 ​ 12:35:05 UTC
 +   Image Type:   ARM Linux Kernel Image (uncompressed)
 +   Data Size:    1740553 Bytes = 1.7 MiB
 +   Load Address: 00008000
 +   Entry Point: ​ 00008000
 +   ​Verifying Checksum ... OK
 +   ​Loading Kernel Image ... OK
 +Using machid 0xc11 from environment
 +
 +Starting kernel ...
 +
 +[    0.000000] Booting Linux on physical CPU 0x0
 +[    0.000000] Linux version 3.18.23 (buildbot@builder1) (gcc version 4.8.3 (OpenWrt/​Linaro GCC 4.8-2014.04 r47269) ) #1 Sun Jan 31 11:40:01 CET 2016
 +[    0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=0005397f
 +[    0.000000] CPU: VIVT data cache, VIVT instruction cache
 +[    0.000000] Machine model: Seagate GoFlex Net
 +[    0.000000] Memory policy: Data cache writeback
 +[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
 +[    0.000000] Kernel command line: console=ttyS0,​115200 mtdparts=orion_nand:​1M(u-boot),​4M@1M(kernel),​32M@5M(rootfs) rw,​219M@37M(data) ubi.mtd=2 rootfstype=ubifs
 +[    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] Memory: 124916K/​131072K available (3466K kernel code, 151K rwdata, 964K rodata, 136K init, 191K bss, 6156K reserved)
 +[    0.000000] Virtual kernel memory layout:
 +[    0.000000] ​    ​vector ​ : 0xffff0000 - 0xffff1000 ​  ​( ​  4 kB)
 +[    0.000000] ​    ​fixmap ​ : 0xffc00000 - 0xffe00000 ​  (2048 kB)
 +[    0.000000] ​    ​vmalloc : 0xc8800000 - 0xff000000 ​  ( 872 MB)
 +[    0.000000] ​    ​lowmem ​ : 0xc0000000 - 0xc8000000 ​  ( 128 MB)
 +[    0.000000] ​    ​modules : 0xbf000000 - 0xc0000000 ​  ​( ​ 16 MB)
 +[    0.000000] ​      .text : 0xc0008000 - 0xc045bd4c ​  (4432 kB)
 +[    0.000000] ​      .init : 0xc045c000 - 0xc047e000 ​  ( 136 kB)
 +[    0.000000] ​      .data : 0xc047e000 - 0xc04a3e04 ​  ( 152 kB)
 +[    0.000000] ​       .bss : 0xc04a3e04 - 0xc04d3b44 ​  ( 192 kB)
 +[    0.000000] NR_IRQS:16 nr_irqs:16 16
 +[    0.000015] sched_clock:​ 32 bits at 200MHz, resolution 5ns, wraps every 21474836475ns
 +[    0.000160] Calibrating delay loop... 1191.11 BogoMIPS (lpj=5955584)
 +[    0.090095] pid_max: default: 32768 minimum: 301
 +[    0.090239] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
 +[    0.090257] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
 +[    0.090729] CPU: Testing write buffer coherency: ok
 +[    0.091063] Setting up static identity map for 0x108d8 - 0x10914
 +[    0.091358] mvebu-soc-id:​ MVEBU SoC ID=0x6281, Rev=0x3
 +[    0.093121] pinctrl core: initialized pinctrl subsystem
 +[    0.093527] regulator-dummy:​ no parameters
 +[    0.097479] NET: Registered protocol family 16
 +[    0.097879] DMA: preallocated 256 KiB pool for atomic coherent allocations
 +[    0.098738] cpuidle: using governor ladder
 +[    0.099098] Feroceon L2: Enabling L2
 +[    0.099141] Feroceon L2: Cache support initialised.
 +[    0.099433] [Firmware Info]: /​ocp@f1000000/​ethernet-controller@72000/​ethernet0-port@0:​ local-mac-address is not set
 +[    0.107168] platform regulators:​regulator@1:​ Driver reg-fixed-voltage requests probe deferral
 +[    0.107555] SCSI subsystem initialized
 +[    0.107907] usbcore: registered new interface driver usbfs
 +[    0.107985] usbcore: registered new interface driver hub
 +[    0.108054] usbcore: registered new device driver usb
 +[    0.109001] Switched to clocksource orion_clocksource
 +[    0.110102] NET: Registered protocol family 2
 +[    0.110807] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
 +[    0.110831] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
 +[    0.110850] TCP: Hash tables configured (established 1024 bind 1024)
 +[    0.110909] TCP: reno registered
 +[    0.110922] UDP hash table entries: 256 (order: 0, 4096 bytes)
 +[    0.110942] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
 +[    0.111119] NET: Registered protocol family 1
 +[    0.111965] futex hash table entries: 256 (order: -1, 3072 bytes)
 +[    0.112923] squashfs: version 4.0 (2009/​01/​31) Phillip Lougher
 +[    0.112943] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
 +[    0.113190] msgmni has been set to 243
 +[    0.114026] io scheduler noop registered
 +[    0.114045] io scheduler deadline registered (default)
 +[    0.115157] kirkwood-pinctrl f1010000.pin-controller:​ registered pinctrl driver
 +[    0.115719] irq: Cannot allocate irq_descs @ IRQ33, assuming pre-allocated
 +[    0.116042] irq: Cannot allocate irq_descs @ IRQ65, assuming pre-allocated
 +[    0.148632] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
 +[    0.151718] console [ttyS0] disabled
 +[    0.151790] f1012000.serial:​ ttyS0 at MMIO 0xf1012000 (irq = 26, base_baud = 12500000) is a 16550A
 +[    0.548112] console [ttyS0] enabled
 +[    0.552993] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xda
 +[    0.559401] nand: Micron MT29F2G08AAD
 +[    0.563082] nand: 256MiB, SLC, page size: 2048, OOB size: 64
 +[    0.568781] Scanning device for bad blocks
 +[    0.790299] 3 cmdlinepart partitions found on MTD device orion_nand
 +[    0.796594] Creating 3 MTD partitions on "​orion_nand":​
 +[    0.801782] 0x000000000000-0x000000100000 : "​u-boot"​
 +[    0.807521] 0x000000100000-0x000000500000 : "​kernel"​
 +[    0.813225] 0x000000500000-0x000002500000 : "​rootfs"​
 +[    0.818886] mtd: device 2 (rootfs) set to be root filesystem
 +[    0.824691] mtdsplit: no squashfs found in "​rootfs"​
 +[    0.829695] mtdsplit: no squashfs found in "​orion_nand"​
 +[    0.835440] libphy: orion_mdio_bus:​ probed
 +[    0.888802] mv643xx_eth:​ MV-643xx 10/100/1000 ethernet driver version 1.4
 +[    0.897017] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 00:​10:​75:​xx:​xx:​xx
 +[    0.905841] ehci_hcd: USB 2.0 '​Enhanced'​ Host Controller (EHCI) Driver
 +[    0.912418] ehci-pci: EHCI PCI platform driver
 +[    0.916946] ehci-platform:​ EHCI generic platform driver
 +[    0.922333] ehci-orion: EHCI orion driver
 +[    0.926507] orion-ehci f1050000.ehci:​ EHCI Host Controller
 +[    0.932065] orion-ehci f1050000.ehci:​ new USB bus registered, assigned bus number 1
 +[    0.939890] orion-ehci f1050000.ehci:​ irq 29, io mem 0xf1050000
 +[    0.959021] orion-ehci f1050000.ehci:​ USB 2.0 started, EHCI 1.00
 +[    0.965677] hub 1-0:1.0: USB hub found
 +[    0.969502] hub 1-0:1.0: 1 port detected
 +[    0.974015] usbcore: registered new interface driver usb-storage
 +[    0.982008] TCP: cubic registered
 +[    0.985345] NET: Registered protocol family 17
 +[    0.989908] bridge: automatic filtering via arp/​ip/​ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
 +[    1.002617] Bridge firewalling registered
 +[    1.006761] 8021q: 802.1Q VLAN Support v1.8
 +[    1.012286] USB Power: 5000 mV 
 +[    1.015668] UBI: attaching mtd2 to ubi0
 +[    1.078150] UBI: scanning is finished
 +[    1.093646] UBI: attached mtd2 (name "​rootfs",​ size 32 MiB) to ubi0
 +[    1.099973] UBI: PEB size: 131072 bytes (128 KiB), LEB size: 129024 bytes
 +[    1.106791] UBI: min./max. I/O unit sizes: 2048/2048, sub-page size 512
 +[    1.113440] UBI: VID header offset: 512 (aligned 512), data offset: 2048
 +[    1.120179] UBI: good PEBs: 256, bad PEBs: 0, corrupted PEBs: 0
 +[    1.126123] UBI: user volume: 1, internal volumes: 1, max. volumes count: 128
 +[    1.133295] UBI: max/mean erase counter: 2/1, WL threshold: 4096, image sequence number: 0
 +[    1.141604] UBI: available PEBs: 0, total reserved PEBs: 256, PEBs reserved for bad PEB handling: 40
 +[    1.150967] drivers/​rtc/​hctosys.c:​ unable to open rtc device (rtc0)
 +[    1.158325] UBI: background thread "​ubi_bgt0d"​ started, PID 775
 +[    1.195356] UBIFS: background thread "​ubifs_bgt0_0"​ started, PID 780
 +[    1.228709] UBIFS: start fixing up free space
 +[    1.674642] UBIFS: free space fixup complete
 +[    1.721114] UBIFS: mounted UBI device 0, volume 0, name "​rootfs"​
 +[    1.727152] UBIFS: LEB size: 129024 bytes (126 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
 +[    1.736357] UBIFS: FS size: 25933824 bytes (24 MiB, 201 LEBs), journal size 9033728 bytes (8 MiB, 71 LEBs)
 +[    1.746066] UBIFS: reserved for root: 0 bytes (0 KiB)
 +[    1.751154] UBIFS: media format: w4/r0 (latest is w4/r0), UUID 910BF25D-BEAF-40CE-B84A-3220E8E2EAC5,​ small LPT model
 +[    1.762444] VFS: Mounted root (ubifs filesystem) on device 0:10.
 +[    1.768869] Freeing unused kernel memory: 136K (c045c000 - c047e000)
 +[    1.908005] init: Console is alive
 +[    2.037961] sata_mv f1080000.sata:​ slots 32 ports 2
 +[    2.045498] scsi host0: sata_mv
 +[    2.049289] scsi host1: sata_mv
 +[    2.052665] ata1: SATA max UDMA/133 irq 32
 +[    2.056785] ata2: SATA max UDMA/133 irq 32
 +[    2.409025] ata1: SATA link down (SStatus 0 SControl F300)
 +[    2.759019] ata2: SATA link down (SStatus 0 SControl F300)
 +[    2.913139] init: - preinit -
 +[    2.985670] random: procd urandom read with 4 bits of entropy available
 +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
 +[    6.087058] mount_root: mounting /dev/root
 +[    6.103452] procd: - early -
 +[    7.185643] procd: - ubus -
 +[    8.192456] procd: - init -
 +Please press Enter to activate this console.
 +[   ​10.407705] NET: Registered protocol family 10
 +[   ​10.433489] ip6_tables: (C) 2000-2006 Netfilter Core Team
 +[   ​10.457405] ip_tables: (C) 2000-2006 Netfilter Core Team
 +[   ​10.492793] nf_conntrack version 0.5.0 (1953 buckets, 7812 max)
 +[   ​10.589545] xt_time: kernel timezone is -0000
 +[   ​10.613902] PPP generic driver version 2.4.2
 +[   ​10.636613] NET: Registered protocol family 24
 +[   ​13.588581] mv643xx_eth_port mv643xx_eth_port.0 eth0: link up, 100 Mb/s, full duplex, flow control disabled
 +[   ​13.598413] mv643xx_eth_port mv643xx_eth_port.0 eth0: link down
 +[   ​13.605554] IPv6: ADDRCONF(NETDEV_UP):​ eth0: link is not ready
 +[   ​34.611312] mv643xx_eth_port mv643xx_eth_port.0 eth0: link up, 100 Mb/s, full duplex, flow control disabled
 +[   ​34.621154] IPv6: ADDRCONF(NETDEV_CHANGE):​ eth0: link becomes ready
 +[   ​78.189036] random: nonblocking pool is initialized
 +</​code>​
 +
 +openwrt CC
 +<​code>​
 +BusyBox v1.23.2 (2016-01-02 02:33:25 CET) built-in shell (ash)
 +
 +  _______ ​                    ​________ ​       __
 + ​| ​      ​|.-----.-----.-----.| ​ |  |  |.----.| ​ |_
 + ​| ​  ​- ​  ​|| ​ _  |  -__|     ​|| ​ |  |  ||   ​_|| ​  _|
 + ​|_______|| ​  ​__|_____|__|__||________||__| ​ |____|
 +          |__| W I R E L E S S   F R E E D O M
 + ​-----------------------------------------------------
 + CHAOS CALMER (15.05.1, r48532)
 + ​-----------------------------------------------------
 +  * 1 1/2 oz Gin            Shake with a glassful
 +  * 1/4 oz Triple Sec       of broken ice and pour
 +  * 3/4 oz Lime Juice       ​unstrained into a goblet.
 +  * 1 1/2 oz Orange Juice
 +  * 1 tsp. Grenadine Syrup
 + ​-----------------------------------------------------
 +root@OpenWrt:/#​
 +</​code>​
 +
 +
 +
 +
 +==== Install OpenWrt TRUNK into NAND via serial cable and tftp-server ====
 +<WRAP center round alert 60%>
 +**as of writing (September 2016) the trunk kernel won't boot** ​
 +</​WRAP>​
 +
 +
 +
 +Files needed:
 +http://​dl.dropbox.com/​u/​1015928/​Kirkwood/​uboot/​newer-uboots-nonEFI_GPT-TESTED/​uboot.mtd0.kwb-2011.12-goflexnet-L2Coff-IDEpatched.tar.gz
 +(Mirror: http://​www.wit.dk/​temp/​SeagateGoFlexNet/​uboot.mtd0.kwb-2011.12-goflexnet-L2Coff-IDEpatched.tar.gz)
 +
 +(untar - this is uboot with working sata!)
 +
 +https://​downloads.openwrt.org/​snapshots/​trunk/​kirkwood/​generic/​openwrt-kirkwood-uImage
 +
 +https://​downloads.openwrt.org/​snapshots/​trunk/​kirkwood/​generic/​openwrt-kirkwood-generic-jffs2-nand-2048-128k.img
 +
 +Hit any key to stop autoboot in the uboot and set goflexnet ip, tftp-server ip, goflexnet mac:
 +<​code>​
 +setenv ipaddr '​192.168.1.1'​
 +setenv serverip '​192.168.1.2'​
 +setenv ethaddr '​00:​10:​75:​26:​28:​7D'​
 +</​code>​
 +
 +download from tftp-server file **uboot.mtd0.kwb-2011.12-goflexnet-L2Coff-IDEpatched** to RAM start offset 0x6400000
 +<​code>​tftp 0x6400000 uboot.mtd0.kwb-2011.12-goflexnet-L2Coff-IDEpatched</​code>​
 +Bytes transferred = 524288 (**80000** hex)  <- this number is needed for nand write
 +
 +erase nand start from 0 size 0x100000
 +<​code>​nand erase 0x0 0x100000</​code>​
 +write nand from RAM start offset 0x6400000 to nand start 0x0 size 0x**80000**
 +<​code>​nand write.e 0x6400000 0x0 0x80000</​code>​
 +
 +download from tftp-server file **openwrt-kirkwood-uImage** to RAM start offset 0x6400000
 +<​code>​tftp 0x6400000 openwrt-kirkwood-uImage</​code>​
 +Bytes transferred = 1266344 (**1352a8** hex) <- this number is needed for nand write
 +
 +erase nand start from 0x200000 size 0x300000
 +<​code>​nand erase 0x200000 0x300000</​code>​
 +write nand from RAM start offset 0x6400000 to nand start 0x200000 size 0x**1352a8**
 +<​code>​nand write.e 0x6400000 0x200000 0x1352a8</​code>​
 +
 +download from tftp-server file **openwrt-kirkwood--jffs2-nand-2048-128k.img** to RAM start offset 0x6400000
 +<​code>​tftp 0x6400000 openwrt-kirkwood--jffs2-nand-2048-128k.img</​code>​
 +Bytes transferred = 1837056 (**1c0800** hex) <- this number is needed for nand write
 +
 +erase nand start from 0x500000 size 0xfb00000
 +<​code>​nand erase 0x500000 0xfb00000</​code>​
 +write nand from RAM start offset 0x6400000 to nand start 0x500000 size 0x**1c0800**
 +<​code>​nand write.e 0x6400000 0x500000 0x1c0800</​code>​
 +reboot device
 +<​code>​reset</​code>​
 +Hit any key to stop autoboot! and set your mac-address from bottom side of the box (if you don't do this - ethernet wont work) and set other openwrt'​s environment
 +<​code>​
 +setenv baudrate '​115200'​
 +setenv bootcmd '​${x_bootcmd_kernel};​ setenv bootargs ${x_bootargs} ${x_bootargs_root};​ ${x_bootcmd_usb};​ bootm 0x6400000;'​
 +setenv bootdelay '​3'​
 +setenv ethact '​egiga0'​
 +setenv ethaddr '​00:​10:​75:​26:​28:​7D'​
 +setenv ipaddr '​192.168.1.1'​
 +setenv serverip '​192.168.1.2'​
 +setenv stderr '​serial'​
 +setenv stdin '​serial'​
 +setenv stdout '​serial'​
 +setenv x_bootargs '​console=ttyS0,​115200 mtdparts=orion_nand:​1M(u-boot),​1M@1M(second_stage_u-boot),​3M@2M(kernel),​251M@5M(rootfs) rw'
 +setenv x_bootargs_root '​root=/​dev/​mtdblock3 rw rootfstype=jffs2'​
 +setenv x_bootcmd_kernel 'nand read 0x6400000 0x200000 0x300000'​
 +setenv x_bootcmd_usb 'usb start'
 +setenv machid c11
 +saveenv
 +reset
 +</​code>​
 +
 +Voilà, we did it! :)
 +
 +<​code>​
 +U-Boot 2011.12 (Apr 18 2012 - 23:08:20)
 +Seagate GoFlexNet
 +
 +SoC:   ​Kirkwood 88F6281_A0
 +DRAM:  128 MiB
 +WARNING: Caches not enabled
 +NAND:  256 MiB
 +In:    serial
 +Out:   ​serial
 +Err:   ​serial
 +Net:   ​egiga0
 +88E1116 Initialized on egiga0
 +Hit any key to stop autoboot: ​ 0
 +
 +NAND read: device 0 offset 0x200000, size 0x300000
 + ​3145728 bytes read: OK
 +(Re)start USB...
 +USB:   ​Register 10011 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
 +## Booting kernel from Legacy Image at 06400000 ...
 +   Image Name:   ​Linux-3.3.8
 +   Image Type:   ARM Linux Kernel Image (uncompressed)
 +   Data Size:    1266192 Bytes = 1.2 MiB
 +   Load Address: 00008000
 +   Entry Point: ​ 00008000
 +   ​Verifying Checksum ... OK
 +   ​Loading Kernel Image ... OK
 +OK
 +
 +Starting kernel ...
 +
 +Uncompressing Linux... done, booting the kernel.
 +[    0.000000] Booting Linux on physical CPU 0
 +[    0.000000] Linux version 3.3.8 (openwrt@OpenWRT) (gcc version 4.6.4 (OpenWrt/​Linaro GCC 4.6-2013.05 r38047) ) #1 Thu Sep 19 01:30:05 MST 2013
 +[    0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053977
 +[    0.000000] CPU: VIVT data cache, VIVT instruction cache
 +[    0.000000] Machine: Marvell eSATA SheevaPlug Reference Board
 +[    0.000000] Memory policy: ECC disabled, Data cache writeback
 +[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
 +[    0.000000] Kernel command line: console=ttyS0,​115200 mtdparts=orion_nand:​1M(u-boot),​1M@1M(second_stage_u-boot),​3M@2M(kernel),​251M@5M(rootfs) rw root=/​dev/​mtdblock3 rw rootfstype=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] Memory: 128MB = 128MB total
 +[    0.000000] Memory: 126284k/​126284k available, 4788k reserved, 0K highmem
 +[    0.000000] Virtual kernel memory layout:
 +[    0.000000] ​    ​vector ​ : 0xffff0000 - 0xffff1000 ​  ​( ​  4 kB)
 +[    0.000000] ​    ​fixmap ​ : 0xfff00000 - 0xfffe0000 ​  ( 896 kB)
 +[    0.000000] ​    ​vmalloc : 0xc8800000 - 0xff000000 ​  ( 872 MB)
 +[    0.000000] ​    ​lowmem ​ : 0xc0000000 - 0xc8000000 ​  ( 128 MB)
 +[    0.000000] ​    ​modules : 0xbf000000 - 0xc0000000 ​  ​( ​ 16 MB)
 +[    0.000000] ​      .text : 0xc0008000 - 0xc0324000 ​  (3184 kB)
 +[    0.000000] ​      .init : 0xc0324000 - 0xc0342000 ​  ( 120 kB)
 +[    0.000000] ​      .data : 0xc0342000 - 0xc035fb20 ​  ( 119 kB)
 +[    0.000000] ​       .bss : 0xc035fb44 - 0xc0389a90 ​  ( 168 kB)
 +[    0.000000] NR_IRQS:114
 +[    0.000000] gpiochip_add:​ registered GPIOs 0 to 31 on device: orion_gpio0
 +[    0.000000] gpiochip_add:​ registered GPIOs 32 to 49 on device: orion_gpio1
 +[    0.000000] sched_clock:​ 32 bits at 200MHz, resolution 5ns, wraps every 21474ms
 +[   ​15.378138] Calibrating delay loop... 1191.11 BogoMIPS (lpj=5955584)
 +[   ​15.468126] pid_max: default: 32768 minimum: 301
 +[   ​15.468266] Mount-cache hash table entries: 512
 +[   ​15.468584] CPU: Testing write buffer coherency: ok
 +[   ​15.468840] Setting up static identity map for 0x2757e8 - 0x275824
 +[   ​15.470513] NET: Registered protocol family 16
 +[   ​15.472748] Kirkwood: MV88F6281-A0,​ TCLK=200000000.
 +[   ​15.472764] Feroceon L2: Enabling L2
 +[   ​15.472801] Feroceon L2: Cache support initialised.
 +[   ​15.480475] bio: create slab <​bio-0>​ at 0
 +[   ​15.481375] SCSI subsystem initialized
 +[   ​15.481930] usbcore: registered new interface driver usbfs
 +[   ​15.482067] usbcore: registered new interface driver hub
 +[   ​15.482226] usbcore: registered new device driver usb
 +[   ​15.483324] Switching to clocksource orion_clocksource
 +[   ​15.484874] NET: Registered protocol family 2
 +[   ​15.485020] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
 +[   ​15.485321] TCP established hash table entries: 4096 (order: 3, 32768 bytes)
 +[   ​15.485420] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
 +[   ​15.485474] TCP: Hash tables configured (established 4096 bind 4096)
 +[   ​15.485484] TCP reno registered
 +[   ​15.485494] UDP hash table entries: 256 (order: 0, 4096 bytes)
 +[   ​15.485516] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
 +[   ​15.485690] NET: Registered protocol family 1
 +[   ​15.487175] squashfs: version 4.0 (2009/​01/​31) Phillip Lougher
 +[   ​15.487189] JFFS2 version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
 +[   ​15.487525] msgmni has been set to 246
 +[   ​15.487555] io scheduler noop registered
 +[   ​15.487563] io scheduler deadline registered (default)
 +[   ​15.554884] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
 +[   ​15.577632] serial8250.0:​ ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
 +[   ​15.918534] console [ttyS0] enabled
 +[   ​15.923472] ONFI flash detected
 +[   ​15.926716] ONFI param page 0 valid
 +[   ​15.930224] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xda (Micron MT29F2G08AAD)
 +[   ​15.937929] Scanning device for bad blocks
 +[   ​16.094164] 4 cmdlinepart partitions found on MTD device orion_nand
 +[   ​16.100459] Creating 4 MTD partitions on "​orion_nand":​
 +[   ​16.105637] 0x000000000000-0x000000100000 : "​u-boot"​
 +[   ​16.111557] 0x000000100000-0x000000200000 : "​second_stage_u-boot"​
 +[   ​16.118542] 0x000000200000-0x000000500000 : "​kernel"​
 +[   ​16.124386] 0x000000500000-0x000010000000 : "​rootfs"​
 +[   ​16.130502] mv643xx_eth:​ MV-643xx 10/100/1000 ethernet driver version 1.4
 +[   ​16.137474] mv643xx_eth smi: probed
 +[   ​16.142824] mv643xx_eth_port mv643xx_eth_port.0:​ eth0: port 0 with MAC address 00:​10:​75:​26:​28:​7d
 +[   ​16.151794] ehci_hcd: USB 2.0 '​Enhanced'​ Host Controller (EHCI) Driver
 +[   ​16.158406] orion-ehci orion-ehci.0:​ Marvell Orion EHCI
 +[   ​16.163725] orion-ehci orion-ehci.0:​ new USB bus registered, assigned bus number 1
 +[   ​16.193367] orion-ehci orion-ehci.0:​ irq 19, io mem 0xf1050000
 +[   ​16.213355] orion-ehci orion-ehci.0:​ USB 2.0 started, EHCI 1.00
 +[   ​16.219848] hub 1-0:1.0: USB hub found
 +[   ​16.223640] hub 1-0:1.0: 1 port detected
 +[   ​16.228077] Initializing USB Mass Storage driver...
 +[   ​16.233153] usbcore: registered new interface driver usb-storage
 +[   ​16.239200] USB Mass Storage support registered.
 +[   ​16.244122] cpuidle: using governor ladder
 +[   ​16.249582] mmc0: mvsdio driver initialized,​ using GPIO 47 for card detection
 +[   ​16.256984] leds-gpio: probe of leds-gpio failed with error -22
 +[   ​16.263254] TCP cubic registered
 +[   ​16.266519] NET: Registered protocol family 17
 +[   ​16.271047] Bridge firewalling registered
 +[   ​16.275254] 8021q: 802.1Q VLAN Support v1.8
 +[   ​16.279588] drivers/​rtc/​hctosys.c:​ unable to open rtc device (rtc0)
 +[   ​17.972758] JFFS2 notice: (1) jffs2_build_xattr_subsystem:​ complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found.
 +[   ​17.991751] VFS: Mounted root (jffs2 filesystem) on device 31:3.
 +[   ​17.998179] Freeing init memory: 120K
 +procd: Console is alive
 +[   ​20.599310] Uniform Multi-Platform E-IDE driver
 +[   ​20.623458] sata_mv sata_mv.0: slots 32 ports 2
 +[   ​20.629741] scsi0 : sata_mv
 +[   ​20.632984] scsi1 : sata_mv
 +[   ​20.636119] ata1: SATA max UDMA/133 irq 21
 +[   ​20.640234] ata2: SATA max UDMA/133 irq 21
 +[   ​20.993364] ata1: SATA link down (SStatus 0 SControl F300)
 +[   ​21.503369] ata2: SATA link up 1.5 Gbps (SStatus 113 SControl F300)
 +[   ​21.883398] ata2.00: ATA-6: TOSHIBA MK1032GSX, AS021G, max UDMA/100
 +[   ​21.889697] ata2.00: 195371568 sectors, multi 16: LBA48 NCQ (depth 31/32)
 +[   ​21.953398] ata2.00: configured for UDMA/100
 +[   ​21.957957] scsi 1:0:0:0: Direct-Access ​    ​ATA ​     TOSHIBA MK1032GS AS02 PQ: 0 ANSI: 5
 +[   ​21.967355] sd 1:0:0:0: [sda] 195371568 512-byte logical blocks: (100 GB/93.1 GiB)
 +[   ​21.975267] sd 1:0:0:0: [sda] Write Protect is off
 +[   ​21.980167] sd 1:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn'​t support DPO or FUA
 +[   ​22.030739] ​ sda: sda1
 +[   ​22.034046] sd 1:0:0:0: [sda] Attached SCSI disk
 +[   ​22.045058] ohci_hcd: USB 1.1 '​Open'​ Host Controller (OHCI) Driver
 +[   ​22.052996] uhci_hcd: USB Universal Host Controller Interface driver
 +kmod: ran 28 iterations
 +procd: - preinit -
 +Press the [f] key and hit [enter] to enter failsafe mode
 +mount_root: mounting /dev/root
 +procd: - early -
 +procd: - init -
 +Please press Enter to activate this console.
 +[   ​28.126425] NET: Registered protocol family 10
 +[   ​28.193973] aoe: AoE v47 initialised.
 +[   ​28.253711] RPC: Registered named UNIX socket transport module.
 +[   ​28.259662] RPC: Registered udp transport module.
 +[   ​28.264413] RPC: Registered tcp transport module.
 +[   ​28.269131] RPC: Registered tcp NFSv4.1 backchannel transport module.
 +[   ​28.287417] NTFS driver 2.1.30 [Flags: R/O MODULE].
 +[   ​28.315502] tun: Universal TUN/TAP device driver, 1.6
 +[   ​28.320580] tun: (C) 1999-2004 Max Krasnyansky <​maxk@qualcomm.com>​
 +[   ​28.387485] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
 +[   ​28.411442] nf_conntrack version 0.5.0 (1975 buckets, 7900 max)
 +[   ​28.437469] ip6_tables: (C) 2000-2006 Netfilter Core Team
 +[   ​28.513508] sd 1:0:0:0: Attached scsi generic sg0 type 0
 +[   ​28.543385] u32 classifier
 +[   ​28.546104] ​    input device check on
 +[   ​28.549775] ​    ​Actions configured
 +[   ​28.564556] Mirror/​redirect action on
 +[   ​28.624722] netem: version 1.3
 +[   ​28.663524] fuse init (API version 7.18)
 +[   ​28.680251] ip_tables: (C) 2000-2006 Netfilter Core Team
 +[   ​28.726045] usbcore: registered new interface driver usblp
 +[   ​28.823510] xt_time: kernel timezone is -0000
 +[   ​28.851447] PPP generic driver version 2.4.2
 +[   ​28.861255] NET: Registered protocol family 24
 +[   ​33.545126] ADDRCONF(NETDEV_UP):​ eth0: link is not ready
 +[   ​36.346205] mv643xx_eth_port mv643xx_eth_port.0:​ eth0: link up, 1000 Mb/s, full duplex, flow control disabled
 +[   ​36.356457] ADDRCONF(NETDEV_CHANGE):​ eth0: link becomes ready
 +procd: - init complete -
 +
 +
 +
 +BusyBox v1.19.4 (2013-09-19 01:21:59 MST) built-in shell (ash)
 +Enter '​help'​ for a list of built-in commands.
 +
 +  _______ ​                    ​________ ​       __
 + ​| ​      ​|.-----.-----.-----.| ​ |  |  |.----.| ​ |_
 + ​| ​  ​- ​  ​|| ​ _  |  -__|     ​|| ​ |  |  ||   ​_|| ​  _|
 + ​|_______|| ​  ​__|_____|__|__||________||__| ​ |____|
 +          |__| W I R E L E S S   F R E E D O M
 + ​-----------------------------------------------------
 + ​BARRIER BREAKER (Bleeding Edge, r38047)
 + ​-----------------------------------------------------
 +  * 1/2 oz Galliano ​        Pour all ingredients into
 +  * 4 oz cold Coffee ​       an irish coffee mug filled
 +  * 1 1/2 oz Dark Rum       with crushed ice. Stir.
 +  * 2 tsp. Creme de Cacao
 + ​-----------------------------------------------------
 +root@OpenWrt:/#​ df -h
 +Filesystem ​               Size      Used Available Use% Mounted on
 +rootfs ​                 251.0M ​    ​22.5M ​   228.5M ​  9% /
 +/​dev/​root ​              ​251.0M ​    ​22.5M ​   228.5M ​  9% /
 +tmpfs                    61.7M    236.0K ​    ​61.5M ​  0% /tmp
 +tmpfs                   ​512.0K ​        ​0 ​   512.0K ​  0% /dev
 +/​dev/​sda1 ​               93.2G     ​88.6M ​    ​93.1G ​  0% /​tmp/​run/​mountd/​sda1
 +root@OpenWrt:/#​
 +</​code>​
 +
 +==== redstone63 rescue ====
 +all files are here: [[http://​us.mirror.archlinuxarm.org/​mirror/​ce/​|redstone_v63]]
 +
 +Checksums:
 +
 +ce_kernel_redstone_v63.img:​ c31ca085da5999651384cf4bb9978692
 +
 +ce_ramdisk_v2.0b.img.gz: ​   80787eea2389a1fe96ffc6715ec65d4c
 +
 +<​code>​
 +setenv ipaddr '​192.168.1.1'​
 +setenv serverip '​192.168.1.2'​
 +nand erase 0x100000 0x400000
 +tftp 0x800000 ce_kernel_redstone_v63.img
 +nand write.e 0x800000 0x100000 0x1e30f0
 +tftp 0x1000000 ce_ramdisk_v2.0b.img.gz
 +setenv bootargs $(console) root=/​dev/​mtdblock2 initrd=0x1000000,​0xb39a59
 +bootm 0x800000
 +</​code>​
 +
 +==== Recovery of a bricked uboot *without* jtag ====
 +Unlike the dockstar, the goflexnet has a newer bootrom which supports
 +serial boot. [http://​forum.doozan.com/​read.php?​3,​7852,​7852]
 +
 +<​code>​
 +wget ftp://​ftp.denx.de/​pub/​u-boot/​u-boot-2013.10.tar.bz2
 +tar jxf u-boot-2013.10.tar.bz2
 +cd u-boot-2013.10/​tools/​
 +gcc -o kwboot kwboot.c
 +./kwboot -b /​tmp/​openwrt-kirkwood-goflexhome-u-boot.kwb -t -p -B 115200 /​dev/​ttyUSB0
 +</​code>​
 +
 +Now the uboot is loaded into ram and executed. You have to flash u-boot into nand. See below how to flash it.
 +
 +====RECOVERY BRICKED UBOOT OF GOFLEXNET (BusPirate & Cygwin)====
 +information from console of BusPirate (SeeedStudio) "​HiZ>​i"​ - Bus Pirate v3.5 Firmware v6.1 r1676  Bootloader v4.4
 +in bash of Cygwin
 +<​code>​
 +git clone git://​git.code.sf.net/​p/​openocd/​code
 +cd code
 +./bootstrap
 +./configure --enable-maintainer-mode --disable-werror --disable-at91rm9200 --enable-buspirate
 +make && make install && make clean
 +
 +put buspirate.cfg to /​usr/​local/​share/​openocd/​scripts/​interface/​
 +put dockstar.cfg to /​usr/​local/​share/​openocd/​scripts/​board/​
 +put uboot.mtd0.goflexnet.original.kwb from http://​download.doozan.com/​uboot/​files/​uboot/​uboot.mtd0.goflexnet.original.kwb to /​usr/​local/​share/​openocd/​scripts/​
 +
 +cd /​usr/​local/​share/​openocd/​scripts
 +
 +(Seeed Studio BusPirate - GoFlex.net) ​ (GoFlex.net - Seeed Studio BusPirate)
 +(            nc         ​- ​  ​1 ​ nc   ​) ​ ( 10  GND   ​- ​   serial cable GND   )
 +(     ​6 ​ blue   ​(aux) ​  ​- ​  ​2 ​ IN   ​) ​ (  9  RxD   ​- ​   serial cable TxD   )
 +(     ​8 ​ gray   ​(mosi) ​ -   ​3 ​ TDI  )  (  8  TxD   ​- ​   serial cable RxD   )
 +(     ​9 ​ white  (cs)    -   ​4 ​ TMS  )  (  7  CN    -           ​nc ​         )
 +(     ​7 ​ purple (clk)   ​- ​  ​5 ​ TCK  )  (  6  DOT   ​- ​   10  black (miso) ​  )
 +power on goflex.net, serial, buspirate
 +
 +openocd.exe -f board/​dockstar.cfg
 +
 +in telnet 127.0.0.1 4444:
 +init
 +type '​halt'​ - press reset - press enter - release reset
 +
 +(repeat while not see this:
 +target state: halted
 +target halted in ARM state due to debug-request,​ current fashion: Supervisor
 +CPSR: 0x000000d3 pc: 0xffff0000
 +MMU: disabled, D-Cache: disabled, I-Cache: disabled
 +if you not see this - you can try command '​soft_reset_halt'​)
 +
 +dockstar_init
 +
 +(here are two options to choose from)
 +------
 +load_image uboot.mtd0.goflexnet.original.kwb 0x800000
 +(wait ~214 sec)
 +resume 0x800200
 +------
 +or you can erease nand and native write to nand:
 +------
 +nand probe 0
 +nand erase 0 0x0 0xa0000
 +nand write 0 uboot.mtd0.goflexnet.original.kwb 0 oob_softecc_kw
 +(wait ~569 sec)
 +(then poweroff goflexnet & buspirate, wait 5 secs adns poweron goflexnet)
 +------
 +
 +
 +in serial console:
 +Hit any key to stop autoboot: ​ 0
 +nand erase
 +nand write.e 0x800000 0x0 0x80000
 +reset
 +</​code>​
 +
 +buspirate.cfg
 +<​code>​
 +interface buspirate
 +buspirate_port /dev/ttyS15
 +buspirate_speed fast #normal or fast
 +buspirate_vreg 0
 +buspirate_mode open-drain
 +buspirate_pullup 0
 +reset_config srst_only
 +</​code>​
 +
 +dockstar.cfg
 +<​code>​
 +# Marvell SheevaPlug
 +
 +# I'm using a wiggler compatible cable
 +source [find interface/​buspirate.cfg]
 +source [find target/​feroceon.cfg]
 +jtag_khz 500
 +jtag_nsrst_delay 500
 +
 +$_TARGETNAME configure \
 + -work-area-phys 0x100000 \
 + -work-area-size 65536 \
 + -work-area-backup 0
 +
 +# Disabled for the dockstar
 +#arm7_9 dcc_downloads enable
 +
 +# this assumes the hardware default peripherals location before u-Boot moves it
 +set _FLASHNAME $_CHIPNAME.flash
 +nand device $_FLASHNAME orion 0 0xd8000000
 +
 +proc dockstar_init { } {
 +
 + # We need to assert DBGRQ while holding nSRST down.
 + # However DBGACK will be set only when nSRST is released.
 + # Furthermore,​ the JTAG interface doesn'​t respond at all when
 + # the CPU is in the WFI (wait for interrupts) state, so it is
 + # possible that initial tap examination failed. ​ So let's
 + # re-examine the target again here when nSRST is asserted which
 + # should then succeed.
 + jtag_reset 0 1
 + feroceon.cpu arp_examine
 + halt 0
 + jtag_reset 0 0
 + wait_halt
 +
 + arm mcr 15 0 0 1 0 0x00052078
 +
 + mww 0xD0001400 0x43000C30
 + mww 0xD0001404 0x39543000 ​
 + mww 0xD0001408 0x22125451 ​
 + mww 0xD000140C 0x00000833 ​
 + mww 0xD0001410 0x000000CC
 + mww 0xD0001414 0x00000000 ​
 + mww 0xD0001418 0x00000000
 + mww 0xD000141C 0x00000C52 ​
 + mww 0xD0001420 0x00000042 ​
 + mww 0xD0001424 0x0000F17F ​
 + mww 0xD0001428 0x00085520 ​
 + mww 0xD000147c 0x00008552 ​
 +
 + # 1st bank is 128 MB
 + mww 0xD0001504 0x07FFFFF1 ​
 + # 2nd bank of DRAM is not used
 + mww 0xD0001508 0x00000000 ​
 + mww 0xD000150C 0x00000000
 + # Commented the 3 following lines
 + #mww 0xD0001504 0x0FFFFFF1 ​
 + #mww 0xD0001508 0x10000000 ​
 + #mww 0xD000150C 0x0FFFFFF5 ​
 + mww 0xD0001514 0x00000000
 + mww 0xD000151C 0x00000000
 + mww 0xD0001494 0x003C0000 ​
 + mww 0xD0001498 0x00000000
 + mww 0xD000149C 0x0000F80F ​
 + mww 0xD0001480 0x00000001 ​
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 + mww 0xD0020204 0x00000000
 +
 + mww 0xD0010000 0x01111111 ​
 + mww 0xD0010004 0x11113322 ​
 + mww 0xD0010008 0x00001111
 +
 + mww 0xD0010418 0x003E07CF
 + mww 0xD001041C 0x000F0F0F
 + mww 0xD0010470 0x01C7D943
 +
 +}
 +
 +proc sheevaplug_reflash_uboot { } {
 +
 + # reflash the u-Boot binary and reboot into it
 + sheevaplug_init
 + nand probe 0
 + nand erase 0 0x0 0xa0000
 + nand write 0 uboot.bin 0 oob_softecc_kw
 + resume
 +
 +}
 +
 +proc sheevaplug_reflash_uboot_env { } {
 +
 + # reflash the u-Boot environment variables area
 + sheevaplug_init
 + nand probe 0
 + nand erase 0 0xa0000 0x40000
 + nand write 0 uboot-env.bin 0xa0000 oob_softecc_kw
 + resume
 +
 +}
 +
 +proc sheevaplug_load_uboot { } {
 +
 + # load u-Boot into RAM and execute it
 + sheevaplug_init
 + #​load_image uboot.elf
 + #​verify_image uboot.elf
 + load_image u-boot
 + verify_image u-boot
 + resume 0x00600000
 +
 +}
 +
 +proc dockstar_reset_cpu { } {
 +
 +# System and User mode registers
 +#   r0: 00000000 ​      r1: 00000000 ​      r2: 00000000 ​      r3: 00000000
 +#   r4: 00000000 ​      r5: 00000000 ​      r6: 00000000 ​      r7: 00000000
 +#   r8: 00000000 ​      r9: 00000000 ​     r10: 00000000 ​     r11: 00000000
 +# r12: 00000000 ​  ​sp_usr:​ 7dddee86 ​  ​lr_usr:​ dffebe46 ​      pc: ffff0a42
 +# cpsr: 400000f3
 +
 + reg r1 0
 + reg r2 0
 + reg r3 0
 + reg r4 0
 + reg r5 0
 + reg r6 0
 + reg r7 0
 + reg r8 0
 + reg r9 0
 + reg r10 0
 + reg r11 0
 + reg r12 0
 + reg sp_usr 0
 + reg lr_usr 0
 + reg pc 0
 + # Set the CPU in Supervisor mode
 + reg cpsr 0x13
 +
 +# FIQ mode shadow registers
 +#   r8_fiq: fbcfff64 ​  ​r9_fiq:​ d7dfafd6 ​ r10_fiq: 1fff6d2e ​ r11_fiq: 1db65df4
 +# r12_fiq: ff5a6de4 ​  ​sp_fiq:​ 745fe7d5 ​  ​lr_fiq:​ 89f7ae3e spsr_fiq: 00000000
 +
 + reg r8_fiq 0
 + reg r9_fiq 0
 + reg r10_fiq 0
 + reg r11_fiq 0
 + reg r12_fiq 0
 + reg sp_fiq 0
 + reg lr_fiq 0
 + reg spsr_fiq 0
 +
 +#​ Supervisor mode shadow registers
 +#   sp_svc: fffeff84 ​  ​lr_svc:​ ffff0a43 spsr_svc: 00000000
 +
 + reg sp_svc 0
 + reg lr_svc 0
 + reg spsr_svc 0
 +
 +# Abort mode shadow registers
 +#   sp_abt: 51fe66f7 ​  ​lr_abt:​ d7abaef7 spsr_abt: 00000000
 +
 + reg sp_abt 0
 + reg lr_abt 0
 + reg spsr_abt 0
 +
 +# IRQ mode shadow registers
 +#   sp_irq: 7fdb4ed5 ​  ​lr_irq:​ 6d41122e spsr_irq: 00000000
 +
 + reg sp_irq 0
 + reg lr_irq 0
 + reg spsr_irq 0
 +
 +# Undefined instruction mode shadow registers
 +#   sp_und: 75ffef7e ​  ​lr_und:​ d75b6cd1 spsr_und: 00000000
 +
 + reg sp_und 0
 + reg lr_und 0
 + reg spsr_und 0
 +
 +}
 +</​code>​
 +
 +==== original/​default GoFlex.net uBoot environment (printenv/​setenv) ====
 +<​code>​
 +baudrate=115200
 +loads_echo=0
 +rootpath=/​mnt/​ARM_FS/​
 +run_diag=yes
 +console=console=ttyS0,​115200
 +CASset=min
 +MALLOC_len=1
 +ethprime=egiga0
 +bootargs_root=root=/​dev/​mtdblock2 ro
 +ethmtu=1500
 +usb0Mode=host
 +nandEcc=1bit
 +bootargs=console=ttyS0,​115200 root=/​dev/​mtdblock2 ro
 +ethaddr=00:​10:​75:​26:​3D:​9F
 +cesvcid=5RFAJDGYNLPLDUHN4BWUWC3EKJ
 +ceserialno=NA1Y0EG1
 +ceboardver=DISCOVERY:​0.1
 +ethact=egiga0
 +filesize=1b60000
 +fileaddr=1000000
 +netmask=255.255.0.0
 +ipaddr=192.168.1.1
 +serverip=192.168.1.2
 +bootcmd=nand read.e 0x800000 0x100000 0x300000; setenv bootargs $(console) $(bootargs_root);​ bootm 0x800000
 +arcNumber=3089
 +stdin=serial
 +stdout=serial
 +stderr=serial
 +mainlineLinux=no
 +enaMonExt=no
 +enaCpuStream=no
 +enaWrAllo=no
 +pexMode=RC
 +disL2Cache=no
 +setL2CacheWT=yes
 +disL2Prefetch=yes
 +enaICPref=yes
 +enaDCPref=yes
 +sata_dma_mode=yes
 +netbsd_en=no
 +vxworks_en=no
 +bootdelay=3
 +disaMvPnp=no
 +</​code>​
 +
 +===== Tags =====
 +{{tag>​GigabitEthernet 1NIC 0WNIC no_switch USB 4USB JTAG 128RAM gt32Flash ARM ARMv5 ARM926EJ-S crypto SATA marvell kirkwood}}