Welcome! Log In Create A New Profile

Advanced

Pogo dead after uBoot update?

Posted by Jörg 
Jörg
Pogo dead after uBoot update?
April 04, 2017 02:14PM
Hi all,

I wanted to update my Pogoplug (pink E02) from "Debian-3.17.0-kirkwood" to the latest version. Before installing new USB Debian rootfs I wanted to update uBoot to actual version.
I used following instructions from a german forum:
cd /tmp
wget -c https://www.dropbox.com/s/0jkzjbryiz9qmbw/uboot.2016.05-tld-1.pogo_e02.bodhi.tar
wget -c https://www.dropbox.com/s/4smmw2wr4ugayz9/uboot.2016.05-tld-1.environment.bodhi.tar
tar -xf uboot.2016.05-tld-1.pogo_e02.bodhi.tar
tar -xf uboot.2016.05-tld-1.environment.bodhi.tar

# flash new uboot:
flash_erase /dev/mtd0 0 4
nandwrite /dev/mtd0 uboot.2016.05-tld-1.pogo_e02.mtd0.kwb

# flash new uboot envs:
#(The MAC address will be set to a valid randomly generated local address.
# you can change it later in debian)
/usr/sbin/flash_erase /dev/mtd0 0xc0000 1
/usr/sbin/nandwrite -s 786432 /dev/mtd0 uboot.2016.05-tld-1.environment.img

The USB Thumb with old Debian rootfs was plugged in. After Pogo reboot the LED is fast blinking green (~20sec) and than changing to fast blinking orange. The LED do not stop blinking. If I detach the USB thumb the LED is also blinking like with it.
No chance to SSH. I have a USB-2-serial cable, but I am not sure what to do.
Any suggestions that might help me? Thanks!

Jörg
Re: Pogo dead after uBoot update?
April 04, 2017 05:26PM
Jörg,

The old rootfs you are using probably lacks some setup that could cause this booting problem. u-boot could not find the kernel files, or the kernel files were prepared improperly for the new default envs.

Mount this rootfs on another Linux box and get these information (assuming it is mounted at /media/sdb1):

ls -lart /media/sdb1/boot
ls -lart /media/sdb1/dts/*pogo*.dtb
e2label /dev/sdb1
mount
df -h

Using serial console is a much better way to troubleshoot, you should install it. Some information in the Wiki thread:
http://forum.doozan.com/read.php?2,23630

Scroll down to this section:

Quote

Serial Console & JTAG console

Repair Pogo E02 with Raspberry PI (JTAG) and OpenOCD
Serial Port connector - what are people using to make it work
Serial Console hookup - GoFlex Net (external link)
Serial Console hookup - Pogoplug E02 and Pogoplug Pro V3 (external link)
OSX Serial/Net Console
Use Phone Jack - Phone Jack Serial Console Pics
Adding serial connector to Pogoplug Mobile (external link)

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner
Jörg
Re: Pogo dead after uBoot update?
April 06, 2017 01:17PM
Hi bodhi,

after solving a driver problem with PL2303 usb-serial interface I have access to the Pogoplug.
Unfortunately I can't get your requested information.
/media/sda1/ should be correct because of I had a screenshot made at last installation.

PogoE02> ls -lart /media/sda1/boot
** Bad device specification -lart /media/sda1/boot **
PogoE02>

Any ideas?

Jörg
Re: Pogo dead after uBoot update?
April 06, 2017 02:03PM
You are in uboot. Try "boot" command then run those commands under Linux
Jörg
Re: Pogo dead after uBoot update?
April 06, 2017 02:55PM
Hi,

did not work. Following a screen dump:

U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:23:43 -0700)
Pogo E02

SoC:   Kirkwood 88F6281_A0
DRAM:  256 MiB
WARNING: Caches not enabled
NAND:  128 MiB
## Error: flags type check failure for "ipaddr" <= "192.168.0.xxx" (type: i)
himport_r: can't insert "ipaddr=192.168.0.xxx" into hash table
## Error: flags type check failure for "serverip" <= "192.168.0.yyy" (type: i)
himport_r: can't insert "serverip=192.168.0.yyy" into hash table
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
Hit any key to stop autoboot:  0
PogoE02> boot
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... EHCI timed out on TD - token=0x80008c80
unable to get device descriptor (error=-1)
3 USB Device(s) found
       scanning usb for storage devices...
Use USB retry period from the environment: 15 second(s)
1 Storage Device(s) found
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'

Partition Map for USB device 0  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
  1     2048            250067630       79392ce7-01     83
loading envs from usb 0 ...
** File not found /boot/uEnv.txt **
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'
running scan_disk ...
Scan device usb
device usb 0:1
** File not found /boot/uImage **
device usb 1:1
** Bad device usb 1 **
device usb 2:1
** Bad device usb 2 **
device usb 3:1
** Bad device usb 3 **
Scan device ide
Unknown command 'ide' - try 'help'
device ide 0:1
** Bad device ide 0 **
device ide 1:1
** Bad device ide 1 **
device ide 2:1
** Bad device ide 2 **
device ide 3:1
** Bad device ide 3 **
Scan device mmc
Unknown command 'mmc' - try 'help'
device mmc 0:1
** Bad device mmc 0 **
device mmc 1:1
** Bad device mmc 1 **
device mmc 2:1
** Bad device mmc 2 **
device mmc 3:1
** Bad device mmc 3 **
loading uImage ...
** File not found /boot/uImage **
loading uInitrd ...
** File not found /boot/uInitrd **
loading DTB /boot/dts/kirkwood-pogo_e02.dtb ...
** File not found /boot/dts/kirkwood-pogo_e02.dtb **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
PogoE02> ls -lart /media/sda1/boot
** Bad device specification -lart /media/sda1/boot **
PogoE02>
Re: Pogo dead after uBoot update?
April 06, 2017 09:36PM
Jörg Wrote:
-------------------------------------------------------
> Hi,
>
> did not work. Following a screen dump:
>
>
> U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:23:43 -0700
> )
> Pogo E02
> 
> SoC:   Kirkwood 88F6281_A0
> DRAM:  256 MiB
> WARNING: Caches not enabled
> NAND:  128 MiB
> ## Error: flags type check failure for "ipaddr" <=
> "192.168.0.xxx" (type: i)
> himport_r: can't insert "ipaddr=192.168.0.xxx" int
> o hash table
> ## Error: flags type check failure for "serverip"
> <= "192.168.0.yyy" (type: i)
> himport_r: can't insert "serverip=192.168.0.yyy" i
> nto hash table
> In:    serial
> Out:   serial
> Err:   serial
> Net:   egiga0
> ping - send ICMP ECHO_REQUEST to network host
> 
> Usage:
> ping pingAddress
> ping - send ICMP ECHO_REQUEST to network host
> 
> Usage:
> ping pingAddress
> ping - send ICMP ECHO_REQUEST to network host
> 
> Usage:
> ping pingAddress
> ping - send ICMP ECHO_REQUEST to network host
> 
> Usage:
> ping pingAddress
> ping - send ICMP ECHO_REQUEST to network host
> 
> Usage:
> ping pingAddress
> Hit any key to stop autoboot:  0
> PogoE02> boot
> starting USB...
> USB0:   USB EHCI 1.00
> scanning bus 0 for devices... EHCI timed out on TD
> - token=0x80008c80
> unable to get device descriptor (error=-1)
> 3 USB Device(s) found
> scanning usb for storage devices...
> Use USB retry period from the environment: 15 seco
> nd(s)
> 1 Storage Device(s) found
> Unknown command 'ide' - try 'help'
> Unknown command 'mmc' - try 'help'
> 
> Partition Map for USB device 0  --   Partition Typ
> e: DOS
> 
> Part    Start Sector    Num Sectors     UUID
> Type
> 1     2048            250067630       79392ce7-0
> 1     83
> loading envs from usb 0 ...
> ** File not found /boot/uEnv.txt **
> Unknown command 'ide' - try 'help'
> Unknown command 'mmc' - try 'help'
> running scan_disk ...
> Scan device usb
> device usb 0:1
> ** File not found /boot/uImage **
> device usb 1:1
> ** Bad device usb 1 **
> device usb 2:1
> ** Bad device usb 2 **
> device usb 3:1
> ** Bad device usb 3 **
> Scan device ide
> Unknown command 'ide' - try 'help'
> device ide 0:1
> ** Bad device ide 0 **
> device ide 1:1
> ** Bad device ide 1 **
> device ide 2:1
> ** Bad device ide 2 **
> device ide 3:1
> ** Bad device ide 3 **
> Scan device mmc
> Unknown command 'mmc' - try 'help'
> device mmc 0:1
> ** Bad device mmc 0 **
> device mmc 1:1
> ** Bad device mmc 1 **
> device mmc 2:1
> ** Bad device mmc 2 **
> device mmc 3:1
> ** Bad device mmc 3 **
> loading uImage ...
> ** File not found /boot/uImage **
> loading uInitrd ...
> ** File not found /boot/uInitrd **
> loading DTB /boot/dts/kirkwood-pogo_e02.dtb ...
> ** File not found /boot/dts/kirkwood-pogo_e02.dtb
> **
> Wrong Image Format for bootm command
> ERROR: can't get kernel image!
> PogoE02> ls -lart /media/sda1/boot
> ** Bad device specification -lart /media/sda1/boot
> **
> PogoE02>
>

You are execute the wrong commands! Let me write some instructions when I have some free minutes.

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner
Re: Pogo dead after uBoot update?
April 06, 2017 09:37PM
Jörg
Re: Pogo dead after uBoot update?
April 07, 2017 12:11AM
Hi bodhi,

my actual setup is as follows...
Pogoplug with plugged in 3.17.0-kirkwood rootfs. Serial console connection realized via PL2303-cable. Serial console is Putty on a Windows-10 PC.
If it is useful I could use an old laptop with Linux-Mint.

Jörg
Re: Pogo dead after uBoot update?
April 07, 2017 01:40AM
Jörg,

What I said above:

Quote

The old rootfs you are using probably lacks some setup that could cause this booting problem. u-boot could not find the kernel files, or the kernel files were prepared improperly for the new default envs.

Mount this rootfs on another Linux box and get these information (assuming it is mounted at /media/sdb1):

ls -lart /media/sdb1/boot
ls -lart /media/sdb1/dts/*pogo*.dtb
e2label /dev/sdb1
mount
df -h


These above commands are Linux shell commands (they are not u-boot commands). So Linux Mint is a must.

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner
Jörg
Re: Pogo dead after uBoot update?
April 07, 2017 09:28AM
Hi bodhi,

sorry for the misunderstanding. It is not a Linux Mint but an Ubuntu system.
Hopefully the below stuff is as you needed. Thanks for supporting.

root@joerg-ubuntu:/media/rootfs/boot# ls -lart
insgesamt 27900
drwxr-xr-x  2 root root    4096 Okt 18  2014 dts
-rwxr-xr-x  1 root root 2822168 Okt 22  2014 zImage-3.17.0-kirkwood-tld-1
-rwxr-xr-x  1 root root 2822168 Okt 22  2014 vmlinuz-3.17.0-kirkwood-tld-1
-rw-r--r--  1 root root 1991026 Okt 22  2014 System.map-3.17.0-kirkwood-tld-1
-rw-r--r--  1 root root  129088 Okt 22  2014 config-3.17.0-kirkwood-tld-1
-rw-r--r--  1 root root 6114271 Okt 25  2014 initrd.img-3.17.0-kirkwood-tld-1
-rw-r--r--  1 root root 2822232 Okt 25  2014 uImage.orig
-rw-r--r--  1 root root 6114335 Okt 25  2014 uInitrd
-rwxr-xr-x  1 root root 2832396 Jan  3  2015 zImage.fdt
-rw-r--r--  1 root root 2832460 Jan  3  2015 uImage
drwxr-xr-x  3 root root    4096 Jan  3  2015 .
drwxr-xr-x 22 root root    4096 Apr  4 20:38 ..
root@joerg-ubuntu:/media/rootfs/boot#

root@joerg-ubuntu:/media/rootfs/boot/dts# ls -lart *pogo*.dtb
-rw-r--r-- 1 root root 10228 Okt 10  2014 kirkwood-pogo_e02.dtb
-rw-r--r-- 1 root root 10028 Okt 17  2014 kirkwood-pogoplug_v4.dtb
root@joerg-ubuntu:/media/rootfs/boot/dts#

root@joerg-ubuntu:/media/rootfs# e2label /dev/sdb1
rootfs
root@joerg-ubuntu:/media/rootfs#

root@joerg-ubuntu:/media/rootfs# mount
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /home/joerg/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=joerg)
/dev/sdb1 on /media/rootfs type ext2 (rw,nosuid,nodev,uhelper=udisks)
root@joerg-ubuntu:/media/rootfs#

root@joerg-ubuntu:/media/rootfs# df -h
Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
/dev/sda1        36G    3,9G   30G   12% /
udev            238M    8,0K  238M    1% /dev
tmpfs            50M    804K   49M    2% /run
none            5,0M       0  5,0M    0% /run/lock
none            248M    128K  248M    1% /run/shm
/dev/sdb1       3,2G    1,2G  1,9G   38% /media/rootfs
root@joerg-ubuntu:/media/rootfs#
Re: Pogo dead after uBoot update?
April 07, 2017 02:51PM
Jörg,

On Ubuntu mount the drive and restore the original uImage:

cd /media/rootfs/boot
mv uImage uImage.pogo_e02
mv uImage.orig uImage
sync
sync

- Remove the drive, bring it to the Pogo E02. Plug in and power up.
- Monitor serial console but don't interrupt it, let it boot all the way into Debian.
- If it is not booted into Debian, then post the entire serial log here.


After it booted, you might consider changing the rootfs file system to Ext3 or Ext4. You are using Ext2, which is faster, but will get corrupted when the power goes down unintentionally while system is running, or if you forget to sync before shutdown. Ext3 and Ext4 will be resilient and not corrupted.

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner
Jörg
Re: Pogo dead after uBoot update?
April 08, 2017 01:40AM
Hi bodhi,

the Pogo do not boot into Debian. Do you think uboot on the Pogo is ok, problem is the rootfs? Maybe I should go back to start and make a completely new kirkwood install on the USB thumb. Thanks for the hint regarding the file system, ext4 is better than ext3?

U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:23:43 -0700)
Pogo E02

SoC:   Kirkwood 88F6281_A0
DRAM:  256 MiB
WARNING: Caches not enabled
NAND:  128 MiB
## Error: flags type check failure for "ipaddr" <= "192.168.0.xxx" (type: i)
himport_r: can't insert "ipaddr=192.168.0.xxx" into hash table
## Error: flags type check failure for "serverip" <= "192.168.0.yyy" (type: i)
himport_r: can't insert "serverip=192.168.0.yyy" into hash table
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
Hit any key to stop autoboot:  0
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... EHCI timed out on TD - token=0x80008c80
unable to get device descriptor (error=-1)
3 USB Device(s) found
       scanning usb for storage devices...
Use USB retry period from the environment: 15 second(s)
1 Storage Device(s) found
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'

Partition Map for USB device 0  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
  1     2048            250067630       79392ce7-01     83
loading envs from usb 0 ...
** File not found /boot/uEnv.txt **
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'
running scan_disk ...
Scan device usb
device usb 0:1
** File not found /boot/uImage **
device usb 1:1
** Bad device usb 1 **
device usb 2:1
** Bad device usb 2 **
device usb 3:1
** Bad device usb 3 **
Scan device ide
Unknown command 'ide' - try 'help'
device ide 0:1
** Bad device ide 0 **
device ide 1:1
** Bad device ide 1 **
device ide 2:1
** Bad device ide 2 **
device ide 3:1
** Bad device ide 3 **
Scan device mmc
Unknown command 'mmc' - try 'help'
device mmc 0:1
** Bad device mmc 0 **
device mmc 1:1
** Bad device mmc 1 **
device mmc 2:1
** Bad device mmc 2 **
device mmc 3:1
** Bad device mmc 3 **
loading uImage ...
** File not found /boot/uImage **
loading uInitrd ...
** File not found /boot/uInitrd **
loading DTB /boot/dts/kirkwood-pogo_e02.dtb ...
** File not found /boot/dts/kirkwood-pogo_e02.dtb **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
PogoE02>

Jörg
Re: Pogo dead after uBoot update?
April 08, 2017 03:14AM
Jörg
Re: Pogo dead after uBoot update?
April 08, 2017 04:36AM
Hi bodhi,

I am not sure how to interrupt serial console. <ESC> didn't work.

printenv
arcNumber=2097
bootcmd=run bootcmd_uenv; run scan_disk; run set_bootargs; run bootcmd_exec
bootcmd_exec=run load_uimage; if run load_initrd; then if run load_dtb; then bootm $load_uimage_addr $load_initrd_addr $load_dtb_addr; else bootm $load_uimage_addr $load_initrd_addr; fi; else if run load_dtb; then bootm $load_uimage_addr - $load_dtb_addr; else bootm $load_uimage_addr; fi; fi
bootcmd_uenv=run uenv_load; if test $uenv_loaded -eq 1; then run uenv_import; fi
bootdelay=10
bootdev=usb
device=0:1
devices=usb ide mmc
disks=0 1 2 3
dtb_file=/boot/dts/kirkwood-pogo_e02.dtb
ethact=egiga0
ethaddr=52:3b:20:9c:11:51
if_netconsole=ping $serverip
led_error=orange blinking
led_exit=green off
led_init=green blinking
load_dtb=echo loading DTB $dtb_file ...; load $bootdev $device $load_dtb_addr $dtb_file
load_dtb_addr=0x1c00000
load_initrd=echo loading uInitrd ...; load $bootdev $device $load_initrd_addr /boot/uInitrd
load_initrd_addr=0x1100000
load_uimage=echo loading uImage ...; load $bootdev $device $load_uimage_addr /boot/uImage
load_uimage_addr=0x800000
machid=0x831
mainlineLinux=yes
mtdids=nand0=orion_nand
mtdparts=mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
nc_ready=0
partition=nand0,2
preboot=run preboot_nc
preboot_nc=setenv nc_ready 0; for pingstat in 1 2 3 4 5; do; sleep 1; if run if_netconsole; then setenv nc_ready 1; fi; done; if test $nc_ready -eq 1; then run start_netconsole; fi
scan_disk=echo running scan_disk ...; scan_done=0; setenv scan_usb "usb start";  setenv scan_ide "ide reset";  setenv scan_mmc "mmc rescan"; for dev in $devices; do if test $scan_done -eq 0; then echo Scan device $dev; run scan_$dev; for disknum in $disks; do if test $scan_done -eq 0; then echo device $dev $disknum:1; if load $dev $disknum:1 $load_uimage_addr /boot/uImage 1; then scan_done=1; echo Found bootable drive on $dev $disknum; setenv device $disknum:1; setenv bootdev $dev; fi; fi; done; fi; done
set_bootargs=setenv bootargs console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 $mtdparts $custom_params
start_netconsole=setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;
stderr=serial
stdin=serial
stdout=serial
uenv_addr=0x810000
uenv_import=echo importing envs ...; env import -t $uenv_addr $filesize
uenv_init_devices=setenv init_usb "usb start";  setenv init_ide "ide reset";  setenv init_mmc "mmc rescan"; for devtype in $devices; do run init_$devtype; done;
uenv_load=run uenv_init_devices; setenv uenv_loaded 0; for devtype in $devices;  do for disknum in 0; do run uenv_read_disk; done; done;
uenv_read=echo loading envs from $devtype $disknum ...; if load $devtype $disknum:1 $uenv_addr /boot/uEnv.txt; then setenv uenv_loaded 1; fi
uenv_read_disk=if test $devtype -eq mmc; then if $devtype part; then run uenv_read;  fi; else if $devtype part $disknum; then run uenv_read; fi;  fi
usb_ready_retry=15

Environment size: 2985/131068 bytes
PogoE02>
Re: Pogo dead after uBoot update?
April 08, 2017 03:36PM
Jörg,

> I am not sure how to interrupt serial console. <ES
> C> didn't work.

You did :) that's how you can run printenv.

It seems your rootfs is the problem. But let's try this.

- Plug in the USB rootfs, Power up, interrupt serial console by pressing the <Enter> key repeatedly until you see the prompt
PogoE02>

And then set it to boot with USB only, and also make it less noisy:
setenv devices usb
setenv bootcmd 'run scan_disk; run set_bootargs; run bootcmd_exec'
printenv
boot

And post the entire serial console log here.

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner
Jörg
Re: Pogo dead after uBoot update?
April 09, 2017 02:11AM
Hi bodhi,

following the serial console log...
U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:23:43 -0700)
Pogo E02

SoC:   Kirkwood 88F6281_A0
DRAM:  256 MiB
WARNING: Caches not enabled
NAND:  128 MiB
## Error: flags type check failure for "ipaddr" <= "192.168.0.xxx" (type: i)
himport_r: can't insert "ipaddr=192.168.0.xxx" into hash table
## Error: flags type check failure for "serverip" <= "192.168.0.yyy" (type: i)
himport_r: can't insert "serverip=192.168.0.yyy" into hash table
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
Hit any key to stop autoboot:  0
PogoE02> setenv devices usb
PogoE02> setenv bootcmd 'run scan_disk; run set_bootargs; run bootcmd_exec'
PogoE02> printenv
arcNumber=2097
bootcmd=run scan_disk; run set_bootargs; run bootcmd_exec
bootcmd_exec=run load_uimage; if run load_initrd; then if run load_dtb; then bootm $load_uimage_addr $load_initrd_addr $load_dtb_addr; else bootm $load_uimage_addr $load_initrd_addr; fi; else if run load_dtb; then bootm $load_uimage_addr - $load_dtb_addr; else bootm $load_uimage_addr; fi; fi
bootcmd_uenv=run uenv_load; if test $uenv_loaded -eq 1; then run uenv_import; fi
bootdelay=10
bootdev=usb
device=0:1
devices=usb
disks=0 1 2 3
dtb_file=/boot/dts/kirkwood-pogo_e02.dtb
ethact=egiga0
ethaddr=52:3b:20:9c:11:51
if_netconsole=ping $serverip
led_error=orange blinking
led_exit=green off
led_init=green blinking
load_dtb=echo loading DTB $dtb_file ...; load $bootdev $device $load_dtb_addr $dtb_file
load_dtb_addr=0x1c00000
load_initrd=echo loading uInitrd ...; load $bootdev $device $load_initrd_addr /boot/uInitrd
load_initrd_addr=0x1100000
load_uimage=echo loading uImage ...; load $bootdev $device $load_uimage_addr /boot/uImage
load_uimage_addr=0x800000
machid=0x831
mainlineLinux=yes
mtdids=nand0=orion_nand
mtdparts=mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
nc_ready=0
partition=nand0,2
preboot=run preboot_nc
preboot_nc=setenv nc_ready 0; for pingstat in 1 2 3 4 5; do; sleep 1; if run if_netconsole; then setenv nc_ready 1; fi; done; if test $nc_ready -eq 1; then run start_netconsole; fi
scan_disk=echo running scan_disk ...; scan_done=0; setenv scan_usb "usb start";  setenv scan_ide "ide reset";  setenv scan_mmc "mmc rescan"; for dev in $devices; do if test $scan_done -eq 0; then echo Scan device $dev; run scan_$dev; for disknum in $disks; do if test $scan_done -eq 0; then echo device $dev $disknum:1; if load $dev $disknum:1 $load_uimage_addr /boot/uImage 1; then scan_done=1; echo Found bootable drive on $dev $disknum; setenv device $disknum:1; setenv bootdev $dev; fi; fi; done; fi; done
set_bootargs=setenv bootargs console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 $mtdparts $custom_params
start_netconsole=setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;
stderr=serial
stdin=serial
stdout=serial
uenv_addr=0x810000
uenv_import=echo importing envs ...; env import -t $uenv_addr $filesize
uenv_init_devices=setenv init_usb "usb start";  setenv init_ide "ide reset";  setenv init_mmc "mmc rescan"; for devtype in $devices; do run init_$devtype; done;
uenv_load=run uenv_init_devices; setenv uenv_loaded 0; for devtype in $devices;  do for disknum in 0; do run uenv_read_disk; done; done;
uenv_read=echo loading envs from $devtype $disknum ...; if load $devtype $disknum:1 $uenv_addr /boot/uEnv.txt; then setenv uenv_loaded 1; fi
uenv_read_disk=if test $devtype -eq mmc; then if $devtype part; then run uenv_read;  fi; else if $devtype part $disknum; then run uenv_read; fi;  fi
usb_ready_retry=15

Environment size: 2959/131068 bytes
PogoE02> boot
running scan_disk ...
Scan device usb
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... EHCI timed out on TD - token=0x80008c80
unable to get device descriptor (error=-1)
2 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
device usb 0:1
** Bad device usb 0 **
device usb 1:1
** Bad device usb 1 **
device usb 2:1
** Bad device usb 2 **
device usb 3:1
** Bad device usb 3 **
loading uImage ...
** Bad device usb 0 **
loading uInitrd ...
** Bad device usb 0 **
loading DTB /boot/dts/kirkwood-pogo_e02.dtb ...
** Bad device usb 0 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
PogoE02>

Jörg
Re: Pogo dead after uBoot update?
April 09, 2017 03:18AM
Jörg,

Now it is clearly showed that your USB drive is not good:

USB0:   USB EHCI 1.00
scanning bus 0 for devices... EHCI timed out on TD - token=0x80008c80
unable to get device descriptor (error=-1)
2 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found

Try using a different USB drive for the rootfs.

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner
Jörg
Re: Pogo dead after uBoot update?
April 09, 2017 05:44AM
Hi bodhi,

you mean the USB flash drive itself is the problem or the Debian is corrupt?
Which guidance is the best to make a new rootfs on a new flash drive?
Is the uboot on my Pogo ok, no further action necessary?

Thanks and happy easter
Jörg
Jörg
Re: Pogo dead after uBoot update?
April 09, 2017 10:47AM
Hi bodhi,

in the meanwhile I think that the uboot on my Pogo is also corrupt. If I boot without the rootfs than the Pogo OS should be started. I can't SSH because of the Pogo gets no IP address. What do you think about this?

Jörg
Re: Pogo dead after uBoot update?
April 09, 2017 02:07PM
Jörg,

No, it is not corrupted. The new u-boot will boot stock Pogo OS but with you need to have more envs to set it up. Your new u-boot installation was OK, nothing wrong with it.

The USB drive itself is the booting problem (But you could use it as a data drive).

Find a better USB flash drive, and create new rootfs on it. My experience: Sandisk flash drives is the best for booting. Kingston or Transcend is OK to. Avoid Patriot drives, they are junks.

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner
Jörg
Re: Pogo dead after uBoot update?
April 12, 2017 01:42PM
Hi bodhi,

I have installed ArchLinux on a USB SSD. Format of ROOTFS partition is ext4.
Install ArchLinuxARM-kirkwood

While Pogo is booting the LED is blinking green (~20sec) and than changes to solid orange. The Pogo gets no IP
from the router. Uboot was not changed.

Do you have any Ideas?

Jörg
Re: Pogo dead after uBoot update?
April 12, 2017 03:03PM
Jörg,

> I have installed ArchLinux on a USB SSD. Format of
> ROOTFS partition is ext4.

See this:
http://forum.doozan.com/read.php?3,31557,31624#msg-31624

Please do the above in serial console and post the log here, if you can't boot Arch on USB.

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner



Edited 1 time(s). Last edit at 04/12/2017 03:05PM by bodhi.
Jörg
Re: Pogo dead after uBoot update?
April 12, 2017 03:29PM
Hi Bodhi,

point 3.) is what I have to do, right? Uboot must not be re-installed?

Jörg
Re: Pogo dead after uBoot update?
April 13, 2017 02:23AM
Jörg Wrote:
-------------------------------------------------------
> Hi Bodhi,
>
> point 3.) is what I have to do, right?

Yes.

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner
Jörg
Re: Pogo dead after uBoot update?
April 13, 2017 09:00AM
Hi bodhi,

following the log. After these instruction the LED is blinking green very quickly.

U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:23:43 -0700)
Pogo E02

SoC:   Kirkwood 88F6281_A0
DRAM:  256 MiB
WARNING: Caches not enabled
NAND:  128 MiB
## Error: flags type check failure for "ipaddr" <= "192.168.0.xxx" (type: i)
himport_r: can't insert "ipaddr=192.168.0.xxx" into hash table
## Error: flags type check failure for "serverip" <= "192.168.0.yyy" (type: i)
himport_r: can't insert "serverip=192.168.0.yyy" into hash table
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
ping - send ICMP ECHO_REQUEST to network host

Usage:
ping pingAddress
Hit any key to stop autoboot:  0
PogoE02> setenv dtb_file_alt '/boot/dtbs/kirkwood-pogoplug_v4.dtb'
PogoE02> setenv load_dtb 'echo loading DTB file ... ; if load $bootdev $device $load_dtb_addr $dtb_file; then echo $dtb_file; else if load $bootdev $device $load_dtb_addr $dtb_file_alt; then echo $dtb_file_alt; else echo *** DTB file not found; fi; fi'
PogoE02> boot
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 3 USB Device(s) found
       scanning usb for storage devices...
Use USB retry period from the environment: 15 second(s)
1 Storage Device(s) found
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'

Partition Map for USB device 0  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
  1     2048            20480000        0006b9ff-01     83
  2     20482048        229586944       0006b9ff-02     05 Extd
  5     20484096        229584896       0006b9ff-05     83
loading envs from usb 0 ...
** File not found /boot/uEnv.txt **
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'
running scan_disk ...
Scan device usb
device usb 0:1
1 bytes read in 135 ms (0 Bytes/s)
Found bootable drive on usb 0
loading uImage ...
4604912 bytes read in 274 ms (16 MiB/s)
loading uInitrd ...
** File not found /boot/uInitrd **
loading DTB file ...
** File not found /boot/dts/kirkwood-pogo_e02.dtb **
** File not found /boot/dtbs/kirkwood-pogoplug_v4.dtb **
*** DTB file not found
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   Linux-4.4.57-1-ARCH
   Created:      2017-03-27   5:43:34 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4604848 Bytes = 4.4 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
ERROR: Did not find a cmdline Flattened Device Tree
Could not find a valid device tree
PogoE02>

Jörg
Re: Pogo dead after uBoot update?
April 13, 2017 06:05PM
Jörg Wrote:
-------------------------------------------------------
> Hi bodhi,
>
> following the log. After these instruction the LED
> is blinking green very quickly.
>

> U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:23:43 -0700
> )
> Pogo E02
>
> SoC: Kirkwood 88F6281_A0
> DRAM: 256 MiB
> WARNING: Caches not enabled
> NAND: 128 MiB
> ## Error: flags type check failure for "ipaddr" <=
> "192.168.0.xxx" (type: i)
> himport_r: can't insert "ipaddr=192.168.0.xxx" int
> o hash table
> ## Error: flags type check failure for "serverip"
> <= "192.168.0.yyy" (type: i)
> himport_r: can't insert "serverip=192.168.0.yyy" i
> nto hash table

These netconsole errors were because xxx and yyy have to real numbers (they were examples you supposed to fill in with numbers that are specific to your network environment).

> In: serial
> Out: serial
> Err: serial
> Net: egiga0
> ping - send ICMP ECHO_REQUEST to network host
>
> Usage:
> ping pingAddress
> ping - send ICMP ECHO_REQUEST to network host
>
> Usage:
> ping pingAddress
> ping - send ICMP ECHO_REQUEST to network host
>
> Usage:
> ping pingAddress
> ping - send ICMP ECHO_REQUEST to network host
>
> Usage:
> ping pingAddress
> ping - send ICMP ECHO_REQUEST to network host
>
> Usage:
> ping pingAddress
> Hit any key to stop autoboot: 0
> PogoE02> setenv dtb_file_alt '/boot/dtbs/kirkwood-
> pogoplug_v4.dtb'
> PogoE02> setenv load_dtb 'echo loading DTB file ..
> . ; if load $bootdev $device $load_dtb_addr $dtb_f
> ile; then echo $dtb_file; else if load $bootdev $d
> evice $load_dtb_addr $dtb_file_alt; then echo $dtb
> _file_alt; else echo *** DTB file not found; fi; f
> i'
> PogoE02> boot
> starting USB...
> USB0: USB EHCI 1.00
> scanning bus 0 for devices... 3 USB Device(s) foun
> d
> scanning usb for storage devices...
> Use USB retry period from the environment: 15 seco
> nd(s)
> 1 Storage Device(s) found
> Unknown command 'ide' - try 'help'
> Unknown command 'mmc' - try 'help'
>
> Partition Map for USB device 0 -- Partition Typ
> e: DOS
>
> Part Start Sector Num Sectors UUID
> Type
> 1 2048 20480000 0006b9ff-0
> 1 83
> 2 20482048 229586944 0006b9ff-0
> 2 05 Extd
> 5 20484096 229584896 0006b9ff-0
> 5 83
> loading envs from usb 0 ...
> ** File not found /boot/uEnv.txt **
> Unknown command 'ide' - try 'help'
> Unknown command 'mmc' - try 'help'
> running scan_disk ...
> Scan device usb
> device usb 0:1
> 1 bytes read in 135 ms (0 Bytes/s)
> Found bootable drive on usb 0
> loading uImage ...
> 4604912 bytes read in 274 ms (16 MiB/s)
> loading uInitrd ...
> ** File not found /boot/uInitrd **
> loading DTB file ...
> ** File not found /boot/dts/kirkwood-pogo_e02.dtb
> **
> ** File not found /boot/dtbs/kirkwood-pogoplug_v4.
> dtb **
> *** DTB file not found
> ## Booting kernel from Legacy Image at 00800000 ..
> .
> Image Name: Linux-4.4.57-1-ARCH
> Created: 2017-03-27 5:43:34 UTC
> Image Type: ARM Linux Kernel Image (uncompres
> sed)
> Data Size: 4604848 Bytes = 4.4 MiB
> Load Address: 00008000
> Entry Point: 00008000
> Verifying Checksum ... OK
> ERROR: Did not find a cmdline Flattened Device Tre
> e
> Could not find a valid device tree

Your Arch rootfs does not have an FDT kernel installed. If you want to boot with my uboot setup as above, the rootfs needs to have FDT kernel version. Ask this at Arch forum about how to download the FDT kernel rootfs.

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner
Jörg
Re: Pogo dead after uBoot update?
April 14, 2017 09:20AM
Hi bodhi,

you are right, I forgot to set the variables for netconsole :-(.
Can this be the reason for the trouble? In the meanwhile I tried to install your latest Kirkwood kernel several times, but no chance to make it running. From my point of view, first of all SSH must work.

I have created a primary ext4 partition (named rootfs) with GParted on my ubuntu laptop. Than I have made /boot...
cd /boot
wget -c https://www.dropbox.com/s/jqz3io6xukwv7is/linux-4.10.0-kirkwood-tld-1-bodhi.tar.bz2
tar -xjf linux-4.10.0-kirkwood-tld-1-bodhi.tar.bz2
tar -xf  linux-dtb-4.10.0-kirkwood-tld-1.tar

All other things must happen on Pogo, but without SSH not possible. Any idea to fix the problem?

Cheers
Jörg
Re: Pogo dead after uBoot update?
April 14, 2017 02:31PM
Jörg

By what you've posted above (which is the wrong thing to do on Ubuntu), I'm certain that you've did not create the rootfs correctly. Please post the entire Ubuntu session log while you are creating the Debian rootfs.

And post everything. Meaning from the first command to become root and extract the tarball...

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner
Jörg
Re: Pogo dead after uBoot update?
April 14, 2017 03:17PM
Hi bodhi,

I know this to do on Ubuntu is not correct, but which option do I have with no ssh access?
Here the entire log session:

joerg@joerg-ubuntu:~$ sudo -s
[sudo] password for joerg: 
root@joerg-ubuntu:~# blkid -o list
device     fs_type label    mount point    UUID
-------------------------------------------------------------------------------
/dev/sda1  ext4             /              b86ed07d-3ad6-481c-8f63-09f657e71cd4
/dev/sda5  swap             <swap>         2ebea2d1-67e6-4b02-95a3-5b929dcf16dc
/dev/sdb1  ext4    rootfs   /media/rootfs  3a390a5e-7ad5-4550-9d1c-829da5873ebe
/dev/sdb5  ext4    cloud    /media/cloud   35a1593e-7e81-4316-8758-fdac2f7db067
root@joerg-ubuntu:~# mkdir /media/rootfs/boot
root@joerg-ubuntu:~# cd /media/rootfs/boot
root@joerg-ubuntu:/media/rootfs/boot# wget -c https://www.dropbox.com/s/jqz3io6xukwv7is/linux-4.10.0-kirkwood-tld-1-bodhi.tar.bz2
--2017-04-14 23:04:49--  https://www.dropbox.com/s/jqz3io6xukwv7is/linux-4.10.0-kirkwood-tld-1-bodhi.tar.bz2
Auflösen des Hostnamen »www.dropbox.com (www.dropbox.com)«... 162.125.66.1
Verbindungsaufbau zu www.dropbox.com (www.dropbox.com)|162.125.66.1|:443... verbunden.
HTTP-Anforderung gesendet, warte auf Antwort... 302 Found
Platz: https://dl.dropboxusercontent.com/content_link/hKPAaCoBl2PI2ii7DMOTGXVL9f6MqbwbMhtFyf6yfi4kN3BJk1PAQPJ77ih9Z5L7/file [folge]
--2017-04-14 23:04:50--  https://dl.dropboxusercontent.com/content_link/hKPAaCoBl2PI2ii7DMOTGXVL9f6MqbwbMhtFyf6yfi4kN3BJk1PAQPJ77ih9Z5L7/file
Auflösen des Hostnamen »dl.dropboxusercontent.com (dl.dropboxusercontent.com)«... 162.125.66.6
Verbindungsaufbau zu dl.dropboxusercontent.com (dl.dropboxusercontent.com)|162.125.66.6|:443... verbunden.
HTTP-Anforderung gesendet, warte auf Antwort... 200 OK
Länge: 29818972 (28M) [application/octet-stream]
In »»linux-4.10.0-kirkwood-tld-1-bodhi.tar.bz2«« speichern.

100%[===========================================================>] 29.818.972  4,69M/s   in 5,9s    

2017-04-14 23:04:58 (4,78 MB/s) - »»linux-4.10.0-kirkwood-tld-1-bodhi.tar.bz2«« gespeichert [29818972/29818972]

root@joerg-ubuntu:/media/rootfs/boot# tar -xjf linux-4.10.0-kirkwood-tld-1-bodhi.tar.bz2
root@joerg-ubuntu:/media/rootfs/boot# tar -xf  linux-dtb-4.10.0-kirkwood-tld-1.tar
root@joerg-ubuntu:/media/rootfs/boot# ls
config-4.10.0-kirkwood-tld-1               linux-dtb-4.10.0-kirkwood-tld-1.tar
dts                                        linux-headers-4.10.0-kirkwood-tld-1_1.0_armel.deb
linux-4.10.0-kirkwood-tld-1-bodhi.tar.bz2  linux-image-4.10.0-kirkwood-tld-1_1.0_armel.deb
linux-4.10.0-kirkwood-tld-1.patch          zImage-4.10.0-kirkwood-tld-1
root@joerg-ubuntu:/media/rootfs/boot# ^C
root@joerg-ubuntu:/media/rootfs/boot#

After this I unmount the extSSD and plug it on the Pogo. This little peace of hardware drives me crazy!

Regards
Jörg
Re: Pogo dead after uBoot update?
April 14, 2017 04:05PM
Jörg,

You've used the wrong section in the installation thead :)

Here is the rootfs section that you need to follow:

Quote

Updated 20 Feb 2016:

This Debian-4.4.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2 is to keep in sync with kernel Linux-4.4.0-kirkwood-tld-1.

Basic minimal Debian Kirkwood rootfs for most Kirwood plugs:

- tarball size: 137M
- install size: 398M
- a basic jessie rootfs.
- The init system used in this rootfs is sysvinit . To boot with systemd, see note 2 below.
- Installed packages: nano, avahi, ntp, busybox-syslogd (log to RAM), htop, isc-dhcp-client, dialog, bzip2, nfs server/client, iperf, ethtool, sysvinit-core, sysvinit, and sysvinit-utils.
- see LED controls in /etc/rc.local, and /etc/init.d/halt
- see some useful aliases in /root/.profile
- root password: root

Download at Dropbox:

Debian-4.4.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2
md5:
9f957e1dc5a36f90a285ab4615cb02fd
sha256:
d33349118e34bd078ca635cd2d6776f3e312accfc77d29da5870b9980add5c36

And remember to check the hash of what you download, as always.

Installation:

Installation can be done on any Linux box, with a fresh USB drive (SD card or HDD would work fine too).

Note: all steps below must be done while logging in as root user (not sudo). If you are not the root user then don't continue, because the rootfs will not work.

1. Format a new USB drive with a single Ext3 partition, and label it rootfs.

2. Mount the drive on a Linux box. cd to top level directory and extract it. It is assuming the USB drive is mounted at /media/sdb1
cd /media/sdb1
tar -xjf Debian-4.4.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2

3. Adjust fstab. Skip this step if you have installed the latest U-Boot for Kirkwood (or are installing this u-boot at the same time).

Edit /media/sdb1/etc/fstab entry for /dev/root to match the rootfstype of your usb_rootfstype. However, you can keep it as is without problem in booting since the u-boot env bootargs takes precedent.
/dev/root / ext3 noatime,errors=remount-ro 0 1

4. Create uImage with embedded DTB for booting with older u-boots (2012 or earlier). Skip this step if you have installed the latest U-Boot for Kirkwood (or are installing this u-boot at the same time).

Please replace kirkwood-goflexnet.dtb below with the correct DTB name for your box (see the folder /media/sdb1/boot/dts).

Generate the uImage with DTB embedded inside:
cd /media/sdb1/boot
cp -a zImage-4.4.0-kirkwood-tld-1 zImage.fdt
cat dts/kirkwood-goflexnet.dtb >> zImage.fdt
mv uImage uImage.orig
mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n Linux-4.4.0-kirkwood-tld-1 -d zImage.fdt uImage
sync

Note: if your Linux box does not have mkimage, then install it

apt-get install u-boot-tools

5. Done. Take this USB rootfs to your plug and cold start. After booted into Debian, see Note1 and Note2 below. It is very important that you do Note1 steps to secure your box.

Note1:

After logging in this rootf the first time, remember to generate new SSH key to make it your own unique rootfs. And also update your rootfs to get the latest Debian package security updates:
rm /etc/ssh/ssh_host*
ssh-keygen -A

apt-get update
apt-get upgrade

Note2:

To boot with systemd, add this parameter to your u-boot env bootargs. If you are booting with my latest u-boot images then use the uEnv.txt capability to do this. See the instruction about uEnvt.txt in that thread.
init=/bin/systemd
For example,
fw_setenv usb_set_bootargs 'setenv bootargs console=$console root=$usb_root rootdelay=$usb_rootdelay rootfstype=$usb_rootfstype $mtdparts init=/bin/systemd'

If that's still not possible to run systemd, you might want to install it again:
apt-get install systemd

What you did was trying to update kernel. Which can not be done on Ubuntu. Upgrading kernel is done in Debian on the Pogo.

Note: you dont need to do step 4. Because you are booting with new u-boot.

-bodhi
===========================
Wiki
latest Kirkwood kernel builds and rootfs
latest u-boot-kirkwood builds
latest Oxnas kernel builds and rootfs
latest u-boot-oxnas builds
latest MVEBU Armada kernel builds and rootfs
U-Boot & Kernel Booting process
bodhi's u-boot GitHub
bodhi's corner



Edited 1 time(s). Last edit at 04/14/2017 04:07PM by bodhi.
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: