Welcome! Log In Create A New Profile

Advanced

Upgrading my Pogoplug

Posted by agiorgio 
Upgrading my Pogoplug
July 16, 2014 03:24PM
So I have a Pogoplug E02 that I'm running as a low-cost NAS device. I ran the script from here and successfully installed Debian onto a 2GB ext3 USB stick about a year ago. I also have a 3TB USB hard disk with GPT and an ext4 filesystem. This setup runs reasonably well, except I keep running into the same problem that others have on this forum - the USB hard drive gets enumerated first on a cold boot, and U-boot can't find the root filesystem. My workaround is that I manually boot the system with the hard disk unplugged, and manually mount it, but that's not a very good solution.

I'm interested in upgrading both my rescue system, and my U-boot, since I'd like to boot off the USB disk directly. However, there are a lot of threads here, and I want to make sure that I'm following the correct ones before I start flashing things. Should I upgrade the U-boot first? How do I know if I have the latest rescue system? I don't have a JTAG cable - is setting up netconsole good enough?

I'm an experienced Linux software developer, so I'm comfortable with making changes to my device and the general environment, but U-boot is new to me.
Re: Upgrading my Pogoplug
July 16, 2014 08:14PM
To boot USB consistently, see this thread:
http://forum.doozan.com/read.php?3,8044,8152#msg-8152

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Upgrading my Pogoplug
July 16, 2014 09:18PM
That worked perfectly! I had tried to get the "rootfs" trick working in the past, but apparently I had the wrong usb_init string. I've just rebooted it a half dozen times just to prove to myself that this actually works!

My next trick is to get it booting off the 3TB drive. The USB stick only has ~400 MB of free space left, and I'd like to take it out of the equation entirely. However, the HDD has a GPT and an ext4 filesystem. How risky is it updating the U-Boot image if I don't have a JTAG cable?
Re: Upgrading my Pogoplug
July 16, 2014 10:35PM
Hi agiorgio,

> My next trick is to get it booting off the 3TB
> drive. The USB stick only has ~400 MB of free
> space left, and I'd like to take it out of the
> equation entirely. However, the HDD has a GPT and
> an ext4 filesystem. How risky is it updating the
> U-Boot image if I don't have a JTAG cable?

There is always some risk (e.g. power outage, typos, ….:) However, if you follow direction in this thread very closely, the risk is reduced.

- set up netconsole and verify that it works before you install new U-Boot.
- After installing new U-Boot, don't reboot if you see any errors or warnings during installation. And if you like, post your entire log of what you did here before rebooting.

With that said, the Pogo E02 does not support UART booting, therefore serial console does not help if U-Boot in mtd0 is messed up. The only way to recover in that scenario is JTAG. So you should make your decision based on that!

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Upgrading my Pogoplug
July 20, 2014 07:20AM
Well, I tried upgrading the U-Boot using the automated script, but it seems that I have the latest version as per that method. However, it's still a number of years old. I'm now trying to boot directly off a 20GB ext3 partition on my 3TB drive, but I'm having no luck. Any suggestions?

U-Boot 2011.12 (Feb 20 2012 - 21:21:59)
Pogoplug E02
arm-none-linux-gnueabi-gcc (Sourcery G++ Lite 2009q3-67) 4.4.1
GNU ld (Sourcery G++ Lite 2009q3-67) 2.19.51.20090709
Hit any key to stop autoboot:  0 
(Re)start USB...
USB:   Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 3 USB Device(s) found
       scanning bus for storage devices... EHCI timed out on TD - token=0x1f8c80
1 Storage Device(s) found
Loading file "/rescueme" from usb device 0:1 (usbda1)
Failed to mount ext2 filesystem...
** Bad ext2 partition or disk - usb 0:1 **
reading /rescueme.txt

** Unable to read "/rescueme.txt" from usb 0:1 **
Creating 1 MTD partitions on "nand0":
0x000002500000-0x000008000000 : "mtd=3"
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    129024 bytes
UBI: smallest flash I/O unit:    2048
UBI: sub-page size:              512
UBI: VID header offset:          512 (aligned 512)
UBI: data offset:                2048
UBI: attached mtd1 to ubi0
UBI: MTD device name:            "mtd=3"
UBI: MTD device size:            91 MiB
UBI: number of good PEBs:        726
UBI: number of bad PEBs:         2
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     0
UBI: available PEBs:             715
UBI: total number of reserved PEBs: 11
UBI: number of PEBs reserved for bad PEB handling: 7
UBI: max/mean erase counter: 1/1
UBIFS error (pid 0): ubifs_get_sb: cannot open "ubi:rootfs", error -19
Error reading superblock on volume 'ubi:rootfs'!
(Re)start USB...
USB:   Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 3 USB Device(s) found
       scanning bus for storage devices... 1 Storage Device(s) found
Loading file "/boot/uImage" from usb device 0:1 (usbda1)
Failed to mount ext2 filesystem...
** Bad ext2 partition or disk - usb 0:1 **
Loading file "/boot/uInitrd" from usb device 0:1 (usbda1)
Failed to mount ext2 filesystem...
** Bad ext2 partition or disk - usb 0:1 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
stopping USB..

NAND read: device 0 offset 0x100000, size 0x400000
 4194304 bytes read: OK
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   Linux-3.3.2-kirkwide
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3627768 Bytes = 3.5 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

rescue:~# fw_printenv 
ethact=egiga0
bootdelay=3
baudrate=115200
mainlineLinux=yes
console=ttyS0,115200
led_init=green blinking
led_exit=green off
led_error=orange blinking
mtdparts=mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
mtdids=nand0=orion_nand
partition=nand0,2
stdin=serial
stdout=serial
stderr=serial
rescue_set_bootargs=setenv bootargs console=$console ubi.mtd=2 root=ubi0:rootfs ro rootfstype=ubifs $mtdparts $rescue_custom_params
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
pogo_bootcmd=if fsload uboot-original-mtd0.kwb; then go 0x800200; fi
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
ubifs_mtd=3
ubifs_set_bootargs=setenv bootargs console=$console ubi.mtd=$ubifs_mtd root=ubi0:rootfs rootfstype=ubifs $mtdparts $ubifs_custom_params
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
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_device=0:1
usb_rootdelay=10
usb_set_bootargs=setenv bootargs console=$console root=$usb_root rootdelay=$usb_rootdelay rootfstype=$usb_rootfstype $mtdparts $usb_custom_params
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
bootcmd=usb start; run force_rescue_bootcmd; run ubifs_bootcmd; run usb_bootcmd; usb stop; run rescue_bootcmd; run pogo_bootcmd; reset
ethaddr=00:25:31:04:A4:5F
arcNumber=2097
preboot=run if_netconsole start_netconsole
ipaddr=192.168.1.97
if_netconsole=ping $serverip
start_netconsole=setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;
serverip=192.168.1.99
usb_init=usb start; setenv usb_root LABEL=rootfs
set_bootargs_rescue=setenv bootargs console=$console ubi.mtd=2 root=ubi0:rootfs ro rootfstype=ubifs $mtdparts
bootcmd_rescue=run set_bootargs_rescue; nand read.e 0x800000 0x100000 0x400000; bootm 0x800000
bootcmd_pogo=run bootcmd_rescue
rescue_installed=1
usb_root=/dev/sda3
usb_rootfstype=ext3

Re: Upgrading my Pogoplug
July 20, 2014 02:53PM
agiorgio,

Looks like you are using hybrid MBR, did you create the partitions using the instruction here?
http://www.rodsbooks.com/gdisk/hybrid.html

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Upgrading my Pogoplug
July 21, 2014 06:12AM
Okay - I'm making progress here, but I'm still short of my original goal. I've successfully installed the latest 2.8.2 rescue system, as well as flashing the newest U-Boot image. I'm able to boot my system into Debian fine with just my 2GB USB stick installed, but I can't boot it with my 3TB drive. I did not create a hybrid MBR - is that required for booting a large disk with the latest U-Boot? I think I created the initial partitions using gparted. Here's what gdisk says:

GPT fdisk (gdisk) version 0.8.5

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sdb: 732566645 sectors, 2.7 TiB
Logical sector size: 4096 bytes
Disk identifier (GUID): 34534D18-412E-4358-9873-8A60D5930157
Partition table holds up to 128 entries
First usable sector is 6, last usable sector is 732566639
Partitions will be aligned on 256-sector boundaries
Total free space is 362 sectors (1.4 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1             256          488191   1.9 GiB     8200  swap
   2          488192       727446527   2.7 TiB     8300  data
   3       727446528       732566527   19.5 GiB    8300  root

I think I might have an error in my firmware settings. I'm getting a few complaints in the U-Boot log when trying to boot with both USB devices attached. I'm still able to boot with the USB stick plugged in, and then manually attaching the hard drive after boot, and mounting at that time.


U-Boot 2014.01-tld-1 (Mar 17 2014 - 21:43:49)
Pogo E02
gcc (Debian 4.6.3-14) 4.6.3
GNU ld (GNU Binutils for Debian) 2.22
Hit any key to stop autoboot:  0 
(Re)start USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 4 USB Device(s) found
       scanning usb for storage devices... EHCI timed out on TD - token=0x1f8c80
2 Storage Device(s) found
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **
** Unrecognized filesystem type **
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    129024 bytes
UBI: smallest flash I/O unit:    2048
UBI: sub-page size:              512
UBI: VID header offset:          512 (aligned 512)
UBI: data offset:                2048
UBI: attached mtd1 to ubi0
UBI: MTD device name:            "mtd=3"
UBI: MTD device size:            91 MiB
UBI: number of good PEBs:        726
UBI: number of bad PEBs:         2
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     0
UBI: available PEBs:             715
UBI: total number of reserved PEBs: 11
UBI: number of PEBs reserved for bad PEB handling: 7
UBI: max/mean erase counter: 1/1
UBIFS error (pid 0): ubifs_get_sb: cannot open "rootfs", error -22
UBIFS error (pid 0): ubifs_mount: Error reading superblock on volume 'rootfs' errno=-22!

ubifsmount - mount UBIFS volume

Usage:
ubifsmount <volume-name>
    - mount 'volume-name' volume
(Re)start USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 4 USB Device(s) found
       scanning usb for storage devices... 2 Storage Device(s) found
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
stopping USB..

NAND read: device 0 offset 0x100000, size 0x400000
 4194304 bytes read: OK
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   Linux-3.3.2-kirkwide
   Created:      2012-10-29  22:52:12 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3627768 Bytes = 3.5 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK


Starting kernel ...

angio@PogoPlug:~$ sudo fw_printenv 
ethact=egiga0
bootdelay=3
baudrate=115200
mainlineLinux=yes
console=ttyS0,115200
led_init=green blinking
led_exit=green off
led_error=orange blinking
mtdparts=mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
mtdids=nand0=orion_nand
partition=nand0,2
stdin=serial
stdout=serial
stderr=serial
rescue_set_bootargs=setenv bootargs console=$console ubi.mtd=2 root=ubi0:rootfs ro rootfstype=ubifs $mtdparts $rescue_custom_params
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
pogo_bootcmd=if fsload uboot-original-mtd0.kwb; then go 0x800200; fi
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
ubifs_mtd=3
ubifs_set_bootargs=setenv bootargs console=$console ubi.mtd=$ubifs_mtd root=ubi0:rootfs rootfstype=ubifs $mtdparts $ubifs_custom_params
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
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_device=0:1
usb_rootdelay=10
usb_set_bootargs=setenv bootargs console=$console root=$usb_root rootdelay=$usb_rootdelay rootfstype=$usb_rootfstype $mtdparts $usb_custom_params
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
bootcmd=usb start; run force_rescue_bootcmd; run ubifs_bootcmd; run usb_bootcmd; usb stop; run rescue_bootcmd; run pogo_bootcmd; reset
ethaddr=00:25:31:04:A4:5F
preboot=run if_netconsole start_netconsole
ipaddr=192.168.1.97
if_netconsole=ping $serverip
start_netconsole=setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;
serverip=192.168.1.99
usb_init=usb start; setenv usb_root LABEL=rootfs
set_bootargs_rescue=setenv bootargs console=$console ubi.mtd=2 root=ubi0:rootfs ro rootfstype=ubifs $mtdparts
bootcmd_rescue=run set_bootargs_rescue; nand read.e 0x800000 0x100000 0x400000; bootm 0x800000
bootcmd_pogo=run bootcmd_rescue
rescue_installed=1
usb_rootfstype=ext3
usb_root=/dev/sda1
arcNumber=3542



Edited 2 time(s). Last edit at 07/21/2014 06:39AM by agiorgio.
Re: Upgrading my Pogoplug
July 21, 2014 03:00PM
agiorgio,

New U-Boot supports large GPT disk, so there is no need to use hybrid MBR.

> Number  Start (sector)    End (sector)  Size      
> Code  Name
>    1             256          488191   1.9 GiB    
> 8200  swap
>    2          488192       727446527   2.7 TiB    
> 8300  data
>    3       727446528       732566527   19.5 GiB   
> 8300  root

> scanning bus 0 for devices... 4 USB Device(s)
> found
>        scanning usb for storage devices... 2
> Storage Device(s) found
> Failed to mount ext2 filesystem...
> ** Unrecognized filesystem type **
> Failed to mount ext2 filesystem...
> ** Unrecognized filesystem type **
> Wrong Image Format for bootm command

> usb_init=usb start; setenv usb_root LABEL=rootfs

1. Partition /dev/sdb3 needs to have label rootfs
tune2fs -L rootfs /dev/sdb3

2. Make sure /dev/sdb3 is formatted as Ext3

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Upgrading my Pogoplug
July 21, 2014 04:11PM
Thanks for the help so far. I changed the partition label and the filesystem label on the third partion to be "rootfs". That partition is a clone of the one I am currently booting off of. I used a gparted live CD to perform a copy+paste of it from the flash drive to the hard disk. I also expanded it from 2GB to 20GB.

How does UBIFS look for partitions? I poked around in U-Boot via netconsole, and I was able to see the hard disk on the USB bus. I didn't figure out how to get much farther than that though. I'm very familiar with the Linux userspace stuff, but U-Boot is new to me.

$ sudo tune2fs -l /dev/sdb3
tune2fs 1.42.5 (29-Jul-2012)
Filesystem volume name:   rootfs

$ sudo gdisk -l /dev/sdb

Number  Start (sector)    End (sector)  Size       Code  Name
   1             256          488191   1.9 GiB     8200  swap
   2          488192       727446527   2.7 TiB     8300  data
   3       727446528       732566527   19.5 GiB    8300  rootfs

U-Boot 2014.01-tld-1 (Mar 17 2014 - 21:43:49)
Pogo E02
gcc (Debian 4.6.3-14) 4.6.3
GNU ld (GNU Binutils for Debian) 2.22
Hit any key to stop autoboot:  0 
(Re)start USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 3 USB Device(s) found
       scanning usb for storage devices... 1 Storage Device(s) found
** File not found /rescueme **
** Unrecognized filesystem type **
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size:   131072 bytes (128 KiB)
UBI: logical eraseblock size:    129024 bytes
UBI: smallest flash I/O unit:    2048
UBI: sub-page size:              512
UBI: VID header offset:          512 (aligned 512)
UBI: data offset:                2048
UBI: attached mtd1 to ubi0
UBI: MTD device name:            "mtd=3"
UBI: MTD device size:            91 MiB
UBI: number of good PEBs:        726
UBI: number of bad PEBs:         2
UBI: max. allowed volumes:       128
UBI: wear-leveling threshold:    4096
UBI: number of internal volumes: 1
UBI: number of user volumes:     0
UBI: available PEBs:             715
UBI: total number of reserved PEBs: 11
UBI: number of PEBs reserved for bad PEB handling: 7
UBI: max/mean erase counter: 1/1
UBIFS error (pid 0): ubifs_get_sb: cannot open "rootfs", error -22
UBIFS error (pid 0): ubifs_mount: Error reading superblock on volume 'rootfs' errno=-22!

ubifsmount - mount UBIFS volume

Usage:
ubifsmount <volume-name>
    - mount 'volume-name' volume
(Re)start USB...
Re: Upgrading my Pogoplug
July 21, 2014 04:20PM
agiorgio,

Ignore the UBIFS errors, they are expected.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Upgrading my Pogoplug
July 22, 2014 06:28AM
Okay - made some more progress. I rebooted the Pogoplug back to the U-Boot interface, and left both USB devices plugged in. I was able to scan both of them, and correctly see all the partitions. The hard disk was device 0, and the flash drive was device 1.

I did see some odd behavior when rebooting and playing around with the disk. At one point it was detected as having 512-byte sectors, rather than 4KB ones, and refused to read the GPT. When I plugged the drive into my laptop, it was properly recognized. Perhaps there is a transient bug regarding drive detection in U-Boot?

PogoE02> usb part 0
 u s b   p a r t   0 

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

Part	Start LBA	End LBA		Name
	Attributes
	Type UUID
	Partition UUID
  1	0x00000100	0x000772ff	"swap"
	attrs:	0x0000000000000000
	type:	0657fd6d-a4ab-43c4-84e5-0933c84b4f4f
	uuid:	d1244262-a9ec-4b76-8de6-90273128eba3
  2	0x00077300	0x2b5bf3ff	"data"
	attrs:	0x0000000000000000
	type:	0fc63daf-8483-4772-8e79-3d69d8477de4
	uuid:	4eea64f2-38dd-491a-b650-97d4e6c01688
  3	0x2b5bf400	0x2baa13ff	"rootfs"
	attrs:	0x0000000000000000
	type:	0fc63daf-8483-4772-8e79-3d69d8477de4
	uuid:	b588afb8-0c3a-4c0c-8358-782f866fa9d3



Edited 2 time(s). Last edit at 07/22/2014 10:15AM by agiorgio.
Re: Upgrading my Pogoplug
July 22, 2014 03:05PM
agiorgio,

I would recommend to recreate the partitions after booting into your current rootfs on USB (to take advantage of the latest Debian packages). Live CD is usually old and only good for emergency usage. And I think the latest U-Boot code does GPT detection properly, perhaps something is not quite right in your drive partitions? it's best to start from scratch in Debian.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Upgrading my Pogoplug
July 25, 2014 06:24AM
Okay - I did some more tweaking to the HDD in order to try and boot off of it. I repartitioned it, and now the rootfs is /dev/sda1. I copied the existing working partition from my USB stick to the HDD, and added a swap partition at /dev/sda2. When I try to boot off the disk, however, I get the following U-Boot error messages:

2261056 bytes read in 244 ms (8.8 MiB/s)
EHCI timed out on TD - token=0xd8d80
EHCI timed out on TD - token=0xd8d80
EHCI timed out on TD - token=0xd8d80
 ** ext4fs_devread read error - block

I'm thinking that it's failing to read the root filesystem for whatever reason. I've run e2fsck on the partition, and it is definitely clean. It's also of type ext3, but there's an ext4 data partition at /dev/sda3.

Any suggestions?



Edited 1 time(s). Last edit at 07/25/2014 06:37AM by agiorgio.
Re: Upgrading my Pogoplug
July 25, 2014 02:27PM
@agiorgio,

Sounds like a problem with disk partition/file system preparation, if you have the log of what you did, please post here.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Upgrading my Pogoplug
July 25, 2014 03:42PM
I don't have a log, but I'm willing to start over with a clean Debian install. I'm willing to do anything short of destroying the data partition on that drive. Could I just create a new ext3/ext4 fs and untar a Debian rootfs onto it? If so, do you have a link to a Debian Squeeze taball I can use?
Re: Upgrading my Pogoplug
July 25, 2014 04:29PM
agiorgio Wrote:
-------------------------------------------------------
> I don't have a log, but I'm willing to start over
> with a clean Debian install. I'm willing to do
> anything short of destroying the data partition on
> that drive. Could I just create a new ext3/ext4
> fs and untar a Debian rootfs onto it? If so, do
> you have a link to a Debian Squeeze taball I can
> use?

Why would you want to run Debian Squeeze? get the latest whezy rootfs from here:
http://forum.doozan.com/read.php?2,12096

As root user (important to do every thing as root user):

- Make sure the HDD is GPT partition, no hybrid.
- Create an Ext3 partition on that drive. Label it rootfs.
- No need to use swap partition. Use a swap file later after booted successfully.
- untar the downloaded rootfs to it (the rootfs partition).
- sync and reboot.

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



Edited 1 time(s). Last edit at 07/25/2014 04:30PM by bodhi.
Re: Upgrading my Pogoplug
July 25, 2014 09:57PM
I'm starting to think that this isn't a problem with finding the rootfs, but more of an issue with talking to the disk from U-Boot. I created a new filesystem with the rootfs tarball, and I can't seem to boot of the disk. I keep getting timeout errors in my netconsole log.

USB0:   USB EHCI 1.00
scanning bus 0 for devices... 3 USB Device(s) found
       scanning usb for storage devices... 1 Storage Device(s) found
2461416 bytes read in 323 ms (7.3 MiB/s)
EHCI timed out on TD - token=0xd8d80
EHCI timed out on TD - token=0xd8d80
EHCI timed out on TD - token=0xd8d80
 ** ext4fs_devread read error - block

EDIT: After some more playing with U-Boot, I'm noticing there are times where it does not properly interrogate the USB disk. It is unable to read the partition info, and claims that it can't find the header signature.

PogoE02> usb part 1
 u s b   p a r t   1 

Partition Map for USB device 1  --   Partition Type: EFI

GUID Partition Table Header signature is wrong:0x0 != 0x5452415020494645
print_part_efi: *** ERROR: Invalid GPT ***

I rebooted back into my working Debian install, but this time I had both the USB stick and HDD plugged in. If I check the kernel dmesg, I see this interesting set of entries about my disks. I wonder why this drive is being detected as using 512-byte sectors?

[   15.280138] udevd[52]: starting version 175
[   15.299169] usb 1-1.4: Product: External USB 3.0
[   15.303812] usb 1-1.4: Manufacturer: TOSHIBA
[   15.315943] usb 1-1.4: SerialNumber: 20130717010509
[   15.394516] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[   15.433344] SCSI subsystem initialized
[   15.469301] usb-storage 1-1.2:1.0: USB Mass Storage device detected
[   15.501491] libphy: orion_mdio_bus: probed
[   15.529225] scsi0 : usb-storage 1-1.2:1.0
[   15.560164] usb-storage 1-1.4:1.0: USB Mass Storage device detected
[   15.604092] scsi1 : usb-storage 1-1.4:1.0
[   15.615623] usbcore: registered new interface driver usb-storage
[   16.527148] scsi 0:0:0:0: Direct-Access     SanDisk  U3 Cruzer Micro  3.27 PQ: 0 ANSI: 2
[   16.596359] sd 0:0:0:0: [sda] 4013710 512-byte logical blocks: (2.05 GB/1.91 GiB)
[   16.607886] scsi 1:0:0:0: Direct-Access     TOSHIBA  External USB 3.0 0201 PQ: 0 ANSI: 6
[   16.625945] sd 0:0:0:0: [sda] Write Protect is off
[   16.630782] sd 0:0:0:0: [sda] Mode Sense: 03 00 00 00
[   16.631335] sd 0:0:0:0: [sda] No Caching mode page found
[   16.639343] sd 1:0:0:0: [sdb] Very big device. Trying to use READ CAPACITY(16).
[   16.646768] sd 0:0:0:0: [sda] Assuming drive cache: write through
[   16.664488] sd 1:0:0:0: [sdb] 5860533160 512-byte logical blocks: (3.00 TB/2.72 TiB)
[   16.672963] sd 0:0:0:0: [sda] No Caching mode page found
[   16.685262] sd 0:0:0:0: [sda] Assuming drive cache: write through
[   16.691984] sd 1:0:0:0: [sdb] Write Protect is off
[   16.706138] sd 1:0:0:0: [sdb] Mode Sense: 2b 00 00 00
[   16.707988] sd 0:0:0:0: Attached scsi generic sg0 type 0
[   16.714458]  sda: sda1
[   16.719448] sd 0:0:0:0: [sda] No Caching mode page found
[   16.724809] sd 0:0:0:0: [sda] Assuming drive cache: write through
[   16.736289] sd 1:0:0:0: Attached scsi generic sg1 type 0
[   16.745908] sd 0:0:0:0: [sda] Attached SCSI removable disk
[   16.847646] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 00:25:31:04:a4:5f
[   47.666186] usb 1-1.4: reset high-speed USB device number 4 using orion-ehci
[   47.786351] sd 1:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[   47.799078] sd 1:0:0:0: [sdb] Very big device. Trying to use READ CAPACITY(16).
[   47.836848]  sdb: unknown partition table
[   47.851960] sd 1:0:0:0: [sdb] Very big device. Trying to use READ CAPACITY(16).
[   47.866972] sd 1:0:0:0: [sdb] Attached SCSI disk
[   58.210365] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)

If I unplug the drive and plug it back in again, I get this more sensible set of entries:

[  158.211931] usb 1-1.4: USB disconnect, device number 4
[  163.826309] usb 1-1.1: new high-speed USB device number 5 using orion-ehci
[  163.937931] usb 1-1.1: New USB device found, idVendor=0480, idProduct=d010
[  163.944860] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  163.952740] usb 1-1.1: Product: External USB 3.0
[  163.957761] usb 1-1.1: Manufacturer: TOSHIBA
[  163.962052] usb 1-1.1: SerialNumber: 20130717010509
[  163.972146] usb-storage 1-1.1:1.0: USB Mass Storage device detected
[  163.987265] scsi2 : usb-storage 1-1.1:1.0
[  170.948423] scsi 2:0:0:0: Direct-Access     TOSHIBA  External USB 3.0 0201 PQ: 0 ANSI: 6
[  170.966507] sd 2:0:0:0: Attached scsi generic sg1 type 0
[  170.972345] sd 2:0:0:0: [sdb] Very big device. Trying to use READ CAPACITY(16).
[  171.011270] sd 2:0:0:0: [sdb] 732566645 4096-byte logical blocks: (3.00 TB/2.72 TiB)
[  171.033475] sd 2:0:0:0: [sdb] Write Protect is off
[  171.049547] sd 2:0:0:0: [sdb] Mode Sense: 2b 00 00 00
[  171.050159] sd 2:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[  171.084983] sd 2:0:0:0: [sdb] 732566645 4096-byte logical blocks: (3.00 TB/2.72 TiB)
[  171.130093]  sdb: sdb1 sdb2 sdb3
[  171.147847] sd 2:0:0:0: [sdb] 732566645 4096-byte logical blocks: (3.00 TB/2.72 TiB)
[  171.165987] sd 2:0:0:0: [sdb] Attached SCSI disk



Edited 1 time(s). Last edit at 07/25/2014 10:15PM by agiorgio.
Re: Upgrading my Pogoplug
July 26, 2014 03:30PM
agiorgio,

Quote

> I rebooted back into my working Debian install,
> but this time I had both the USB stick and HDD
> plugged in. If I check the kernel dmesg, I see
> this interesting set of entries about my disks. I
> wonder why this drive is being detected as using
> 512-byte sectors?

I think because of this:

Quote

> [ 47.836848] sdb: unknown partition table

I would start fresh again. Backup your HDD data partition and boot with USB stick. Use parted to clear HDD your partitions and create one GPT partition. Copy your rootfs back to the HDD (cp -aR).

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
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: