Welcome! Log In Create A New Profile

Advanced

UART Booting HowTo for Selected Kirkwood Devices

Posted by davygravy 
Re: UART Booting HowTo for Selected Kirkwood Devices
February 27, 2015 03:19AM
megov Wrote:
-------------------------------------------------------
> I think, it is ignore the handshake. The original
> kwboot stuck in a loop,
> waiting for NAK (as I can suppose from code). I
> add some debug
> hexdump to stderr code into kwboot_tty_recv and
> can see the same
> stock uBoot startup log. Nothing different from a
> normal boot.

Then it does not seem to have UART booting support. I could not find Marvell Docs for 88F6282 either when I looked for it a few months ago. I think the GPL source might give some clues (might not in the u-boot code proper, but might be in documentation).

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: UART Booting HowTo for Selected Kirkwood Devices
February 28, 2015 12:06PM
Hi!

Huh! I'm really ready to dig stock uBoot disassembly! ;)

And you're right - I dont find any Marvell Armada docs also.

But there is one thing I hope to be true: Armada 300/310 is more
like marketing re-naming, and >95% of specs is identical to kirkwood.
The main difference is ddr3 instead of ddr2.

The 0x200 block from mtd0 is identical to kirkwood - 32 bytes of main
header and 480 bytes of initial register content, more or less similar
to kirkwood *.cfg. Same DRAM registers, same window registers,
slightly different values (ddr3 differs).

I begin to think, that my ix2-dl is a hard thing! :D
Re: UART Booting HowTo for Selected Kirkwood Devices
February 28, 2015 01:47PM
megov,

> The 0x200 block from mtd0 is identical to kirkwood
> - 32 bytes of main
> header and 480 bytes of initial register content,
> more or less similar
> to kirkwood *.cfg. Same DRAM registers, same
> window registers,
> slightly different values (ddr3 differs).

Perhaps it is like the NSA325. WarheadsSE u-boot build confirmed this. We used the 88F6281 and a set of DDR3 values for it.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: UART Booting HowTo for Selected Kirkwood Devices
February 28, 2015 09:16PM
bodhi Wrote:
-------------------------------------------------------
> megov Wrote:
> --------------------------------------------------
> -----
> > I think, it is ignore the handshake. The
> original
> > kwboot stuck in a loop,
> > waiting for NAK (as I can suppose from code). I
> > add some debug
> > hexdump to stderr code into kwboot_tty_recv and
> > can see the same
> > stock uBoot startup log. Nothing different from
> a
> > normal boot.
>
> Then it does not seem to have UART booting
> support. I could not find Marvell Docs for 88F6282
> either when I looked for it a few months ago. I
> think the GPL source might give some clues (might
> not in the u-boot code proper, but might be in
> documentation).

From Marvell's website it appears that Armada 300(88F6282)/Armada 310(88F6283) documentation requires an NDA with Marvell. :-(

Ray
Re: UART Booting HowTo for Selected Kirkwood Devices
February 28, 2015 10:27PM
megov Wrote:
-------------------------------------------------------
> I begin to think, that my ix2-dl is a hard thing!
> :D

Having recently looked at the specs on that device (impressive) and with it being the cheapest dual bay diskless NAS I have seen ($60 at Amazon right now), if you could figure out how to "Debianize" it that would be quite a feat :)

Specs: http://www.lenovo.com/shop/emea/content/pdf/storage/product%20release%20information%20%28pri%29/pri_lenovo_iomega_ix2_2bay_en.pdf



Edited 1 time(s). Last edit at 03/01/2015 06:48AM by LeggoMyEggo.
@bodhi @megov @rayknight

If You need some help with 88F6282 a0 i try to help !
I have one damaged DS212 ( synology ) with 88F6282 A0 onboard, but communication on UART is OK
I try to run kwboot with u-boot.kwb ( from complete with kwboot ) but my NAS after send file only suspend :( and only reset from power supply can help.
I don't have idea how to compile oryginaly u-boot from Synology GPL code.

If You need help with testing , i can help with my pleasure.

With best regards,
Robert

Sorry for my english, it's not my native language.

rayknight Wrote:
-------------------------------------------------------
> bodhi Wrote:
> --------------------------------------------------
> -----
> > megov Wrote:
> >
> --------------------------------------------------
>
> > -----
> > > I think, it is ignore the handshake. The
> > original
> > > kwboot stuck in a loop,
> > > waiting for NAK (as I can suppose from code).
> I
> > > add some debug
> > > hexdump to stderr code into kwboot_tty_recv
> and
> > > can see the same
> > > stock uBoot startup log. Nothing different
> from
> > a
> > > normal boot.
> >
> > Then it does not seem to have UART booting
> > support. I could not find Marvell Docs for
> 88F6282
> > either when I looked for it a few months ago. I
> > think the GPL source might give some clues
> (might
> > not in the u-boot code proper, but might be in
> > documentation).
>
> From Marvell's website it appears that Armada
> 300(88F6282)/Armada 310(88F6283) documentation
> requires an NDA with Marvell. :-(
>
> Ray
Re: UART Booting HowTo for Selected Kirkwood Devices
July 20, 2016 12:43AM
davygravy Wrote:
> 1. Compatible Kirkwood devices: Any
> Kirkwood SoC that has a BootROM version 1.21
> (perhaps others?)
> Known working (please post if you can
> confirm other working devices):
>
    >
  • Seagate GoFlex Net/Home
    >
  • Pogoplug V4/Mobile
    >
  • Zyxel NSA320
    >
  • RaidSonic ICYBox NAS6220/NAS6210
    >
>

The Netgear Stora MS2110 can be added to the list of devices that can successfully be UART booted with kwboot. When recovering my Stora I used this 5 or 6 times successfully.

> Non-working (post if you know of others, or
> if you find a workaround!):
>
    >
  • Pogoplug V2/E02
    >
  • Seagate Dockstar
    >
  • SheevaPlug
    >
>

Non-working device at present is the Cisco ON100-K9 which has an 88F6282 A1 CPU running @ 1600Mhz L2 running @ 533Mhz. It consistently responds with:

root@Pogoplug-Pro:~/work# kwboot -t /dev/ttyUSB0 -b u-boot-db88f6282bp_400ddr3db_uart.bin
Sending boot message. Please reboot the target...-
Sending boot image...
0 % [+xmodem: Protocol error
root@Pogoplug-Pro:~/work#

I'm trying to use the kwboot method as I'm not able to determine how to stop autoboot with the stock U-Boot.
Re: UART Booting HowTo for Selected Kirkwood Devices
July 20, 2016 02:44AM
ray,

Netgear Stora is already on my list in the u-boot thread:

Quote

The latest u-boot image released here should be used for UART booting, if your box is the type that supports it (these do not: Dockstar, Pogo E02, iConnect).


Was u-boot-db88f6282bp_400ddr3db_uart.bin compiled with UART option?

Try:

After executing
kwboot -t /dev/ttyUSB0 -b u-boot-db88f6282bp_400ddr3db_uart.bin
and see
xmodem: Protocol error
Use the up-arrow to recall the command and run it again. Do this as many time as you can until it connects (if the bootROM supports UART booting, it will).

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 07/20/2016 02:52AM by bodhi.
Re: UART Booting HowTo for Selected Kirkwood Devices
July 21, 2016 12:38AM
Build process for u-boot for Cisco ON100-K9 creates two files:

u-boot-db88f6282bp_400ddr3db_nand.bin
u-boot-db88f6282bp_400ddr3db_uart.bin

Nand is the image for booting from nand and uart is supposed to be image for booting from uart. Source is based from U-Boot 1.1.4 and the uart.bin image does have the appropriate 0x69 value at byte 0.

Trying your suggestion above I went through over 50 iterations of up-arrow recall command and run again with no success. When booting the internal U-Boot over serial the output 'Hit any key to stop autoboot:' appears to recognize the keyboard input, but does not stop the autoboot. The serial output is very noisy (i.e. lots of non-ASCII characters) and even shows noisy output at times when the power switch is off and even when no power is attached! I thought it might be an issue with the USB-TTL board or wires I was using, but I've tried 3 different USB-TTL boards and different wires that have never given issues with any other systems I've used them with.

Frustrating!!!!
Re: UART Booting HowTo for Selected Kirkwood Devices
July 21, 2016 01:00AM
OK, I've now located another serial port on the board! This one has clean output and successfully UART booted! The 4-pin header on the board is problematic. But just behind it are 4 holes with the pins in the opposite orientation that successfully UART booted the system!! I am also able to stop the NAND u-boot code after the 'Hit any key to stop autoboot' message. Below is the U-Boot output:

         __  __                      _ _
        |  \/  | __ _ _ ____   _____| | |
        | |\/| |/ _` | '__\ \ / / _ \ | |
        | |  | | (_| | |   \ V /  __/ | |
        |_|  |_|\__,_|_|    \_/ \___|_|_|
 _   _     ____              _
| | | |   | __ )  ___   ___ | |_ 
| | | |___|  _ \ / _ \ / _ \| __| 
| |_| |___| |_) | (_) | (_) | |_ 
 \___/    |____/ \___/ \___/ \__| 
 ** MARVELL BOARD: DB-88F6282A-BP LE 

U-Boot 1.1.4 (Feb 22 2011 - 14:06:09) Marvell version: 3.5.9 - Cisco Plasma

U-Boot code: 00600000 -> 0067FFF0  BSS: -> 006D2340

Soc: 88F6282 A1CPU running @ 1600Mhz L2 running @ 533Mhz
SysClock = 400Mhz , TClock = 200Mhz 

DRAM (DDR3) CAS Latency = 6 tRP = 6 tRAS = 15 tRCD=6
DRAM CS[0] base 0x00000000   size 256MB 
DRAM CS[1] base 0x10000000   size 256MB 
DRAM Total size 512MB  16bit width
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:512 MB
Flash:  0 kB

CPU : Marvell Feroceon (Rev 1)

Streaming disabled 
Write allocate disabled

Module 0 is RGMII

USB 0: host mode
PEX 0: interface detected no Link.
PEX 1: interface detected no Link.
Net:   egiga0 [PRIME], egiga1
Hit any key to stop autoboot:  0 
Plasma>>  help^M
?       - alias for 'help'
SatR - sample at reset sub-system, relevent for DB only
autoscr - run script from memory
base    - print or set address offset
boot    - boot default, i.e., run 'bootcmd'
bootd   - boot default, i.e., run 'bootcmd'
bootext2    dev:boot_part1,boot_part2 addr boot_image linux_dev_name 
bootm   - boot application image from memory
bootp   - boot image via network using BootP/TFTP protocol
bubt    - Burn an image on the Boot Nand Flash.
chpart  - change active partition
cmp     - memory compare
cmpm    - Compare Memory
cp      - memory copy
cpumap - Display CPU memory mapping settings.
crc32   - checksum calculation
date    - get/set/reset date & time
dcache  - enable or disable data cache
dclk    - Display the MV device CLKs.
dhcp    - invoke DHCP client to obtain IP/boot params
diskboot- boot from IDE device
echo    - echo args to console
eeprom  - EEPROM sub-system
Engineering Test Commanderase   - erase FLASH memory
ext2load- load binary file from a Ext2 filesystem
ext2ls  - list files in a directory (default /)
factory - install Cisco manufacturing variables into persistent storage
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls   - list files in a directory (default /)
fi      - Find value in the memory.
flinfo  - print FLASH memory information
fsinfo  - print information about filesystems
fsload  - load binary file from a filesystem image
g       - start application at cached address 'addr'(default addr 0x40000)
go      - start application at address 'addr'
help    - print online help
icache  - enable or disable instruction cache
icrc32  - checksum calculation
ide     - IDE sub-system
iloop   - infinite loop on address range
imd     - i2c memory display
iminfo  - print header information for application image
imm[.b, .s, .w, .l]     - i2c memory modify (auto-incrementing)
imw     - memory write (fill)
inm     - memory modify (constant address)
iprobe  - probe to discover valid I2C chip addresses
ir      - reading and changing MV internal register values.
loop    - infinite loop on address range
ls      - list files in a directory (default /)
map     - Diasplay address decode windows
md      - memory display
me      - PCI master enable
Manufacturing Test Commandmm      - memory modify (auto-incrementing)
mmcinit - init mmc card
mp      - map PCI BAR
mtdparts- define flash/nand partitions
mtest   - simple RAM test
mw      - memory write (fill)
nand                   - NAND sub-system
nboot   - boot from NAND device
nbubt   - Burn a boot loader image on the Boot Nand Flash.
nm      - memory modify (constant address)
pci     - list and access PCI Configuration Space
phyRead - Read PCI-E Phy register
pciePhyWrite    - Write PCI-E Phy register
phyRead - Read Phy register
phyWrite        - Write Phy register
ping    - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
protect - enable or disable FLASH write protection
rarpboot- boot image via network using RARP/TFTP protocol
rcvr    - Satrt recovery process (Distress Beacon with TFTP server)
reset   - Perform RESET of the CPU
resetenv        - Return all environment variable to default.
run     - run commands in an environment variable
saveenv - save environment variables to persistent storage
se      - PCI Slave enable
setenv  - set environment variables
sflash  - read, write or erase the external SPI Flash.
sg      - scanning the PHYs status
sp      - Scan PCI bus.
switchRegRead   - Read switch register
switchRegWrite  - Write switch register
Temp    - read chip Tj temp
tftpboot- boot image via network using TFTP protocol
usb     - USB sub-system
usbboot - boot from USB device
version - print monitor version
Plasma>>
Plasma>> printenv^M
bootcmd=fsload 0x400000 boot.img;autoscr 0x400000
baudrate=115200
loads_echo=0
ipaddr=192.168.100.4
serverip=64.101.132.99
rootpath=/srv/ubuntu
gatewayip=192.168.100.1
netmask=255.255.255.0
mtdparts=mtdparts=nand_mtd:2m(uBoot)ro,2m(dualboot),6m(kernel1),8m(rootfs1),6m(kernel2),8m(rootfs2),470m(datafs),-(misc)
mtdids=nand0=nand_mtd
partition=nand0,1
mtddevnum=1
mtddevname=dualboot
console=console=ttyS0,115200 max_loop=64
bootargs_end=ip=::::DB88FXX81:eth0:none rootfstype=jffs2
nandEcc=1bit
run_diag=yes
MALLOC_len=1
ethprime=egiga0
bootargs_root=root=/dev/nfs rw
image_name=uImage
standalone=fsload 0x2000000 $(image_name);setenv bootargs $(console) root=/dev/mtdblock0 rw ip=$(ipaddr):$(serverip)$(bootargs_end) $(mvPhoneConfig); bootm 0x2000000;
lcd0_enable=0
lcd0_params=640x480-16@60
ethmtu=1500
eth1mtu=1500
mvPhoneConfig=mv_phone_config=dev[0]:fxs,dev[1]:fxo
mvNetConfig=mv_net_config=(00:11:88:0f:62:81,0:1:2:3),mtu=1500
usb0Mode=host
yuk_ethaddr=00:00:00:EE:51:81
netretry=no
rcvrip=169.254.100.100
loadaddr=0x02000000
autoload=no
image_multi=yes
ethact=egiga0
ethaddr=64:00:F1:20:E0:DA
eth1addr=64:00:F1:20:E0:DB
serialNo=DNI15300AL0
hwVer=ON100-K9_V01
stdin=serial
stdout=serial
stderr=serial
mainlineLinux=no
enaMonExt=no
enaCpuStream=no
enaWrAllo=no
pexMode=RC
disL2Cache=yes
setL2CacheWT=yes
disL2Prefetch=yes
enaICPref=yes
enaDCPref=yes
sata_dma_mode=yes
netbsd_en=no
vxworks_en=no
bootdelay=3
disaMvPnp=no
enaAutoRecovery=yes
pcieTune=no
pcieTune1=no

Environment size: 1470/131068 bytes
Plasma>>
Plasma>> usb^M
Usage:
usb     - USB sub-system

Plasma>> usb start^M
(Re)start USB...
USB:   scanning bus for devices... 1 USB Device(s) found
Waiting for storage device(s) to settle before scanning...
0 Storage Device(s) found
Plasma>>Plasma>> mmcinit^M
SDHC found. Card desciption is:
Manufacturer:       0x27, OEM "PH"
Product name:       "SD04G", revision 2.0
Serial number:      2084250414
Manufacturing date: 10/2010
Capacity :          3796 MB
Total blocks:       7774208 ( 512 bytes per block)
CRC:                0x00, b0 = 0
Plasma>>

usb start command was run with a 4GB Flash drive with debian installed in the USB slot. mmcinit command as can be seen had a 4GB SDHC card. Default boot reformats internal flash then attempts multiple times to download a recovery file with the following messages repeated numerous times:

ap_failSafeUpdate: .... Format Completed 
ap_failSafeUpdate: Attempt #1 to retrieve http://failsafe.imageboot.com/failsafe/failsafe.html?model=ON100&mac=64:00:F1:20:E0:DA&serial=DNI15300AL0&pid=ON100-K9&vid=01 
ap_failSafeUpdate: Bundle download was successful - in terms of a successful transfer ...  
ap_failSafeUpdate: Downloaded the bundle fine, but the tar file is corrupt 
ap_failSafeUpdate: Failed attempt 1 to download the recovery file! 
ap_failSafeUpdate: Attempt #2 to retrieve http://failsafe.imageboot.com/failsafe/failsafe.html?model=ON100&mac=64:00:F1:20:E0:DA&serial=DNI15300AL0&pid=ON100-K9&vid=01 
ap_failSafeUpdate: Bundle download was successful - in terms of a successful transfer ...  
ap_failSafeUpdate: Downloaded the bundle fine, but the tar file is corrupt 
ap_failSafeUpdate: Failed attempt 2 to download the recovery file!

THE URL ABOVE RESOLVES TO THE sso anbtr malware PAGE!!!!

The other strange thing is that the source bundle from Cisco contains the source for U-Boot, but no kernel source! Any idea which dtb file I should attempt to boot with? I'm assuming I'll have to boot from SDHC as the USB does not appear to be recognized.
Re: UART Booting HowTo for Selected Kirkwood Devices
July 21, 2016 01:02AM
> When booting the internal
> U-Boot over serial the output 'Hit any key to stop
> autoboot:' appears to recognize the keyboard
> input, but does not stop the autoboot.

OK then:

1. Boot into stock OS and look at u-boot envs. Set bootdelay to 10. If this does not work then try 2. If this works, then try to interrupt it. Your serial console might have problem if you can't interrupt it during the coundown.

2. Look at the stock u-boot source, there should be a CONFIG_BOOTDELAY that needs to be set to some value. If this is not defined then it would expalin what you saw.

Update: congrats for figuring this out!

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 07/21/2016 01:04AM by bodhi.
Hello,

Help I am just stuck at "Sending boot message. Please reboot the target..." too :(.

My steps:
- Start kwboot sudo ./kwboot -t -B 115200 /dev/ttyUSB0 -b uboot.2016.05-tld-1.pogo_v4.mtd0.kwb -p
- Power up the Pogo V4/Mobile.
- Within 1-2 seconds when the spinning | starts slowing down (but not too soon), Control-C to abort kwboot, and recall the command, execute kwboot again.

My system: Debian
Re: UART Booting HowTo for Selected Kirkwood Devices
August 09, 2016 11:16PM
Miko,

With the Pogo V4, you will need to keep doing what do did: Control-C to abort kwboot, and recall the command, execute kwboot again. Do this as many times as you can until the handshake occurs. It might take as many as 20 tries.

-bodhi
===========================
Forum Wiki
bodhi's corner
:(
I have tried about 50 times. Always the same.
"Sending boot message. Please reboot the target..."
Re: UART Booting HowTo for Selected Kirkwood Devices
August 10, 2016 02:27AM
miko Wrote:
-------------------------------------------------------
> :(
> I have tried about 50 times. Always the same.
> "Sending boot message. Please reboot the
> target..."

Then you should check your serial connection, hardware wise. And check your serial module converter connecting to a different box. And examine the serial header on the Pogo V4. It should work.

-bodhi
===========================
Forum Wiki
bodhi's corner
Thank you for your answer.
I have tried to connect to pogoplug via piocom:
picocom v1.7

port is        : /dev/ttyUSB0
flowcontrol    : none
baudrate is    : 115200
parity is      : none
databits are   : 8
escape is      : C-a
local echo is  : no
noinit is      : no
noreset is     : no
nolock is      : no
send_cmd is    : sz -vv
receive_cmd is : rz -vv
imap is        : 
omap is        : 
emap is        : crcrlf,delbs,

Terminal ready
I think connection is ok. Should I put my pogoplug to the trash?:(
Re: UART Booting HowTo for Selected Kirkwood Devices
August 10, 2016 02:52AM
miko Wrote:
-------------------------------------------------------
> Thank you for your answer.
> I have tried to connect to pogoplug via piocom:
>
picocom v1.7
> 
> port is        : /dev/ttyUSB0
> flowcontrol    : none
> baudrate is    : 115200
> parity is      : none
> databits are   : 8
> escape is      : C-a
> local echo is  : no
> noinit is      : no
> noreset is     : no
> nolock is      : no
> send_cmd is    : sz -vv
> receive_cmd is : rz -vv
> imap is        : 
> omap is        : 
> emap is        : crcrlf,delbs,
> 
> Terminal ready
>
> I think connection is ok. Should I put my
> pogoplug to the trash?:(

No. That did not prove the connection is OK. picocom always give you this output (this is on the serial module converter end). Have you tried reversing TX and RX?

-bodhi
===========================
Forum Wiki
bodhi's corner
Do you mean connect RX to TX? If yes: output is
  0 % [+++++++++++++++++xmodem: Bad message
Re: UART Booting HowTo for Selected Kirkwood Devices
August 10, 2016 03:06AM
miko Wrote:
-------------------------------------------------------
> Do you mean connect RX to TX? If yes: output is
>
  0 % [+++++++++++++++++xmodem: Bad
> message

When you see this xmodem bad message, recall the kwboot command and execute it again. And repeat this sequence for serval times.

Some module converter need reversing TX-RX, some do not.

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 08/10/2016 03:07AM by bodhi.
Re: UART Booting HowTo for Selected Kirkwood Devices
August 10, 2016 03:09AM
bodhi Wrote:

> Some module converter need reversing TX-RX, some
> do not.

The PL3xxx needs crossing RX to TX. The CP2xxx does not.

-bodhi
===========================
Forum Wiki
bodhi's corner
YOU ARE GREAT!!!!!
Thank you.
9 times and... done :)
Could you tell what next? :)
U-Boot 2015.10-tld-1 (Nov 06 2015 - 16:02:55 -0800)
Pogoplug V4

SoC:   Kirkwood 88F6192_A1
DRAM:  128 MiB (ECC not enabled)
WARNING: Caches not enabled
NAND:  128 MiB
MMC:   kwsdio: 0
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   egiga0
Hit any key to stop autoboot:  0 
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found

Reset IDE: ide_preinit failed

no USB devices available

no IDE devices available
** Bad device usb 0 **
** Bad device usb 0 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
resetting ...
Re: UART Booting HowTo for Selected Kirkwood Devices
August 10, 2016 03:40AM
miko Wrote:
-------------------------------------------------------
> YOU ARE GREAT!!!!!
> Thank you.
> 9 times and... done :)
> Could you tell what next? :)
>
U-Boot 2015.10-tld-1 (Nov 06 2015 - 16:02:55
> -0800)
> Pogoplug V4
> 
> SoC:   Kirkwood 88F6192_A1
> DRAM:  128 MiB (ECC not enabled)
> WARNING: Caches not enabled
> NAND:  128 MiB
> MMC:   kwsdio: 0
> *** Warning - bad CRC, using default environment
> 
> In:    serial
> Out:   serial
> Err:   serial
> Net:   egiga0
> Hit any key to stop autoboot:  0 
> starting USB...
> USB0:   USB EHCI 1.00
> scanning bus 0 for devices... 1 USB Device(s)
> found
>        scanning usb for storage devices... 0
> Storage Device(s) found
> 
> Reset IDE: ide_preinit failed
> 
> no USB devices available
> 
> no IDE devices available
> ** Bad device usb 0 **
> ** Bad device usb 0 **
> Wrong Image Format for bootm command
> ERROR: can't get kernel image!
> resetting ...
>


Cool :) now you can boot into Debian using USB. See this to create the Debian 4.4 rootfs:

http://forum.doozan.com/read.php?2,12096

You don't need to do step 4 when you create the rootfs (you are running the latest u-boot using kwboot):

Quote

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).

-bodhi
===========================
Forum Wiki
bodhi's corner
Hello,
First of all, I would like to thank you for your great contribution to pogoplug support.
I need your help.
My pogoplug is unfortunately bricked.
I can connect to my pogoplug mobile only via serial port:
./kwboot -t -B 115200 /dev/ttyUSB0 -b uboot.2016.05-tld-1.pogo_v4.mtd0.kwb -p
I need to do this all the time when I want to use my pogoplug.
Sometimes USB with Debian-4.4.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2 works, sometimes USB storage disappears.
 usb list 
I do not know why.
I have tried to make rootfs on mmc, but when I run
 boot 
from sd card I always have output
Wrong Image Format for bootm command. Error: can't get kernel image!
I have no idea what I should do to make my pogoplug back to work.
I have 2 questions.
1. How can I flash Uboot via serial port and save it?
2. What should I do to boot debian from mmc?
I have only access to my pogoplug mobile via serial port.
Re: UART Booting HowTo for Selected Kirkwood Devices
August 31, 2016 02:48PM
Mike231 Wrote:
-------------------------------------------------------
> Hello,
> First of all, I would like to thank you for your
> great contribution to pogoplug support.
> I need your help.
> My pogoplug is unfortunately bricked.
> I can connect to my pogoplug mobile only via
> serial port:
./kwboot -t -B 115200
> /dev/ttyUSB0 -b
> uboot.2016.05-tld-1.pogo_v4.mtd0.kwb -p
> I need to do this all the time when I want to use
> my pogoplug.
> Sometimes USB with
> Debian-4.4.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2
> works, sometimes USB storage disappears.
> usb list 
I do not know why.
> I have tried to make rootfs on mmc, but when I run
>
 boot 
from sd card I always have
> output
Wrong Image Format for bootm command.
> Error: can't get kernel image!
> I have no idea what I should do to make my
> pogoplug back to work.
> I have 2 questions.
> 1. How can I flash Uboot via serial port and save
> it?
> 2. What should I do to boot debian from mmc?
> I have only access to my pogoplug mobile via
> serial port.

kwboot and interrupt serial console, get the listing of envs

printenv


and post the entire serial console log here.

-bodhi
===========================
Forum Wiki
bodhi's corner
mike232
Re: UART Booting HowTo for Selected Kirkwood Devices
September 02, 2016 03:26AM
 99 % [....................................]
[Type Ctrl-\ + c to quit]


U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:41:47 -0700)
Pogoplug V4

SoC:   Kirkwood 88F6192_A1
DRAM:  128 MiB
WARNING: Caches not enabled
NAND:  128 MiB
MMC:   kwsdio: 0
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
Hit any key to stop autoboot:  0 
Pogov4> printenv
arcNumber=3960
baudrate=115200
bootcmd=run bootcmd_uenv; run bootcmd_usb; reset
bootcmd_uenv=run uenv_load; if test $uenv_loaded -eq 1; then run uenv_import; fi
bootcmd_usb=run usb_init; run set_bootargs_usb; run usb_boot;
bootdelay=10
console=ttyS0,115200
device=0:1
ethact=egiga0
ethaddr=b6:d0:5e:0f:a1:17
led_error=orange blinking
led_exit=green off
led_init=green blinking
machid=f78
mainlineLinux=yes
mtdids=nand0=orion_nand
mtdparts=mtdparts=orion_nand:2M(u-boot),3M(uImage),3M(uImage2),8M(failsafe),112M(root)
partition=nand0,2
rootdelay=10
rootfstype=ext2
set_bootargs_usb=setenv bootargs console=$console root=$usb_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
stderr=serial
stdin=serial
stdout=serial
uenv_import=echo importing envs ...; env import -t 0x810000
uenv_load=usb start; mmc rescan; ide reset; setenv uenv_loaded 0; for devtype in usb mmc ide; 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 0x810000 /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_boot=mw 0x800000 0 1; run usb_load_uimage; if run usb_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
usb_init=usb start
usb_load_uimage=ext2load usb $device 0x800000 /boot/uImage
usb_load_uinitrd=ext2load usb $device 0x1100000 /boot/uInitrd
usb_root=/dev/sda1

Environment size: 1574/131068 bytes
Pogov4> boot
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found

MMC rescan: current device # 0 initialized OK

Reset IDE: ide_preinit failed

no USB devices available

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

Part	Start Sector	Num Sectors	UUID		Type
  1	2048      	8388608   	81ad26b9-01	83
loading envs from mmc 0 ...
98 bytes read in 1089 ms (0 Bytes/s)

no IDE devices available
importing envs ...
## Info: input data size = 284 = 0x11C
** Bad device usb 0 **
** Bad device usb 0 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
resetting ...
Re: UART Booting HowTo for Selected Kirkwood Devices
September 02, 2016 01:46PM
mike,

> loading envs from mmc 0 ...
> 98 bytes read in 1089 ms (0 Bytes/s)
>
> no IDE devices available
> importing envs ...
> ## Info: input data size = 284 = 0x11C
> ** Bad device usb 0 **
> ** Bad device usb 0 **
> Wrong Image Format for bootm command
> ERROR: can't get kernel image!
> resetting ...

Looks like you have installed u-boot in this box before, and that was an older version of my u-boot releases. You also have a uEnv.txt in the SD card rootfs. What is the content of the uEnv.txt?

Your current u-boot envs (in NAND) don't have correct settings to boot with mmc, that's why it can't boot this SD rootfs. And your current uEnv.txt in the SD rootfs does not have correct settings either.

Try copy the u-boot default envs to your SD rootfs. This is the text version (in the u-boot tarball you have downloaded)
uboot.2016.05-tld-1.environment

Mount your SD card on a different box (assuming it was mounted as /media/sdb1)
cp -a uboot.2016.05-tld-1.environment /media/sdb1/boot/uEnv.txt
sync

Now try kwboot with this SD rootfs plugged in, and post the kwboot serial console here.

-bodhi
===========================
Forum Wiki
bodhi's corner
mike1234
Re: UART Booting HowTo for Selected Kirkwood Devices
September 05, 2016 06:51AM
Hello,
The same :(

sudo ./kwboot -t -B 115200 /dev/ttyUSB0 -b uboot.2016.05-tld-1.pogo_v4.mtd0.kwb -p
Sending boot message. Please reboot the target...\
Sending boot image...
  0 % [......................................................................]
  1 % [......................................................................]
 ...
 99 % [....................................]
[Type Ctrl-\ + c to quit]


U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:41:47 -0700)
Pogoplug V4

SoC:   Kirkwood 88F6192_A1
DRAM:  128 MiB (ECC not enabled)
WARNING: Caches not enabled
NAND:  128 MiB
MMC:   kwsdio: 0
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
Hit any key to stop autoboot:  0 
Pogov4> mmc list
kwsdio: 0 (SD)
Pogov4> boot
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found

MMC rescan: current device # 0 initialized OK

Reset IDE: ide_preinit failed

no USB devices available

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

Part	Start Sector	Num Sectors	UUID		Type
  1	2048      	8388608   	9126a74f-01	83
loading envs from mmc 0 ...
2773 bytes read in 994 ms (2 KiB/s)

no IDE devices available
importing envs ...
## Info: input data size = 2774 = 0xAD6
** Bad device usb 0 **
** Bad device usb 0 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
resetting ...

The second question is: How can I flash uboot to NAND via serial port. My pogoplug is not working without serial port - led is not blinking.
Re: UART Booting HowTo for Selected Kirkwood Devices
September 05, 2016 02:35PM
WIth SD rootfs plugged in, kwboot again, interrupt serial console and

run bootcmd_uenv
printenv
boot

-bodhi
===========================
Forum Wiki
bodhi's corner
bodhi:)
Thank you for your time!
It works but only with kwboot.
Unfortunately, the pogoplug light wont turn on and I cannot boot from mmc or usb.
How to flash uboot to NAND?
Kind regards
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: