Welcome! Log In Create A New Profile

Advanced

Dockstar requires uboot cli command to boot from usb stick

Posted by z3bram3n 
Dockstar requires uboot cli command to boot from usb stick
May 08, 2015 06:03PM
I got my Dockstar upgraded with the new uboot and the new Jessie from a usb stick. I have a serial cable connected to monitor the boot process. The dockstar goes to the uboot prompt when I power it up and won't automatically boot the usb stick fs.
U-Boot 2014.07-tld-2 (Sep 20 2014 - 01:10:10)
Seagate FreeAgent DockStar

SoC:   Kirkwood 88F6281_A0
DRAM:  128 MiB
WARNING: Caches not enabled
NAND:  512 MiB
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
88E1116 Initialized on egiga0
Hit any key to stop autoboot:  3  0 
DockStar>
I can type "run bootcmd" and it fires up so there doesn't seem to be a stick problem.
DockStar> run bootcmd
(Re)start USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 4 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 error: ubi_read_volume_table: the layout volume was not found
UBI error: ubi_init: cannot attach mtd1
UBI error: ubi_init: UBI error: cannot initialize UBI, error -22
UBI init error 22
1 bytes read in 242 ms (0 Bytes/s)
Found bootable drive on usb 0:1
2875844 bytes read in 327 ms (8.4 MiB/s)
6535284 bytes read in 390 ms (16 MiB/s)
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   Linux-3.18.5-kirkwood-tld-1
   Created:      2015-05-07   2:43:49 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2875780 Bytes = 2.7 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 01100000 ...
   Image Name:   initramfs-3.18.5-kirkwood-tld-1
   Created:      2015-02-19   1:49:36 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    6535220 Bytes = 6.2 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK

Starting kernel ...

The unit boots to the log in prompt and it works well:
Last login: Fri May  8 15:03:10 PDT 2015 on ttyS0
Linux debian 3.18.5-kirkwood-tld-1 #1 PREEMPT Thu Feb 5 17:58:07 PST 2015 armv5tel

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.

Of course I want the thing to go the stick by itself without the cable plugged in all the time and not requiring me to kick it off.

I don't know if this is a valid method but I typed "run usb_bootcmd" with the following results:
DockStar> run usb_bootcmd
** Bad device usb 0 **
** Bad device usb 1 **
** Bad device usb 2 **
** Bad device usb 3 **
** Bad device usb 0 **
** Bad device usb 0 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
DockStar>

Here is my fw_printenv output from Jessie:

root@debian:~# prin    fw_printenv
arcNumber=2998
baudrate=115200
bootcmd=usb start; run force_rescue_bootcmd; run ubifs_bootcmd; run usb_bootcmd; usb stop; run rescue_bootcmd; run pogo_bootcmd; reset
bootdelay=3
console=ttyS0,115200
ethact=egiga0
ethaddr=00:10:75:1a:10:54
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.11.91
led_error=orange blinking
led_exit=green off
led_init=green blinking
mainlineLinux=yes
mtdids=nand0=orion_nand
mtdparts=mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
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_set_bootargs=setenv bootargs console=$console ubi.mtd=2 root=ubi0:rootfs ro rootfstype=ubifs $mtdparts $rescue_custom_params
serverip=192.168.11.1
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
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

Thanks in advance.

Paul
Re: Dockstar requires uboot cli command to boot from usb stick
May 08, 2015 06:14PM
Here's another interesting action. When I type "boot" at the uboot prompt:
DockStar> boot
(Re)start USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 4 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 error: ubi_read_volume_table: the layout volume was not found
UBI error: ubi_init: cannot attach mtd1
UBI error: ubi_init: UBI error: cannot initialize UBI, error -22
UBI init error 22
1 bytes read in 242 ms (0 Bytes/s)
Found bootable drive on usb 0:1
2875844 bytes read in 328 ms (8.4 MiB/s)
6535284 bytes read in 390 ms (16 MiB/s)
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   Linux-3.18.5-kirkwood-tld-1
   Created:      2015-05-07   2:43:49 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2875780 Bytes = 2.7 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
But it continues on to boot to the command prompt in Jessie.

I had DavyGravy's Macplug installed on here before.

Paul
Re: Dockstar requires uboot cli command to boot from usb stick
May 08, 2015 06:23PM
Paul,

If you don't hit any key during boot then u-boot boot is automatically executed. Is that what you did so it stopped?

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



Edited 1 time(s). Last edit at 05/08/2015 06:25PM by bodhi.
Re: Dockstar requires uboot cli command to boot from usb stick
May 08, 2015 09:02PM
No, it stops all by itself. If I type "reboot" from the serial console it ends up at the uboot prompt.
[ ok ..] Unmounting temporary filesystems...done.
[ ok ] Deactivating swap...done.
�[info] Will now restart.
[  154.302535] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[  154.308859] reboot: Restarting system


U-Boot 2014.07-tld-2 (Sep 20 2014 - 01:10:10)
Seagate FreeAgent DockStar

SoC:   Kirkwood 88F6281_A0
DRAM:  128 MiB
WARNING: Caches not enabled
NAND:  512 MiB
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
88E1116 Initialized on egiga0
Hit any key to stop autoboot:  0 
DockStar> 

Re: Dockstar requires uboot cli command to boot from usb stick
May 08, 2015 09:18PM
Paul,

Boot without serial console attached (unplug the module converter if you don't want to disconnect the wire/header to the Pogo). See if it boots completely into Debian.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Dockstar requires uboot cli command to boot from usb stick
May 08, 2015 09:28PM
Ok bodhi, you really are going to get off that easy tonight! It booted to the usb drive.
So there is nothing going on here?
Paul
PS Is there any way to validate an install other than using it without errors?
Re: Dockstar requires uboot cli command to boot from usb stick
May 08, 2015 09:40PM
Paul,

> Ok bodhi, you really are going to get off that
> easy tonight! It booted to the usb drive.
> So there is nothing going on here?

:)) There was nothing wrong. It must have been that your serial console was noisy, which resulted in an "any" keypress that u-boot detected and stopped. So check your serial wires, make sure they are stably connected.

> PS Is there any way to validate an install other
> than using it without errors?

Look at your dmesg to make sure there is no error. And also look for anything strange using logread.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Dockstar requires uboot cli command to boot from usb stick
May 08, 2015 10:48PM
That's some very good troubleshooting. I noticed the noise from the serial port but I never put the two together that they would cause an errant signal. But so many times I have had to re-type a command because the noise added extra characters!

Paul
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: