Welcome! Log In Create A New Profile

Advanced

Thinking about upgrading my Pogo E02 U-Boot.

Posted by umd 
umd
Thinking about upgrading my Pogo E02 U-Boot.
February 28, 2017 02:47PM
When I got this Pogoplug, I followed the Qnology blog to modify the U-Boot. Using netconsole I got version of U-Boot that is currently installed:

U-Boot 2011.12 (Feb 20 2012 - 21:21:59)
Pogoplug E02


The Pogoplug works fine and I am running the latest Debian from this site on a hdd. Some of the features of the latest U-Boot like using >2TB drives would be nice. So can I do this procedure directly from Debian?

I did do a check for bad blocks using dmesg scan and got this:

[     5.781933] Scanning device for bad blocks
[     5.790715] Bad eraseblock 43 at 0x000000560000


Will this bad eraseblock be an issue? I don't want to brick it.

Thank you for the help.
Re: Thinking about upgrading my Pogo E02 U-Boot.
February 28, 2017 04:01PM
umd,

> ould be nice. So can I do this procedure directly
> from Debian?

Yes:
http://forum.doozan.com/read.php?3,12381


> I did do a check for bad blocks using dmesg scan a
> nd got this:
> [ 5.790715] Bad eraseblock 43 at 0x00000056000

This bad block is OK. It is in a different region far way from mtd0, which is the first 8 blocks.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
umd
Re: Thinking about upgrading my Pogo E02 U-Boot.
February 28, 2017 04:15PM
Oh ok. That's what I thought. Thanks!
umd
Re: Thinking about upgrading my Pogo E02 U-Boot.
February 28, 2017 05:22PM
Ok I did it. When I rebooted back into Debian, I couldn't connect at all with putty. The light was green. I then unplugged it to boot with just the Pogoplug. The light was flashing orange. Here is the netconsole output:


U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:23:43 -0700)
Pogo E02
gcc (Debian 4.9.2-10) 4.9.2
GNU ld (GNU Binutils for Debian) 2.25
Hit any key to stop autoboot:  0 
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 2 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'

no USB devices available
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'
running scan_disk ...
Scan device usb
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 **
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 ...
** 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>
umd
Re: Thinking about upgrading my Pogo E02 U-Boot.
February 28, 2017 06:04PM
I had a usb stick with Debian 3.14 on it. I was able to boot and access through putty like normal. Phew! Still doesn't explain why the Pogoplug booting by itself flashes orange. My Debian 4.9 on the hdd might have to reinstall since I installed it with the step for older U-boots.
Re: Thinking about upgrading my Pogo E02 U-Boot.
February 28, 2017 07:05PM
umd Wrote:
-------------------------------------------------------
> I had a usb stick with Debian 3.14 on it. I was ab
> le to boot and access through putty like normal. P
> hew! Still doesn't explain why the Pogoplug bootin
> g by itself flashes orange. My Debian 4.9 on the h
> dd might have to reinstall since I installed it wi
> th the step for older U-boots.

The box flashing orange because it could not load the kernel from the missing USB drive.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
umd
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 01, 2017 10:40AM
Ok that makes sense. Do you know why I am able to boot from the Debian 3.14 stick, but I can't seem to boot from the hdd with Debian 4.4? I did a new install extracting Debian-4.4.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2 on a 4gb partition that I created with mke2fs -L ROOTFS -j /dev/sdb1. Powered down and then boot the Pogo with only the hdd attached. The drive light flashes initially but rather quickly goes to sleep and the Pogo flashes orange.


Edit:

I successfully installed Debian-4.4.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2 on a usb stick and it booted up properly. So it seems to be an issue with recognizing the hdd.



Edited 1 time(s). Last edit at 03/01/2017 01:24PM by umd.
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 01, 2017 04:12PM
mke2fs -L ROOTFS -j /dev/sdb1

The rootfs label is in lowercase, so:
mke2fs -L rootfs -j /dev/sdb1

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
umd
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 01, 2017 04:32PM
Unfortunately same thing happens.


U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:23:43 -0700)
Pogo E02
gcc (Debian 4.9.2-10) 4.9.2
GNU ld (GNU Binutils for Debian) 2.25
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)
2 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'

no USB devices available
Unknown command 'ide' - try 'help'
Unknown command 'mmc' - try 'help'
running scan_disk ...
Scan device usb
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 **
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 ...
** 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!
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 01, 2017 05:14PM
umd,

You USB drive was not regconized by u-boot:
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
So it got nothing to load the kernel from.

What type of USB drive are you using? capaciy, brand? enclosure brand?

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



Edited 3 time(s). Last edit at 03/01/2017 05:17PM by bodhi.
umd
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 01, 2017 05:37PM
The usb drive that it is not recognizing is a Western Digital My Passport 500gb hard drive. It's weird I have a couple of regular thumb drives (Sandisk thumb drive with Debian 4.4 and a Lexar thumb drive with Debian 3.14 and both boot without issue). It is the usb HDD that it is not recognizing. It was the main drive I used on the previous U-Boot without issue. For some reason it's not getting recognized.
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 01, 2017 11:44PM
umd,

WD USB HDD is inconsistent with all u-boot.

Power up, interrupt netconsole and

setenv usb_ready_retry 30
usb start
See if it is recognized by u-boot now.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
umd
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 02, 2017 08:34AM
Bodhi,

I managed to get it to boot. In netconsole, I entered:

setenv usb_ready_retry 30
usb start

Then I tried:

PogoE02> boot
boot

Still wouldn't find it. Then entered:

PogoE02> reset
reset
resetting ...

U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:23:43 -0700)
Pogo E02
gcc (Debian 4.9.2-10) 4.9.2
GNU ld (GNU Binutils for Debian) 2.25
Hit any key to stop autoboot:  0 
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

Success! So then it booted into Debian finally. It seems I'm able to do a reboot from Debian and the Pogo will find the drive without issue. Cold boot seems to be the issue. So I guess on initial bootup when I plug in the Pogo, I need to be on netconsole and run a reset to get it to work.
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 02, 2017 02:56PM
umd,

> Success! So then it booted into Debian finally. It
> seems I'm able to do a reboot from Debian and the
> Pogo will find the drive without issue. Cold boot
> seems to be the issue. So I guess on initial bootu
> p when I plug in the Pogo, I need to be on netcons
> ole and run a reset to get it to work.

Yes, it is good workaround!

We could also try to insert sleep commands in the env to wait for the drive to spin up. WD USB drives are really troublesome for booting.

Interrupt netconsole, get the listing of envs, and post here (I know what the envs look like, but just want to be sure I give you the correct commands):
printenv

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
umd
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 02, 2017 03:19PM
Ok here you go. I x'd out the ethaddr:

PogoE02> printenv
printenv
arcNumber=3542
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=XX:XX:XX:XX:XX:XX
if_netconsole=ping $serverip
ipaddr=192.168.1.17
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=dd6
mainlineLinux=yes
mtdids=nand0=orion_nand
mtdparts=mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
nc_ready=1
ncip=192.168.1.120
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
serverip=192.168.1.120
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=nc
stdin=nc
stdout=nc
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=30
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 03, 2017 01:23AM
Interrupt netconsole and

setenv bootcmd_uenv 'sleep 30; run uenv_load; if test $uenv_loaded -eq 1; then run uenv_import; fi'
setenv usb_ready_retry 30
boot

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
umd
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 03, 2017 08:40AM
Unfortunately the same issue. I then tried it with sleep 45 and then sleep 60 and still the drive wouldn't boot until a reset. Weird.
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 03, 2017 03:20PM
umd,

> Unfortunately the same issue. I then tried it with
> sleep 45 and then sleep 60 and still the drive wou
> ldn't boot until a reset. Weird.

The reset is like a warm start. It means the drive has been spun up after a long enough period.You can also try

sleep 10; usb restart; sleep 10; usb restart; sleep 10; usb restart

As I said, WD USB drives are always like this. Some forum member has reported that for a particular drive, the delay needs to be 50 seconds even. I have an old WD Element 2TB that always has problem starting that it can only be recognized in Linux (I could play with the sleep period, but did not bother since it is not a boot drive).

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
umd
Re: Thinking about upgrading my Pogo E02 U-Boot.
March 03, 2017 05:54PM
Bodhi,

Yeah, the drive definitely seems finicky. I did try a bunch of different combinations of the bootcmd_uenv with no luck. Not a big deal as I have a very easy workaround with the netconsole. When I eventually buy a new hard drive, I can give that one a try as a boot drive. Thanks.
Author:

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: