[SOLVED] Help Recovering Pogoplug v4 ( reflash origianl firmware )
September 19, 2013 10:13AM
Hi all,
I need some help restoring the original firmware on my Pogoplug V4 (A3-01). My actual situation is that I can only boot into uBoot. I don't have a working o.s. on the nand and I can't manage to boot any other o.s from usb or mmc. Luckily I have both access to the serial console and mtds backups. Now my question is: how do I use these backups to restore my device? How I know where to write uboot or uImage? How I've to calculate the offset of nand write command? Are all mtds in sequence? Can you give me some examples? I don't even know if my $mdparts is correct but maybe this can help!(?).

~ # cat /proc/partitions
    major minor  #blocks  name

      31        0       2048 mtdblock0
      31        1       3072 mtdblock1
      31        2       3072 mtdblock2
      31        3       8192 mtdblock3
      31        4     114688 mtdblock4

~ # cat /proc/mtd
    dev:    size   erasesize  name
    mtd0: 00200000 00020000 "u-boot"
    mtd1: 00300000 00020000 "uImage"
    mtd2: 00300000 00020000 "uImage2"
    mtd3: 00800000 00020000 "failsafe"
    mtd4: 07000000 00020000 "root"


thanks to anyone who can help me!



Edited 1 time(s). Last edit at 09/27/2013 02:09AM by skakz.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 19, 2013 08:53PM
Skakz ,

See this post for example:
http://forum.doozan.com/read.php?2,7806,13250#msg-13250

You could post your solution here and we'll double check!

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 20, 2013 12:35AM
skakz,

Also, it would be helpful you interrupt uBoot and get the listing of envs:
printenv

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 2 time(s). Last edit at 09/20/2013 12:36AM by bodhi.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 20, 2013 01:48AM
hi bodhi,
I think your example is for the command shell once booted in linux. I need something directly from uboot (nand erase/write) where I have to specify adresses and offsets.

I wold do this steps (tell me if I'm wrong):

1) tftpboot 0x800000 mtd0 (uboot backup)
0x800000 is an external memory address

check transferred bytes and convert to hex

2) nand erase 0x0 0x80000
3) nand write.e 0x800000 0x0 0x80000
0x80000 is the transferred bytes in hex

then how I will know the other offsets for the others mtdparts? (mtd1 mtd2 mtd3 mtd4)
again, once I write uboot what happen to the envs? how to reset envs? where are stored in the nand?





here it is the my envs (I know! this is a mess, I mixed two uboot's envs..):

U-Boot 2011.12 (Apr 08 2012 - 19:03:41)
Cloud Engines-Pogoplug v4/Mobile:MMC version

SoC:   Kirkwood 88F6281_A1
DRAM:  128 MiB
WARNING: Caches not enabled
NAND:  128 MiB
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
Hit any key to stop autoboot:  0
Unknown command 'tenv' - try 'help'
(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
** Block device usb 0 not supported
** Block device usb 0 not supported
Wrong Image Format for bootm command
ERROR: can't get kernel image!
Pogov4>

U-Boot 2011.12 (Apr 08 2012 - 19:03:41)
Cloud Engines-Pogoplug v4/Mobile:MMC version

SoC:   Kirkwood 88F6281_A1
DRAM:  128 MiB
WARNING: Caches not enabled
NAND:  128 MiB
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
Hit any key to stop autoboot:  0
Unknown command 'tenv' - try 'help'
(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
** Block device usb 0 not supported
** Block device usb 0 not supported
Wrong Image Format for bootm command
ERROR: can't get kernel image!
Pogov4> printenv
alarm_args=setenv bootargs console ttyS0,115200 root $device rootwait rootfstype ext3
alarm_boot=ide reset; run alarm_revert; if ide part 0; then run alarm_ide; else setenv isDisk no; fi; run alarm_usb
alarm_ide=if ext2load ide 0:1 0x800000 /boot/uImage; then setenv device /dev/sda1; run alarm_args; bootm 0x800000; else setenv isDisk yes; fi
alarm_revert=if fatls usb 0:1 /revert; then setenv mainlineLinux no; setenv arcNumber; setenv bootcmd run boot_nand; saveenv; reset; fi
alarm_usb=if ext2load usb 0:1 0x800000 /boot/uImage; then run alarm_which; run alarm_args; bootm 0x800000; fi
alarm_which=if test $isDisk   yes; then setenv device /dev/sdb1; else setenv device /dev/sda1; fi
arcNumber=3960
baudrate=115200
bootargs_console=console=ttyS0,115200
bootcmd=tenv bootargs $(bootargs_console); run bootcmd_usb; bootm 0x00800000 0x01100000
bootcmd_usb=usb start; ext2load usb 0:1 0x00800000 /uImage; ext2load usb 0:1 0x01100000 /uInitrd
bootdelay=3
console=ttyS0,115200
ethact=egiga0
ethaddr=02:50:43:9d:7d:be
fileaddr=800000
filesize=73D0C
force_rescue=0
force_rescue_bootcmd=if test $force_rescue -eq 1 || ext2load usb 0:1 0x1700000 /rescueme 1 || fatload usb 0:1 0x1700000 /rescueme.txt 1; then run rescue_bootcmd; fi
ipaddr=192.168.1.60
led_error=orange blinking
led_exit=green off
led_init=green blinking
mainlineLinux=yes
mtddevname=uImage2
mtddevnum=2
mtdids=nand0=orion_nand
mtdparts=mtdparts=orion_nand:2M(u-boot),3M(uImage),3M(uImage2),8M(failsafe),112M(root)
partition=nand0,2
pogo_bootcmd=if fsload uboot-original-mtd0.kwb; then go 0x800200; fi
rescue_bootcmd=if test $rescue_installed -eq 1; then run rescue_set_bootargs; nand read.e 0x800000 0x100000 0x400000; bootm 0x800000; else run pogo_bootcmd; fi
rescue_installed=0
rescue_set_bootargs=setenv bootargs console=$console ubi.mtd=2 root=ubi0:rootfs ro rootfstype=ubifs $mtdparts $rescue_custom_params
serverip=192.168.1.3
stderr=serial
stdin=serial
stdout=serial
ubifs_bootcmd=run ubifs_set_bootargs; if ubi part data && ubifsmount rootfs && ubifsload 0x800000 /boot/uImage && ubifsload 0x1100000 /boot/uInitrd; then bootm 0x800000 0x1100000; fi
ubifs_mtd=3
ubifs_set_bootargs=setenv bootargs console=$console ubi.mtd=$ubifs_mtd root=ubi0:rootfs rootfstype=ubifs $mtdparts $ubifs_custom_params
usb_boot=mw 0x800000 0 1; ext2load usb $usb_device 0x800000 /boot/uImage; if ext2load usb $usb_device 0x1100000 /boot/uInitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
usb_bootcmd=run usb_init; run usb_set_bootargs; run usb_boot
usb_device=0:1
usb_init=run usb_scan
usb_root=/dev/sda1
usb_rootdelay=10
usb_rootfstype=ext2
usb_scan=usb_scan_done=0;for scan in $usb_scan_list; do run usb_scan_$scan; if test $usb_scan_done -eq 0 && ext2load usb $usb 0x800000 /boot/uImage 1; then usb_scan_done=1; echo "Found bootable drive on usb $usb"; setenv usb_device $usb; setenv usb_root /dev/$dev; fi; done
usb_scan_1=usb=0:1 dev=sda1
usb_scan_2=usb=1:1 dev=sdb1
usb_scan_3=usb=2:1 dev=sdc1
usb_scan_4=usb=3:1 dev=sdd1
usb_scan_list=1 2 3 4
usb_set_bootargs=setenv bootargs console=$console root=$usb_root rootdelay=$usb_rootdelay rootfstype=$usb_rootfstype $mtdparts $usb_custom_params

Environment size: 3265/131068 bytes
Pogov4>


thank you!!
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 20, 2013 02:51AM
skakz,

Your bootcmd has a problem. That was the reason you could not boot Linux at all.

Instead of flashing in serial console, it is much easier to flash in Linux. See this thread for how I prepared the Pogo Mobile (same as Pogo V4) to boot Linux:
http://forum.doozan.com/read.php?2,11663

You already have Davy's uBoot installed. All you need is a correct uBoot envs set. In the above thread, the envs are listed. Usually, we need to work backward from the bootcmd. So you should prepare your uBoot setenv commands in a notepad in reversed order. The envs below are for booting Debian rootfs.

bootcmd=usb start; run usb_bootcmd; usb stop; reset
usb_bootcmd=run usb_init; run usb_set_bootargs; run usb_boot
usb_boot=mw 0x800000 0 1; ext2load usb $usb_device 0x800000 /boot/uImage; if ext2load usb $usb_device 0x1100000 /boot/uInitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi

usb_set_bootargs=setenv bootargs console=$console root=$usb_root rootdelay=$usb_rootdelay rootfstype=$usb_rootfstype $mtdparts $usb_custom_params

mtdparts=mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)

usb_scan=usb_scan_done=0;for scan in $usb_scan_list; do run usb_scan_$scan; if test $usb_scan_done -eq 0 && ext2load usb $usb 0x800000 /boot/uImage 1; then 
usb_scan_done=1; echo "Found bootable drive on usb $usb"; setenv usb_device $usb; setenv usb_root /dev/$dev; fi; done
usb_scan_list=1 2 3 4
usb_scan_1=usb=0:1 dev=sda1
usb_scan_2=usb=1:1 dev=sdb1
usb_scan_3=usb=2:1 dev=sdc1
usb_scan_4=usb=3:1 dev=sdd1
usb_init=run usb_scan

usb_device=0:1
usb_root=/dev/sda1
usb_rootfstype=ext2
usb_rootdelay=10
console=ttyS0,115200

You can see the logic? each $variable_name corresponds to a setenv in one of the following commands. The syntax is that each variable is set with a setenv and the value enclosed in single quote. For example, to set bootcmd.

setenv bootcmd 'usb start; run usb_bootcmd; usb stop; reset'

Once you have them in the correct syntax in a notepad file, just cut/paste each one to the uBoot prompt at serial console.

After you have corrected your uBoot envs, see this thread for preparing a Debian rootfs:
http://forum.doozan.com/read.php?2,12096

After you have successfully boot into Debian, you can choose to restore the uImage and uImage2 in NAND, or switch to ArchLinux, or stay with Debian. You'll have a much easier time dealing with NAND without worrying about bricking. And to switch to ArchLinux, only one uBoot env needs to be changed.

One more thing: no matter what you do, don't touch mtd0 :) it is good and is your only insurance. You can trash the rest, but mtd0 must be kept as is to make sure you can recover easily.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 1 time(s). Last edit at 09/20/2013 02:56AM by bodhi.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 20, 2013 04:04AM
thanks bodhi,
finally with debian works fine.

Now let's forget about nand and restoring original fw. Llet's say I want boot from sata.
the easyst way is to put the kernel on the usb and the rootfs on sata hard drive.

the hardest way would be to install the alarm uboot that may screw up forever my pogo.

can I install the ALARM uBoot somewhere else in the nand and load it from Davy uBoot and then boot from sata?

how would you do?

thanks
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 20, 2013 12:20PM
skakz Wrote:
-------------------------------------------------------
> thanks bodhi,
> finally with debian works fine.
>
> Now let's forget about nand and restoring original
> fw. Llet's say I want boot from sata.
> the easyst way is to put the kernel on the usb and
> the rootfs on sata hard drive.
>
> the hardest way would be to install the alarm
> uboot that may screw up forever my pogo.
>
> can I install the ALARM uBoot somewhere else in
> the nand and load it from Davy uBoot and then boot
> from sata?
>
> how would you do?
>
> thanks

Skakz,

Chaining these 2 uBoot won't work. If it works at all, booting will be unreliable. So that option is not a good one! And you're right about installing ALARM uBoot using the official script will brick your Pogo. The only way to boot from SATA for you is to restore old NAND and then reinstall ALARM uBoot.

If I can get mine to boot with UART, I'll play with ALARM uBoot to see if it would work if we flash it directly to mtd0. But the best approach is to find a newer uBoot patch and try getting it to boot SATA.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 1 time(s). Last edit at 09/20/2013 12:40PM by bodhi.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 20, 2013 03:24PM
Thanks bodhi,
I don't want disturb too much =) you have been far too kind
thanks again

edit:
checked with armlinux kernel and sata is still not working, so it is not a kernel problem.
mayabe something in uboot??

my envs are now:

Pogov4> printenv
arcNumber=3960
baudrate=115200
bootcmd=mmc init; run mmc_bootcmd; reset
console=ttyS0,115200
ethact=egiga0
ethaddr=02:50:43:12:86:1f
mmc_boot=mw 0x800000 0 1; ext2load mmc 0:1 0x800000 /boot/uImage; if ext2load mmc 0:1 0x1100000 /boot/uInitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
mmc_bootcmd=run mmc_set_bootargs; run mmc_boot
mmc_root=/dev/mmcblk0p1
mmc_rootdelay=10
mmc_rootfstype=ext3
mmc_set_bootargs=setenv bootargs console=$console root=$mmc_root rootdelay=$mmc_rootdelay rootfstype=$mmc_rootfstype $mtdparts $mmc_custom_params
mtdparts=mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
stderr=serial
stdin=serial
stdout=serial
usb_boot=mw 0x800000 0 1; ext2load usb $usb_device 0x800000 /boot/uImage; if ext2load usb $usb_device 0x1100000 /boot/uInitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
usb_bootcmd=run usb_init; run usb_set_bootargs; run usb_boot
usb_device=0:1
usb_init=run usb_scan
usb_root=/dev/sda1
usb_rootdelay=10
usb_rootfstype=ext3
usb_scan=usb_scan_done=0;for scan in $usb_scan_list; do run usb_scan_$scan; if test $usb_scan_done -eq 0 && ext2load usb $usb 0x800000 /boot/uImage 1; then
usb_scan_1=usb=0:1 dev=sda1
usb_scan_2=usb=1:1 dev=sdb1
usb_scan_3=usb=2:1 dev=sdc1
usb_scan_4=usb=3:1 dev=sdd1
usb_scan_done=1; echo "Found bootable drive on usb $usb"; setenv usb_device $usb; setenv usb_root /dev/$dev; fi; done
usb_scan_list=1 2 3 4
usb_set_bootargs=setenv bootargs console=$console root=$usb_root rootdelay=$usb_rootdelay rootfstype=$usb_rootfstype $mtdparts $usb_custom_params

Environment size: 1619/131068 bytes
Pogov4>



Edited 1 time(s). Last edit at 09/20/2013 05:25PM by skakz.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 20, 2013 11:49PM
skakz,

It is uBoot problem. Davy's uBoot does not have SATA support. So we only flash it to the Pogo Mobile. Only flash it to the Pogo V4 if SATA is not needed. I guess you were not aware of this. I also forgot about it because I don't use SATA on the Pogo V4.

In any case, I got Davy's patch from his post here:
http://forum.doozan.com/read.php?3,7601,7601#msg-7601

Will see if I can find out if SATA for this SoC is supported in the latest uBoot and build it.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 1 time(s). Last edit at 09/20/2013 11:55PM by bodhi.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 21, 2013 02:10AM
thank you bodhi
yeah I didn't know :( I bought a sata hard drive just for it!
so I see that is a very complicated subject! mayabe the simpliest solution is to find a way to restore those backups..
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 21, 2013 05:46PM
skakz Wrote:
-------------------------------------------------------
> thank you bodhi
> yeah I didn't know :( I bought a sata hard drive
> just for it!
> so I see that is a very complicated subject!
> mayabe the simpliest solution is to find a way to
> restore those backups..

skakz,

In Debian, run dmesg and post the output here! Thanks.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 22, 2013 02:24AM
Hi bodhi,
here it is:

root@debian:~# dmesg
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 3.1.10-22-ARCH (nobody@) (gcc version 4.7.2 (GCC) ) #1 PREEMPT Fri Jun 28 21:43:02 CDT 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 OpenRD Ultimate Board
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] On node 0 totalpages: 32768
[    0.000000] free_area_init_node: node 0, pgdat c059aab0, node_mem_map c066b000
[    0.000000]   Normal zone: 256 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 32512 pages, LIFO batch:7
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/mmcblk0p1 rootdelay=10 rootfstype=ext3 mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
[    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] allocated 524288 bytes of page_cgroup
[    0.000000] please try 'cgroup_disable=memory' option if you don't want memory cgroups
[    0.000000] Memory: 128MB = 128MB total
[    0.000000] Memory: 122828k/122828k available, 8244k 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]     DMA     : 0xffc00000 - 0xffe00000   (   2 MB)
[    0.000000]     vmalloc : 0xc8800000 - 0xfe800000   ( 864 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xc8000000   ( 128 MB)
[    0.000000]     modules : 0xbf000000 - 0xc0000000   (  16 MB)
[    0.000000]       .text : 0xc0008000 - 0xc05381ac   (5313 kB)
[    0.000000]       .init : 0xc0539000 - 0xc0564000   ( 172 kB)
[    0.000000]       .data : 0xc0564000 - 0xc059d2b0   ( 229 kB)
[    0.000000]        .bss : 0xc059d2d4 - 0xc066ae6c   ( 823 kB)
[    0.000000] SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] NR_IRQS:114
[    0.000000] sched_clock: 32 bits at 166MHz, resolution 5ns, wraps every 25769ms
[    0.000000] Console: colour dummy device 80x30
[   17.876605] Calibrating delay loop... 795.44 BogoMIPS (lpj=3977216)
[   17.916481] pid_max: default: 32768 minimum: 301
[   17.916668] Security Framework initialized
[   17.916705] AppArmor: AppArmor disabled by boot time parameter
[   17.916803] Mount-cache hash table entries: 512
[   17.917383] Initializing cgroup subsys cpuacct
[   17.917424] Initializing cgroup subsys memory
[   17.917479] Initializing cgroup subsys devices
[   17.917497] Initializing cgroup subsys freezer
[   17.917510] Initializing cgroup subsys net_cls
[   17.917523] Initializing cgroup subsys blkio
[   17.917556] Initializing cgroup subsys perf_event
[   17.917587] Initializing cgroup subsys bfqio
[   17.917724] CPU: Testing write buffer coherency: ok
[   17.919678] devtmpfs: initialized
[   17.922376] NET: Registered protocol family 16
[   17.923352] Kirkwood: MV88F6281-A1, TCLK=166666667.
[   17.923374] Feroceon L2: Enabling L2
[   17.923424] Feroceon L2: Cache support initialised.
[   17.924180] initial MPP regs: 01111111 11113322 00001111 00100000 00000000 00000000 00000000
[   17.924223]   final MPP regs: 01111111 11113322 00001111 00000000 00000000 00000000 00000000
[   17.925415] Kirkwood PCIe port 0:
[   17.925426] link up
[   17.925437] PCI: bus0 uses PCIe port 0
[   17.925649] pci 0000:00:00.0: [11ab:6281] type 0 class 0x000580
[   17.925691] pci 0000:00:00.0: reg 10: [mem 0xd0000000-0xd00fffff 64bit pref]
[   17.925715] pci 0000:00:00.0: reg 18: [mem 0x00000000-0x07ffffff]
[   17.925778] pci 0000:00:00.0: supports D1 D2
[   17.925837] pci 0000:00:01.0: [1b73:1009] type 0 class 0x000c03
[   17.925876] pci 0000:00:01.0: reg 10: [mem 0x00000000-0x0000ffff 64bit]
[   17.925909] pci 0000:00:01.0: reg 18: [mem 0x00000000-0x00000fff 64bit]
[   17.925942] pci 0000:00:01.0: reg 20: [mem 0x00000000-0x00000fff 64bit]
[   17.926010] pci 0000:00:01.0: supports D1
[   17.926025] pci 0000:00:01.0: PME# supported from D0 D1 D3hot
[   17.926043] pci 0000:00:01.0: PME# disabled
[   17.926116] PCI: bus0: Fast back to back transfers disabled
[   17.926548] pci 0000:00:01.0: BAR 0: assigned [mem 0xe0000000-0xe000ffff 64bit]
[   17.926582] pci 0000:00:01.0: BAR 0: set to [mem 0xe0000000-0xe000ffff 64bit] (PCI address [0xe0000000-0xe000ffff])
[   17.926607] pci 0000:00:01.0: BAR 2: assigned [mem 0xe0010000-0xe0010fff 64bit]
[   17.926635] pci 0000:00:01.0: BAR 2: set to [mem 0xe0010000-0xe0010fff 64bit] (PCI address [0xe0010000-0xe0010fff])
[   17.926659] pci 0000:00:01.0: BAR 4: assigned [mem 0xe0011000-0xe0011fff 64bit]
[   17.926687] pci 0000:00:01.0: BAR 4: set to [mem 0xe0011000-0xe0011fff 64bit] (PCI address [0xe0011000-0xe0011fff])
[   17.933430] bio: create slab <bio-0> at 0
[   17.933994] vgaarb: loaded
[   17.934385] SCSI subsystem initialized
[   17.934610] libata version 3.00 loaded.
[   17.934909] usbcore: registered new interface driver usbfs
[   17.935038] usbcore: registered new interface driver hub
[   17.935190] usbcore: registered new device driver usb
[   17.936008] Switching to clocksource orion_clocksource
[   17.936465] Switched to NOHz mode on CPU #0
[   17.949082] FS-Cache: Loaded
[   17.963194] NET: Registered protocol family 2
[   17.963539] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[   17.964590] TCP established hash table entries: 4096 (order: 3, 32768 bytes)
[   17.964739] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[   17.964819] TCP: Hash tables configured (established 4096 bind 4096)
[   17.964833] TCP reno registered
[   17.964849] UDP hash table entries: 256 (order: 0, 4096 bytes)
[   17.964883] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[   17.965212] NET: Registered protocol family 1
[   17.965293] PCI: CLS 32 bytes, default 32
[   17.966164] audit: initializing netlink socket (disabled)
[   17.966214] type=2000 audit(0.080:1): initialized
[   18.092982] VFS: Disk quotas dquot_6.5.2
[   18.093381] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[   18.096542] JFFS2 version 2.2. (NAND) \xffffffc2\xffffffa9 2001-2006 Red Hat, Inc.
[   18.098446] aufs 3.1-20111107
[   18.098474] msgmni has been set to 239
[   18.100361] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[   18.100385] io scheduler noop registered
[   18.100397] io scheduler deadline registered
[   18.100508] io scheduler cfq registered
[   18.100605] io scheduler bfq registered (default)
[   18.100727] mv_xor_shared mv_xor_shared.0: Marvell shared XOR driver
[   18.100776] mv_xor_shared mv_xor_shared.1: Marvell shared XOR driver
[   18.136127] mv_xor mv_xor.0: Marvell XOR: ( xor cpy )
[   18.176137] mv_xor mv_xor.1: Marvell XOR: ( xor fill cpy )
[   18.216119] mv_xor mv_xor.2: Marvell XOR: ( xor cpy )
[   18.256121] mv_xor mv_xor.3: Marvell XOR: ( xor fill cpy )
[   18.263411] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[   18.284349] serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
[   18.284527] console [ttyS0] enabled
[   18.293301] brd: module loaded
[   18.297733] loop: module loaded
[   18.298210] sata_mv sata_mv.0: version 1.28
[   18.298383] sata_mv sata_mv.0: slots 32 ports 2
[   18.300896] scsi0 : sata_mv
[   18.301479] scsi1 : sata_mv
[   18.301836] ata1: SATA max UDMA/133 irq 21
[   18.301853] ata2: SATA max UDMA/133 irq 21
[   18.302853] ONFI flash detected
[   18.302976] ONFI param page 0 valid
[   18.302995] NAND device: Manufacturer ID: 0xad, Chip ID: 0xf1 (Hynix H27U1G8F2BTR-BC)
[   18.303025] Scanning device for bad blocks
[   18.385310] 4 cmdlinepart partitions found on MTD device orion_nand
[   18.385327] Creating 4 MTD partitions on "orion_nand":
[   18.385357] 0x000000000000-0x000000100000 : "u-boot"
[   18.385849] 0x000000100000-0x000000500000 : "uImage"
[   18.386315] 0x000000500000-0x000002500000 : "rootfs"
[   18.386767] 0x000002500000-0x000008000000 : "data"
[   18.388328] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[   18.388479] mv643xx_eth smi: probed
[   18.391366] mv643xx_eth_port mv643xx_eth_port.0: eth0: port 0 with MAC address 02:50:43:12:86:1f
[   18.392749] mv643xx_eth_port mv643xx_eth_port.1: eth1: port 0 with MAC address 00:00:00:00:00:00
[   18.392995] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[   18.393074] orion-ehci orion-ehci.0: Marvell Orion EHCI
[   18.393196] orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
[   18.416088] orion-ehci orion-ehci.0: irq 19, io mem 0xf1050000
[   18.436061] orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
[   18.436896] hub 1-0:1.0: USB hub found
[   18.436928] hub 1-0:1.0: 1 port detected
[   18.437641] PCI: enabling device 0000:00:01.0 (0140 -> 0142)
[   18.437716] xhci_hcd 0000:00:01.0: xHCI Host Controller
[   18.437774] xhci_hcd 0000:00:01.0: new USB bus registered, assigned bus number 2
[   18.438590] xhci_hcd 0000:00:01.0: irq 9, io mem 0xe0000000
[   18.438618] xhci_hcd 0000:00:01.0: Failed to enable MSI-X
[   18.443995] xhci_hcd 0000:00:01.0: failed to allocate MSI entry
[   18.450521] xHCI xhci_add_endpoint called for root hub
[   18.450537] xHCI xhci_check_bandwidth called for root hub
[   18.450759] hub 2-0:1.0: USB hub found
[   18.450792] hub 2-0:1.0: 2 ports detected
[   18.451299] xhci_hcd 0000:00:01.0: xHCI Host Controller
[   18.451343] xhci_hcd 0000:00:01.0: new USB bus registered, assigned bus number 3
[   18.451922] xHCI xhci_add_endpoint called for root hub
[   18.451937] xHCI xhci_check_bandwidth called for root hub
[   18.452142] hub 3-0:1.0: USB hub found
[   18.452173] hub 3-0:1.0: 2 ports detected
[   18.452767] Initializing USB Mass Storage driver...
[   18.452967] usbcore: registered new interface driver usb-storage
[   18.452981] USB Mass Storage support registered.
[   18.453157] usbcore: registered new interface driver libusual
[   18.453632] mousedev: PS/2 mouse device common for all mice
[   18.656082] ata1: SATA link down (SStatus 0 SControl F300)
[   19.006071] ata2: SATA link down (SStatus 0 SControl F300)
[   19.456068] rtc-mv rtc-mv: internal RTC not ticking
[   19.461172] sdhci: Secure Digital Host Controller Interface driver
[   19.461186] sdhci: Copyright(c) Pierre Ossman
[   19.461519] mmc0: mvsdio driver initialized, using GPIO 29 for card detection
[   19.461580] sdhci-pltfm: SDHCI platform and OF driver helper
[   19.461914] usbcore: registered new interface driver r8712u
[   19.463357] GRE over IPv4 demultiplexor driver
[   19.463561] TCP cubic registered
[   19.463577] NET: Registered protocol family 17
[   19.463699] lib80211: common routines for IEEE802.11 drivers
[   19.463716] lib80211_crypt: registered algorithm 'NULL'
[   19.463729] Registering the dns_resolver key type
[   19.463810] Gating clock of unused units
[   19.463822] before: 0x00dfc3fd
[   19.463833]  after: 0x00cfc3dd
[   19.464622] registered taskstats version 1
[   19.465753] console [netcon0] enabled
[   19.465766] netconsole: network logging started
[   19.465861] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[   19.472558] Waiting 10sec before mounting root device...
[   19.645883] mmc0: host does not support reading read-only switch. assuming write-enable.
[   19.651664] mmc0: new high speed SD card at address e624
[   19.652135] mmcblk0: mmc0:e624 SU02G 1.84 GiB
[   19.658059]  mmcblk0: p1
[   29.478414] EXT4-fs (mmcblk0p1): mounting ext3 file system using the ext4 subsystem
[   29.532344] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Opts: (null)
[   29.532412] VFS: Mounted root (ext3 filesystem) on device 179:1.
[   29.535328] devtmpfs: mounted
[   29.536168] Freeing init memory: 172K
[   31.026175] udevd[156]: starting version 175
[   34.045742] EXT4-fs (mmcblk0p1): re-mounted. Opts: (null)
[   34.457574] EXT4-fs (mmcblk0p1): re-mounted. Opts: errors=remount-ro
[   42.705604] mv643xx_eth_port mv643xx_eth_port.0: eth0: link up, 100 Mb/s, full duplex, flow control disabled
root@debian:~#

Re: Help Recovering Pogoplug v4 with serial console and tftp
September 22, 2013 03:48AM
skakz,

This seems to be dmesg from a different box. Definitely not Pogo V4!

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 22, 2013 04:21AM
why is that?

label under the device says:
Model Pogo-V4-A3-A1
Product Pogoplug Series 4

root@debian:~# cat /proc/cpuinfo
Processor       : Feroceon 88FR131 rev 1 (v5l)
BogoMIPS        : 795.44
Features        : swp half thumb fastmult edsp
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant     : 0x2
CPU part        : 0x131
CPU revision    : 1

Hardware        : Marvell OpenRD Ultimate Board
Revision        : 0000
Serial          : 0000000000000000
root@debian:~#
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 22, 2013 04:51AM
skakz,

Looks like you also need to set machid so that it is recognized as the Pogo V4.

fw_setenv arcNumber 3960
fw_setenv machid F78


Also, the kernel is Arch, not Debian, either! are you sure you're booting the right rootfs?
[    0.000000] Linux version 3.1.10-22-ARCH (nobody@) (gcc version 4.7.2 (GCC) ) #1 PREEMPT Fri Jun 28 21:43:02 CDT 2013

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 22, 2013 05:32AM
yeah! sorry about that! I forgot I changed the kernel:
here it is dmsg for the debian kernel:


root@debian:~# dmesg
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.10.4-kirkwood-tld-1 (root@tldDebian) (gcc version 4.6.3 (Debian 4.6.3-14) ) #1 PREEMPT Tue Aug 20 23:25:42 PDT 2013
[    0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053977
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] Machine: Pogoplug V4
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] On node 0 totalpages: 32768
[    0.000000] free_area_init_node: node 0, pgdat c05dbf50, node_mem_map c0648000
[    0.000000]   Normal zone: 256 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 32768 pages, LIFO batch:7
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/mmcblk0p1 rootdelay=10 rootfstype=ext3 mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
[    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: 117144k/117144k available, 13928k 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 - 0xc0561b44   (5479 kB)
[    0.000000]       .init : 0xc0562000 - 0xc05909bc   ( 187 kB)
[    0.000000]       .data : 0xc0592000 - 0xc05de6d0   ( 306 kB)
[    0.000000]        .bss : 0xc05de6d0 - 0xc06470f4   ( 419 kB)
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] NR_IRQS:114
[    0.000000] sched_clock: 32 bits at 166MHz, resolution 5ns, wraps every 25769ms
[    0.000000] Console: colour dummy device 80x30
[   18.043696] Calibrating delay loop... 795.44 BogoMIPS (lpj=3977216)
[   18.133407] pid_max: default: 32768 minimum: 301
[   18.133561] Security Framework initialized
[   18.133656] Mount-cache hash table entries: 512
[   18.134581] Initializing cgroup subsys devices
[   18.134617] Initializing cgroup subsys freezer
[   18.134636] Initializing cgroup subsys net_cls
[   18.134652] Initializing cgroup subsys blkio
[   18.134784] CPU: Testing write buffer coherency: ok
[   18.135367] Setting up static identity map for 0xc03e88c8 - 0xc03e8904
[   18.138115] devtmpfs: initialized
[   18.141702] pinctrl core: initialized pinctrl subsystem
[   18.142195] regulator-dummy: no parameters
[   18.142664] NET: Registered protocol family 16
[   18.143338] DMA: preallocated 256 KiB pool for atomic coherent allocations
[   18.144450] Kirkwood: MV88F6281-A1, TCLK=166666667.
[   18.144497] Feroceon L2: Enabling L2
[   18.144549] Feroceon L2: Cache support initialised.
[   18.145028] initial MPP regs: 01111111 11113322 00001111 00100000 00000000 00000000 00000000
[   18.145069]   final MPP regs: 01111111 11113322 00001111 00000000 00000000 00000000 00000000
[   18.145104] orion_gpio_is_valid: invalid GPIO 10
[   18.145115] orion_gpio_is_valid: invalid GPIO 10
[   18.145125] POGOPLUGV4: failed to setup USB VBUS GPIO
[   18.145945] Kirkwood PCIe port 0: link up
[   18.145961] PCI: bus0 uses PCIe port 0
[   18.146114] PCI host bridge to bus 0000:00
[   18.146143] pci_bus 0000:00: root bus resource [mem 0xe0000000-0xe7ffffff]
[   18.146162] pci_bus 0000:00: root bus resource [io  0x1000-0xffff]
[   18.146180] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
[   18.146231] pci 0000:00:00.0: [11ab:6281] type 00 class 0x058000
[   18.146272] pci 0000:00:00.0: reg 10: [mem 0xd0000000-0xd00fffff 64bit pref]
[   18.146296] pci 0000:00:00.0: reg 18: [mem 0x00000000-0x07ffffff]
[   18.146364] pci 0000:00:00.0: supports D1 D2
[   18.146537] pci 0000:00:01.0: [1b73:1009] type 00 class 0x0c0330
[   18.146580] pci 0000:00:01.0: reg 10: [mem 0x00000000-0x0000ffff 64bit]
[   18.146614] pci 0000:00:01.0: reg 18: [mem 0x00000000-0x00000fff 64bit]
[   18.146647] pci 0000:00:01.0: reg 20: [mem 0x00000000-0x00000fff 64bit]
[   18.146717] pci 0000:00:01.0: supports D1
[   18.146734] pci 0000:00:01.0: PME# supported from D0 D1 D3hot
[   18.146916] PCI: bus0: Fast back to back transfers disabled
[   18.146940] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 00
[   18.146993] pci 0000:00:01.0: BAR 0: assigned [mem 0xe0000000-0xe000ffff 64bit]
[   18.147028] pci 0000:00:01.0: BAR 2: assigned [mem 0xe0010000-0xe0010fff 64bit]
[   18.147059] pci 0000:00:01.0: BAR 4: assigned [mem 0xe0011000-0xe0011fff 64bit]
[   18.151370] bio: create slab <bio-0> at 0
[   18.151975] vgaarb: loaded
[   18.152155] usbcore: registered new interface driver usbfs
[   18.152227] usbcore: registered new interface driver hub
[   18.152364] usbcore: registered new device driver usb
[   18.153250] Switching to clocksource orion_clocksource
[   18.173156] NET: Registered protocol family 2
[   18.174123] TCP established hash table entries: 1024 (order: 1, 8192 bytes)
[   18.174177] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[   18.174206] TCP: Hash tables configured (established 1024 bind 1024)
[   18.174306] TCP: reno registered
[   18.174325] UDP hash table entries: 256 (order: 0, 4096 bytes)
[   18.174357] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[   18.174633] NET: Registered protocol family 1
[   18.175075] RPC: Registered named UNIX socket transport module.
[   18.175092] RPC: Registered udp transport module.
[   18.175102] RPC: Registered tcp transport module.
[   18.175112] RPC: Registered tcp NFSv4.1 backchannel transport module.
[   18.175162] PCI: enabling device 0000:00:01.0 (0140 -> 0142)
[   18.175267] PCI: CLS 32 bytes, default 32
[   18.175535] Unpacking initramfs...
[   18.969186] Freeing initrd memory: 6324K (c1101000 - c172e000)
[   18.969335] NetWinder Floating Point Emulator V0.97 (double precision)
[   18.970047] audit: initializing netlink socket (disabled)
[   18.970111] type=2000 audit(0.910:1): initialized
[   18.971263] VFS: Disk quotas dquot_6.5.2
[   18.971335] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[   18.971841] NFS: Registering the id_resolver key type
[   18.971922] Key type id_resolver registered
[   18.971936] Key type id_legacy registered
[   18.971962] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[   18.972185] jffs2: version 2.2. (NAND) (SUMMARY)  \xffffffc2\xffffffa9 2001-2006 Red Hat, Inc.
[   18.972478] msgmni has been set to 241
[   18.975244] alg: No test for stdrng (krng)
[   18.975376] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[   18.975392] io scheduler noop registered
[   18.975404] io scheduler deadline registered
[   18.975434] io scheduler cfq registered (default)
[   18.975628] mv_xor mv_xor.0: Marvell shared XOR driver
[   19.013362] mv_xor mv_xor.0: Marvell XOR: ( xor cpy )
[   19.053361] mv_xor mv_xor.0: Marvell XOR: ( xor fill cpy )
[   19.053505] mv_xor mv_xor.1: Marvell shared XOR driver
[   19.093362] mv_xor mv_xor.1: Marvell XOR: ( xor cpy )
[   19.133358] mv_xor mv_xor.1: Marvell XOR: ( xor fill cpy )
[   19.133717] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[   19.154448] serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
[   19.717368] console [ttyS0] enabled
[   19.722238] ONFI param page 0 valid
[   19.725755] ONFI flash detected
[   19.728889] NAND device: Manufacturer ID: 0xad, Chip ID: 0xf1 (Hynix H27U1G8F2BTR-BC), 128MiB, page size: 2048, OOB size: 64
[   19.740089] Scanning device for bad blocks
[   19.857080] 4 cmdlinepart partitions found on MTD device orion_nand
[   19.863341] Creating 4 MTD partitions on "orion_nand":
[   19.868475] 0x000000000000-0x000000100000 : "u-boot"
[   19.873782] 0x000000100000-0x000000500000 : "uImage"
[   19.879005] 0x000000500000-0x000002500000 : "rootfs"
[   19.884319] 0x000002500000-0x000008000000 : "data"
[   19.889881] m25p80 spi0.0: m25p05-nonjedec (64 Kbytes)
[   19.903704] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[   19.910219] ehci-pci: EHCI PCI platform driver
[   19.914792] ehci-orion: EHCI orion driver
[   19.918878] orion-ehci orion-ehci.0: EHCI Host Controller
[   19.924348] orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
[   19.932045] orion-ehci orion-ehci.0: irq 19, io mem 0xf1050000
[   19.953331] orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
[   19.959326] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[   19.966144] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[   19.973366] usb usb1: Product: EHCI Host Controller
[   19.978228] usb usb1: Manufacturer: Linux 3.10.4-kirkwood-tld-1 ehci_hcd
[   19.984930] usb usb1: SerialNumber: orion-ehci.0
[   19.990112] hub 1-0:1.0: USB hub found
[   19.993903] hub 1-0:1.0: 1 port detected
[   19.998406] mousedev: PS/2 mouse device common for all mice
[   21.013331] rtc-mv rtc-mv: internal RTC not ticking
[   21.018331] i2c /dev entries driver
[   21.021917] cpuidle: using governor ladder
[   21.026026] cpuidle: using governor menu
[   21.030190] leds-gpio leds-gpio: pins are not configured from the driver
[   21.037213] drop_monitor: Initializing network drop monitor service
[   21.043894] TCP: cubic registered
[   21.047201] NET: Registered protocol family 17
[   21.051770] Key type dns_resolver registered
[   21.056673] registered taskstats version 1
[   21.061967] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[   21.069435] Freeing unused kernel memory: 184K (c0562000 - c0590000)
[   21.163659] udevd[55]: starting version 175
[   21.300573] xhci_hcd 0000:00:01.0: xHCI Host Controller
[   21.322524] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[   21.387015] xhci_hcd 0000:00:01.0: new USB bus registered, assigned bus number 2
[   21.445507] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[   21.452284] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[   21.489990] libphy: orion_mdio_bus: probed
[   21.518522] SCSI subsystem initialized
[   21.531853] mvsdio mvsdio: no pins associated
[   21.549555] usb usb2: Product: xHCI Host Controller
[   21.582706] usb usb2: Manufacturer: Linux 3.10.4-kirkwood-tld-1 xhci_hcd
[   21.589567] mvsdio mvsdio: using GPIO 27 for card detection
[   21.598394] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 02:50:43:12:86:1f
[   21.633866] libata version 3.00 loaded.
[   21.636633] usb usb2: SerialNumber: 0000:00:01.0
[   21.651672] sata_mv sata_mv.0: version 1.28
[   21.651765] sata_mv sata_mv.0: cannot get optional clkdev
[   21.666069] mmc0: host does not support reading read-only switch. assuming write-enable.
[   21.675742] xHCI xhci_add_endpoint called for root hub
[   21.675761] xHCI xhci_check_bandwidth called for root hub
[   21.675967] hub 2-0:1.0: USB hub found
[   21.679734] hub 2-0:1.0: 2 ports detected
[   21.687992] mmc0: new high speed SD card at address e624
[   21.698934] sata_mv sata_mv.0: slots 32 ports 1
[   21.724708] xhci_hcd 0000:00:01.0: xHCI Host Controller
[   21.729944] xhci_hcd 0000:00:01.0: new USB bus registered, assigned bus number 3
[   21.738682] scsi0 : sata_mv
[   21.741770] ata1: SATA max UDMA/133 irq 21
[   21.787708] usb usb3: New USB device found, idVendor=1d6b, idProduct=0003
[   21.813717] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[   21.820924] usb usb3: Product: xHCI Host Controller
[   21.853623] usb usb3: Manufacturer: Linux 3.10.4-kirkwood-tld-1 xhci_hcd
[   21.860315] usb usb3: SerialNumber: 0000:00:01.0
[   21.869852] xHCI xhci_add_endpoint called for root hub
[   21.869874] xHCI xhci_check_bandwidth called for root hub
[   21.870344] hub 3-0:1.0: USB hub found
[   21.874225] mmcblk0: mmc0:e624 SU02G 1.84 GiB
[   21.880254] hub 3-0:1.0: 2 ports detected
[   21.889198]  mmcblk0: p1
[   22.113366] ata1: SATA link down (SStatus 0 SControl F300)
[   32.339996] EXT3-fs (mmcblk0p1): mounted filesystem with ordered data mode
[   32.346922] kjournald starting.  Commit interval 5 seconds
[   33.772655] udevd[238]: starting version 175
[   34.223772] input: gpio-keys as /devices/platform/gpio-keys/input/input0
[   34.452462] alg: hash: Test 1 failed for mv-hmac-sha1
[   34.460600] 00000000: 0c aa 9f d5 37 c3 79 3a 91 d9 21 5f 42 2b 2c 24
[   34.474504] 00000010: b7 c3 16 0c
[   34.483701] orion_wdt: Initial timeout 25 sec
[   36.053259] EXT3-fs (mmcblk0p1): using internal journal
[   41.716613] NET: Registered protocol family 10
[   41.936491] mv643xx_eth_port mv643xx_eth_port.0 eth0: link down
[   41.942584] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   43.591560] mv643xx_eth_port mv643xx_eth_port.0 eth0: link up, 100 Mb/s, full duplex, flow control disabled
[   43.601366] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
root@debian:~#

Re: Help Recovering Pogoplug v4 with serial console and tftp
September 22, 2013 03:56PM
skakz,

Your dmesg shows the SATA port. Have you tried to plug in your HDD after Debian is running? See after you do that what your dmesg will say, and if you can see the HDD.

I can help you with the command to reflash the orginal NAND, but since you don't have UART booting working, it is risky :)

BTW, I could not boot mine with UART, either. There is something strange with this Pogo V4 (the bootROM is 1.21), it is not working for me. According to Davygravy it does work, but I have not seen anybody with the Pogo V4 reported that they can boot with UART.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 23, 2013 01:05AM
yes I've, but the hard drive doesn't even turn on. (The hard drive works fine on other computers).

let's flash the original fw. Don't worry, I'll take full responsibility. Then I still have my trusty indistruttibile dockstar!!
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 25, 2013 12:25AM
skakz,

I did not forget about this! been pretty busy lately. Will post soon.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 25, 2013 01:08AM
Don't worry bodhi. Take your time! I don't want to rush things. thank you!!
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 26, 2013 12:17AM
skakz,

Before doing the flash, you can try UART booting as described below. Yes it does work :) I recalled dhead's experience with the Pogo Mobile. Apparently, this Pogo V4 box and its cousin the Pogo Mobile has the same quirk. We have to try to run kwboot many times before it actually takes the handshake.

1. First, boot up both boxes, the one that you are going to run kwboot, and the Pogo V4

2. On the Dockstar side (I'm using Dockstar as example) run this:

kwboot -t -B 115200 /dev/ttyUSB0 -b uboot.nandpogoV4-MMC-mtdparts-noSATA.kwb -p

kwboot will spin forever waiting for the handshake.

3. Switch to the Pogo V4 side, and reboot (or power on if it's off)
shutdown -r now

4. Back to the Dockstar, wait for the handshake, which most likely will not happen. After a few seconds, control-C to terminate, and then run it again. You will see "Bad Xmodem message". This is expected.

5. Repeatly control-C to terminate kwboot and run the same command again. I tried 21 times before the handshake occured!!!

6. If you have ALARM uBoot, after the uBoot image is loaded by kwboot, you will see a CRC error and uBoot reports that it will use the default envs. This is OK, because Davy's uBoot expects the envs at a different location than the stock uBoot. And this is important: don't do saveenv. To restart, just type a reset, and the box will restart and the uBoot in mtd0 will start booting.

7. If you have Davy's uBoot, then it will execute normally, you can continue booting with boot command.

It is good to verify that UART booting does work so you can have a peace of mind before messing with NAND :)

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 1 time(s). Last edit at 09/26/2013 12:18AM by bodhi.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 26, 2013 02:08AM
This post was updated 09/26/2013 to correct the nandwrite command
See this post for explanation:
http://forum.doozan.com/read.php?3,13603,13675#msg-13675

This post was updated 09/28/2013 to include hints about registering for original Pogoplug services after reflash the mtd backups (thanks spooky 2012).

--------

My original Pogo V4 mtd backups (mtd0 to mtd4):

Download at Dropbox:
pogoplug_v4_mtd_original.tar.bz2
md5: 064a298c89ae5a1b207061e11b401930

Restoring original NAND:

Since installing Davy's uBoot image only involved mtd0, so mtd1 to mtd4 were unchanged. Therefore to restore stock NAND, only mtd0 needs to be restored in Linux as:

# flash_erase /dev/mtd0 0 16
# nandwrite -on /dev/mtd0 mtd0


The 2nd mtd0 parameter is the name of the mtd0 backup file. 16 blocks indicate that the size of mtd0 is 2MB. Each block is 128K. But before trying to restore, you should check dmesg to see if there is any bad block, and whether the bad block is in mtd0 or not. If there is bad block in mtd0, the reflash commands won't work.

I was calculating the numbers and it dawn on me that we don't need to restore all 5 mtd partitions, but only needs to restore mtd0.

Note on ethaddr:

After reboot successfully, remember change the uBoot env ethaddr to your correct one (printed on the Pogoplug V4 label), using blparam.
/usr/local/cloudengines/bin/blparam ethaddr='xx:xx:xx:xx:xx:xx'

Note on Pogoplug services:

If you intent to restore Pogoplug services after reflash the orginal firmware, then you will need to change the uBoot envs ethaddr and cesvcid to the correct numbers on the Pogo V4 label. Use blparam to change it.

/usr/local/cloudengines/bin/blparam ethaddr='xx:xx:xx:xx:xx:xx' 
/usr/local/cloudengines/bin/blparam cesvcid='XXXXXXXXX'

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 4 time(s). Last edit at 09/28/2013 02:55AM by bodhi.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 26, 2013 02:27AM
bodhi!! thanks! It worked!!
I managed to send and boot "uboot.nandpogoV4-MMC-mtdparts-noSATA.kwb".

However I can't boot from ALARM uboot (downloaded from http://archlinuxarm.org/os/ppv4/uboot.bin.gz ).
I'm using kwboot without the -p option but I got everytime the "Bad message" error.

thanks


edit:
ok i'll try with your mtd0!

edit2:
clearly I don't know what I'm doing..
I don't have to use your mtd0 with kwboot, I have to flash it in the nand right?



Edited 2 time(s). Last edit at 09/26/2013 02:39AM by skakz.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 26, 2013 02:43AM
Yes, log into Debian and flash from command line. mtd0 backup file should be in the current directory where you reflash.

So boot the box as usual into linux, and go to the directory where you have mtd0 backup file.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 1 time(s). Last edit at 09/26/2013 02:46AM by bodhi.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 26, 2013 03:21AM
actually I think I screwed up the rootfs too (I don't know how.. I tought that it was read-only..) maybe the kernel is ok (maybe).

well.
dmseg is not reporting any bad blocks. I've done the flash_erase command but:

root@debian:~# ./flash_erase /dev/mtd0 0 16
Erase Total 16 Units
Performing Flash Erase of length 131072 at offset 0x100000
MTD Erase failure: Invalid argument
root@debian:~#

I thought it was due to wrong mtdparts in uboot because I had:
mtdparts 'mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)'

but I think it should be
mtdparts=mtdparts=orion_nand:2M(u-boot),3M(uImage),3M(uImage2),8M(failsafe),112M(root)

so I rebooted to change this in uboot... but now I don't have uBoot anymore.. doh!

so now I'm booting from UART....
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 26, 2013 03:42AM
:) Ok then you should reflash Davy's uBoot using tftp after you've booted with UART:

Put the uBoot image uboot.nandpogoV4-MMC-mtdparts-noSATA.kwb in tftproot directory and then
Pogov4> tftp 0x800000 uboot.nandpogoV4-MMC-mtdparts-noSATA.kwb
Pogov4> nand erase 0x0 0x80000
Pogov4> nand write.e 0x800000 0x0 0x80000

After that, follow the rest of this Pogo Mobile post to get a good set of envs, and adjust mtdparts back to 5 mtds:
http://forum.doozan.com/read.php?2,11663

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 26, 2013 03:48AM
Ok,

I managed to boot from UART with the Davy's uboot. I changed the mdparts and booted into debian.
I've flashed your mtd0 backup, this is the output:

root@debian:~# ./flash_erase /dev/mtd0 0 16
Erase Total 16 Units
Performing Flash Erase of length 131072 at offset 0x1e0000 done
root@debian:~#
root@debian:~#
root@debian:~# ./nandwrite /dev/mtd0 mtd0
Image 2162688 bytes, NAND page 2048 bytes, OOB area 2048 bytes, device size 2097152 bytes
Input file does not fit into device: Success
Data was only partially written due to error
: Success
root@debian:~#

so it should be all OK, but when I reboot I cant see nothing on the serial console... maybe I've to set some env first ???


sorry, now I'm reading your last message.. should I first flash the Davy's uboot to nand??

edit:

ouch I didn't seen this
Input file does not fit into device: Success

can't be anything good...



Edited 1 time(s). Last edit at 09/26/2013 03:52AM by skakz.
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 26, 2013 04:01AM
skakz,

I think you should flash Davy's uBoot back to NAND with tftp and setup good envs like I mentioned above to boot normally with either USB or SD card. I'll double check the backup mtds.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 26, 2013 04:09AM
ok, I'm goind to restore Davy's uboot and env.. take your time! I have no hurry
Re: Help Recovering Pogoplug v4 with serial console and tftp
September 27, 2013 12:29AM
skakz,

I looked at my log for the nanddump. Yes :) the nanddump was done with oob and noecc:
/tmp # ./nanddump -nf usb/mtd0 /dev/mtd0
So to restore with nandwrite, we need -no option to indicate that the mtd0 file was dumped that way.


To restate the steps:

1. make sure the mtparts are correct
# fw_printenv mtdparts
mtdparts=mtdparts=orion_nand:2M(u-boot),3M(uImage),3M(uImage2),8M(failsafe),112M(root)


2. Erase mtd0:
#flash_erase /dev/mtd0 0 16
Erase Total 16 Units
Performing Flash Erase of length 131072 at offset 0x1e0000 done

3. Write mtd0 backup file back to NAND:
# nandwrite -on /dev/mtd0 mtd0
Writing data to block 0 at offset 0x0
Writing data to block 1 at offset 0x20000
Writing data to block 2 at offset 0x40000
Writing data to block 3 at offset 0x60000
Writing data to block 4 at offset 0x80000
Writing data to block 5 at offset 0xa0000
Writing data to block 6 at offset 0xc0000
Writing data to block 7 at offset 0xe0000
Writing data to block 8 at offset 0x100000
Writing data to block 9 at offset 0x120000
Writing data to block 10 at offset 0x140000
Writing data to block 11 at offset 0x160000
Writing data to block 12 at offset 0x180000
Writing data to block 13 at offset 0x1a0000
Writing data to block 14 at offset 0x1c0000
Writing data to block 15 at offset 0x1e0000

If you need to restore mtd1 to mtd4, then calculate the number of blocks for each mtd (i.e. a block is 128K, 1M is 8 blocks). You can post the commands here before starting so we can do sanity check.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: