Welcome! Log In Create A New Profile

Advanced

Problem with 2017.07 U-Boot for SheevaPlug

Posted by rayknight 
Problem with 2017.07 U-Boot for SheevaPlug
December 03, 2017 01:31AM
After installing the new 2017.07 U-Boot on a SheevaPlug I was having trouble booting and I discovered the issue is a missing "load" command.

Sheevaplug> load usb 0:1 $load_uimage_addr /boot/uImage
Unknown command 'load' - try 'help'
Sheevaplug> help
?       - alias for 'help'
base    - print or set address offset
bdinfo  - print Board Info structure
boot    - boot default, i.e., run 'bootcmd'
bootd   - boot default, i.e., run 'bootcmd'
bootefi - Boots an EFI payload from memory
bootelf - Boot from an ELF image in memory
bootm   - boot application image from memory
bootp   - boot image via network using BOOTP/TFTP protocol
bootvx  - Boot vxWorks from an ELF image
bootz   - boot Linux zImage image from memory
chpart  - change active partition
cmp     - memory compare
coninfo - print console devices and information
cp      - memory copy
crc32   - checksum calculation
date    - get/set/reset date & time
dhcp    - boot image via network using DHCP/TFTP protocol
diskboot- boot from IDE device
dns     - lookup the IP of a hostname
echo    - echo args to console
editenv - edit environment variable
env     - environment handling commands
exit    - exit script
ext2load- load binary file from a Ext2 filesystem
ext2ls  - list files in a directory (default /)
ext4load- load binary file from a Ext4 filesystem
ext4ls  - list files in a directory (default /)
ext4size- determine a file's size
false   - do nothing, unsuccessfully
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls   - list files in a directory (default /)
fatsize - determine a file's size
fdt     - flattened device tree utility commands
fsinfo  - print information about jffs filesystems
fsload  - load binary file from a jffs filesystem image
fsls    - list jffs files in a directory (default /)
go      - start application at address 'addr'
gpio    - query and control gpio pins
gpt     - GUID Partition Table
help    - print command description/usage
ide     - IDE sub-system
iminfo  - print header information for application image
imxtract- extract a part of a multi-image
itest   - return true/false on integer compare
loadb   - load binary file over serial line (kermit mode)
loads   - load S-Record file over serial line
loadx   - load binary file over serial line (xmodem mode)
loady   - load binary file over serial line (ymodem mode)
loop    - infinite loop on address range
md      - memory display
mii     - MII utility commands
mm      - memory modify (auto-incrementing address)
mmc     - MMC sub system
mmcinfo - display MMC info
mtdparts- define flash/nand partitions
mw      - memory write (fill)
nand    - NAND sub-system
nboot   - boot from NAND device
nfs     - boot image via network using NFS protocol
nm      - memory modify (constant address)
ping    - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
reset   - Perform RESET of the CPU
run     - run commands in an environment variable
saveenv - save environment variables to persistent storage
setenv  - set environment variables
setexpr - set environment variable as the result of eval expression
showvar - print local hushshell variables
sleep   - delay execution for some time
sntp    - synchronize RTC via network
source  - run script from memory
test    - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
true    - do nothing, successfully
ubi     - ubi commands
ubifsload- load file from an UBIFS filesystem
ubifsls - list files in a directory
ubifsmount- mount UBIFS volume
ubifsumount- unmount UBIFS volume
usb     - USB sub-system
usbboot - boot from USB device
version - print monitor, compiler and linker version

I'm able to get around the problem by replacing anywhere load is used in the u-boot environment with ext4load but this was extremely inconvenient!

Ray
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 03, 2017 02:47PM
Ray,

Power up, interrupt serial consle and,

ver
help
Then post the entire serial console log up to this point.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 03, 2017 08:13PM
bodhi Wrote:
-------------------------------------------------------
> Ray,
>
> Power up, interrupt serial consle and,
>
>
> ver
> help
>
> Then post the entire serial console log up to this
> point.


U-Boot 2017.07-tld-1 (Sep 05 2017 - 00:58:14 -0700)
Marvell-Sheevaplug

SoC:   Kirkwood 88F6281_A1
DRAM:  512 MiB
WARNING: Caches not enabled
NAND:  512 MiB
MMC:   MVEBU_MMC: 0
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
88E1116 Initialized on egiga0
Hit any key to stop autoboot:  0 
Sheevaplug> ver

U-Boot 2017.07-tld-1 (Sep 05 2017 - 00:58:14 -0700)
Marvell-Sheevaplug
gcc (Debian 6.3.0-18) 6.3.0 20170516
GNU ld (GNU Binutils for Debian) 2.28
Sheevaplug> help
?       - alias for 'help'
base    - print or set address offset
bdinfo  - print Board Info structure
boot    - boot default, i.e., run 'bootcmd'
bootd   - boot default, i.e., run 'bootcmd'
bootefi - Boots an EFI payload from memory
bootelf - Boot from an ELF image in memory
bootm   - boot application image from memory
bootp   - boot image via network using BOOTP/TFTP protocol
bootvx  - Boot vxWorks from an ELF image
bootz   - boot Linux zImage image from memory
chpart  - change active partition
cmp     - memory compare
coninfo - print console devices and information
cp      - memory copy
crc32   - checksum calculation
date    - get/set/reset date & time
dhcp    - boot image via network using DHCP/TFTP protocol
diskboot- boot from IDE device
dns     - lookup the IP of a hostname
echo    - echo args to console
editenv - edit environment variable
env     - environment handling commands
exit    - exit script
ext2load- load binary file from a Ext2 filesystem
ext2ls  - list files in a directory (default /)
ext4load- load binary file from a Ext4 filesystem
ext4ls  - list files in a directory (default /)
ext4size- determine a file's size
false   - do nothing, unsuccessfully
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls   - list files in a directory (default /)
fatsize - determine a file's size
fdt     - flattened device tree utility commands
fsinfo  - print information about jffs filesystems
fsload  - load binary file from a jffs filesystem image
fsls    - list jffs files in a directory (default /)
go      - start application at address 'addr'
gpio    - query and control gpio pins
gpt     - GUID Partition Table
help    - print command description/usage
ide     - IDE sub-system
iminfo  - print header information for application image
imxtract- extract a part of a multi-image
itest   - return true/false on integer compare
loadb   - load binary file over serial line (kermit mode)
loads   - load S-Record file over serial line
loadx   - load binary file over serial line (xmodem mode)
loady   - load binary file over serial line (ymodem mode)
loop    - infinite loop on address range
md      - memory display
mii     - MII utility commands
mm      - memory modify (auto-incrementing address)
mmc     - MMC sub system
mmcinfo - display MMC info
mtdparts- define flash/nand partitions
mw      - memory write (fill)
nand    - NAND sub-system
nboot   - boot from NAND device
nfs     - boot image via network using NFS protocol
nm      - memory modify (constant address)
ping    - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
reset   - Perform RESET of the CPU
run     - run commands in an environment variable
saveenv - save environment variables to persistent storage
setenv  - set environment variables
setexpr - set environment variable as the result of eval expression
showvar - print local hushshell variables
sleep   - delay execution for some time
sntp    - synchronize RTC via network
source  - run script from memory
test    - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
true    - do nothing, successfully
ubi     - ubi commands
ubifsload- load file from an UBIFS filesystem
ubifsls - list files in a directory
ubifsmount- mount UBIFS volume
ubifsumount- unmount UBIFS volume
usb     - USB sub-system
usbboot - boot from USB device
version - print monitor, compiler and linker version
Sheevaplug>

Ray
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 04, 2017 04:24AM
Hi Ray,

Thanks for reporting this problem. Indeed, the mainline code does not have load command. And I missed this patch (for the Sheevaplug only :) Other boxes should be OK.

This load command was available to all Marvell plugs. However, at some point in mainline someone mistakenly removed it from Sheevaplug (indirectly). So I need to patch it back.

Please test this version (attached).

You can kwboot it, change the u-boot envs back to use "load", and then boot.

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



Edited 2 time(s). Last edit at 12/04/2017 04:57PM by bodhi.
Attachments:
open | download - uboot.2017.07-tld-2.sheevaplug.mtd0.kwb (512 KB)
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 05, 2017 04:44PM
Quote
bodhi
> Please test this version (attached).
>
> You can kwboot it, change the u-boot envs back to
> use "load", and then boot.

Since I can't get access to my Sheevaplug now, could someone test this u-boot image uboot.2017.07-tld-2.sheevaplug.mtd0.kwb attached above?

Thanks!

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 06, 2017 12:42AM
Bodhi, the Sheevaplug is one of the units that does not support kwboot. However since I have multiple Sheevaplugs and a JTAG unit I have tested with the following results:

U-Boot 2017.07-tld-2 (Dec 04 2017 - 02:00:45 -0800)
Marvell-Sheevaplug

SoC:   Kirkwood 88F6281_A1
DRAM:  512 MiB
WARNING: Caches not enabled
NAND:  512 MiB
MMC:   MVEBU_MMC: 0
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
88E1116 Initialized on egiga0
Hit any key to stop autoboot:  0 
Sheevaplug> help
?       - alias for 'help'
base    - print or set address offset
bdinfo  - print Board Info structure
boot    - boot default, i.e., run 'bootcmd'
bootd   - boot default, i.e., run 'bootcmd'
bootefi - Boots an EFI payload from memory
bootelf - Boot from an ELF image in memory
bootm   - boot application image from memory
bootp   - boot image via network using BOOTP/TFTP protocol
bootvx  - Boot vxWorks from an ELF image
bootz   - boot Linux zImage image from memory
chpart  - change active partition
cmp     - memory compare
coninfo - print console devices and information
cp      - memory copy
crc32   - checksum calculation
date    - get/set/reset date & time
dhcp    - boot image via network using DHCP/TFTP protocol
diskboot- boot from IDE device
dns     - lookup the IP of a hostname
echo    - echo args to console
editenv - edit environment variable
env     - environment handling commands
exit    - exit script
ext2load- load binary file from a Ext2 filesystem
ext2ls  - list files in a directory (default /)
ext4load- load binary file from a Ext4 filesystem
ext4ls  - list files in a directory (default /)
ext4size- determine a file's size
false   - do nothing, unsuccessfully
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls   - list files in a directory (default /)
fatsize - determine a file's size
fdt     - flattened device tree utility commands
fsinfo  - print information about jffs filesystems
fsload  - load binary file from a jffs filesystem image
fsls    - list jffs files in a directory (default /)
fstype  - Look up a filesystem type
go      - start application at address 'addr'
gpio    - query and control gpio pins
gpt     - GUID Partition Table
help    - print command description/usage
ide     - IDE sub-system
iminfo  - print header information for application image
imxtract- extract a part of a multi-image
itest   - return true/false on integer compare
load    - load binary file from a filesystem
loadb   - load binary file over serial line (kermit mode)
loads   - load S-Record file over serial line
loadx   - load binary file over serial line (xmodem mode)
loady   - load binary file over serial line (ymodem mode)
loop    - infinite loop on address range
ls      - list files in a directory (default /)
md      - memory display
mii     - MII utility commands
mm      - memory modify (auto-incrementing address)
mmc     - MMC sub system
mmcinfo - display MMC info
mtdparts- define flash/nand partitions
mw      - memory write (fill)
nand    - NAND sub-system
nboot   - boot from NAND device
nfs     - boot image via network using NFS protocol
nm      - memory modify (constant address)
ping    - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
reset   - Perform RESET of the CPU
run     - run commands in an environment variable
save    - save file to a filesystem
saveenv - save environment variables to persistent storage
setenv  - set environment variables
setexpr - set environment variable as the result of eval expression
showvar - print local hushshell variables
size    - determine a file's size
sleep   - delay execution for some time
sntp    - synchronize RTC via network
source  - run script from memory
test    - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
true    - do nothing, successfully
ubi     - ubi commands
ubifsload- load file from an UBIFS filesystem
ubifsls - list files in a directory
ubifsmount- mount UBIFS volume
ubifsumount- unmount UBIFS volume
usb     - USB sub-system
usbboot - boot from USB device
version - print monitor, compiler and linker version
Sheevaplug>

Note the load command is now present! And I even tested for confirmation:

Sheevaplug> load $bootdev $device $load_dtb_addr $dtb_file
10506 bytes read in 35 ms (293 KiB/s)

So I believe it is safe to publish this version as the latest correct image for the Sheevaplug.

Thank you,
Ray
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 06, 2017 02:24AM
Ray,

> Bodhi, the Sheevaplug is one of the units that
> does not support kwboot.

Yes I've mixed this up with the Dreamplug!


> Note the load command is now present! And I even
> tested for confirmation:
>
>
> Sheevaplug> load $bootdev $device $load_dtb_addr
> $dtb_file
> 10506 bytes read in 35 ms (293 KiB/s)
>
>
> So I believe it is safe to publish this version as
> the latest correct image for the Sheevaplug.

Cool! thanks for testing.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 06, 2017 04:45PM
I've released uboot.2017.07-tld-2.sheevaplug:

https://forum.doozan.com/read.php?3,12381,44539#msg-44539

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 07, 2017 05:54AM
rayknight Wrote:
-------------------------------------------------------
> Bodhi, the Sheevaplug is one of the units that
> does not support kwboot. However since I have
> multiple Sheevaplugs and a JTAG unit I have tested
> with the following results:
> Ray

Apologies for this unrelated post... You mention a JTAG unit.. What are they?
I've heard of them but no idea what they really are and wondered if I could use one to access my GoFlexHome unit, which has stopped responding to kwboot and shows no sign of life after a recent U-Boot flash.
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 07, 2017 07:56PM
balanga Wrote:
>
> Apologies for this unrelated post... You mention a
> JTAG unit.. What are they?
> I've heard of them but no idea what they really
> are and wondered if I could use one to access my
> GoFlexHome unit, which has stopped responding to
> kwboot and shows no sign of life after a recent
> U-Boot flash.

Some of the Sheevaplug units come with a built in microUSB port that exposes serial and JTAG. I also have a GuruPlug JTAG Board that is still listed for sale at GlobalScale's website for $39. I got lucky on ebay and acquired a couple of GlobalScale Dreamplugs that came with the JTAG boards. There are other JTAG boards that would work and there are even instructions available elsewhere on using the GPIO output of a Raspberry PI for JTAG.

Ray
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 08, 2017 02:28AM
This is my favorite JTAG info from ReDox

http://plume.redox.ws/article13/dockstar-debricking-jtag-with-buspirate:

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 08, 2017 02:34AM
balanga,

> GoFlexHome unit, which has stopped responding to
> kwboot and shows no sign of life after a recent
> U-Boot flash.

As I and feas have mentioned several times, before you flash u-boot, post the commands here for review before you actually doing it. You probably had a typo somewhere.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 08, 2017 02:48AM
bodhi Wrote:
-------------------------------------------------------
> This is my favorite JTAG info from ReDox
>
> http://plume.redox.ws/article13/dockstar-debricking-jtag-with-buspirate:


Error 404 :(
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 08, 2017 02:49AM
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 09, 2017 05:36AM
bodhi Wrote:
-------------------------------------------------------
> Try this:
>
> http://plume.redox.ws/article13/dockstar-debricking-jtag-with-buspirate

That's better.

Not knowing anything about JTAG I have no idea about what this means:
Connect the BusPirate and the Serial Adapter to the Dockstar's JTAG header

Does the GoFlexHome have a JTAG header? I don't know what to look for... Are there any pictures/diagrams which illustrate how to make this connection?
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 09, 2017 04:50PM
I have no pic for GF Home.

Buy here is a good pic for iConnect:
https://wiki.openwrt.org/toh/iomega/iconnect

All these Marvell plugs JTAG header are more less identical, which is a standard ARM JTAG 20 pin.

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



Edited 1 time(s). Last edit at 12/09/2017 04:53PM by bodhi.
Re: Problem with 2017.07 U-Boot for SheevaPlug
December 10, 2017 05:23AM
bodhi Wrote:
-------------------------------------------------------
> I have no pic for GF Home.
>
> Buy here is a good pic for iConnect:
> https://wiki.openwrt.org/toh/iomega/iconnect
>
> All these Marvell plugs JTAG header are more less
> identical, which is a standard ARM JTAG 20 pin.

Here's a picture of a GoFlexHome base unit:

https://images.anandtech.com/doci/3955/baseunitinside_575px.jpg

I don't see anything like that shown above, only the 10 pin holes where I connect the serial adapter in the bottom right hand corner.
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: