DockStar u-boot for Debian USB stick

For the new Debian wheezy version 7 it needs also an actual U-Boot monitor.

U-Boot 2012

At the beginning of 2012 Jeff Doozan brought out a new U-Boot monitor, which is needed for the version 3.2 kernel.

U-Boot 2012 Installation

The entry is the web page Update uBoot on your Dockstar, GoFlex, or Pogoplug. Connect via SSH to the device. Then run the following commands:

$ cd /tmp 
$ wget http://projects.doozan.com/uboot/install_uboot_mtd0.sh 
$ chmod +x install_uboot_mtd0.sh 
$ ./install_uboot_mtd0.sh

The installation script does the following:

It is surprising, how much intelligence can be put in such a script, thank you Jeff.

U-Boot 2012 messages, for reference only

All following text in the boxes are collected via serial cable, see DockStarSerialLink.

U-Boot 2011.12 (Feb 12 2012 - 21:33:07)
Seagate FreeAgent DockStar

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

u-boot>> 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'
bootm   - boot application image from memory
bootp   - boot image via network using BOOTP/TFTP protocol
chpart  - change active partition
cmp     - memory compare
coninfo - print console devices and information
cp      - memory copy
crc32   - checksum calculation
dhcp    - boot image via network using DHCP/TFTP protocol
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 /)
false   - do nothing, unsuccessfully
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls   - list files in a directory (default /)
fsinfo  - print information about filesystems
fsload  - load binary file from a filesystem image
go      - start application at address 'addr'
help    - print command description/usage
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
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)
mtdparts- define flash/nand partitions
mtest   - simple RAM read/write test
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
showvar - print local hushshell variables
sleep   - delay execution for some time
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
u-boot>>
cation at address 'addr'
help    - print command description/usage
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
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)
mtdparts- define flash/nand partitions
mtest   - simple RAM read/write test
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
showvar - print local hushshell variables
sleep   - delay execution for some time
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
u-boot>> version

U-Boot 2011.12 (Feb 12 2012 - 21:33:07)
Seagate FreeAgent DockStar
arm-none-linux-gnueabi-gcc (Sourcery G++ Lite 2009q3-67) 4.4.1
GNU ld (Sourcery G++ Lite 2009q3-67) 2.19.51.20090709

u-boot>> bdinfo
arch_number = 0x00000BB6
boot_params = 0x00000100
DRAM bank   = 0x00000000
-> start    = 0x00000000
-> size     = 0x08000000
DRAM bank   = 0x00000001
-> start    = 0x00000000
-> size     = 0x00000000
ethaddr     = 00:10:75:1A:CA:9F
ip_addr     = 0.0.0.0
baudrate    = 115200 bps
TLB addr    = 0x07FF0000
relocaddr   = 0x07F53000
reloc off   = 0x07953000
irq_sp      = 0x07E32F68
sp start    = 0x07E32F58
FB base     = 0x00000000

u-boot>> 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
bootcmd_pogo=run bootcmd_rescue
bootcmd_rescue=run set_bootargs_rescue; nand read.e 0x800000 0x100000 0x400000; bootm 0x800000
bootdelay=3
console=ttyS0,115200
ethact=egiga0
ethaddr=00:10:75:1A:CA:9F
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
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_installed=1
rescue_set_bootargs=setenv bootargs console=$console ubi.mtd=2 root=ubi0:rootfs ro rootfstype=ubifs $mtdparts $rescue_custom_params
set_bootargs_rescue=setenv bootargs console=$console ubi.mtd=2 root=ubi0:rootfs ro rootfstype=ubifs $mtdparts
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

Environment size: 2585/131068 bytes
u-boot>>

Debian wheezy boot

The boot messages with a Debian wheezy (ver. 7) from USB-stick /dev/sda1:

u-boot>> boot
(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 "/rescueme" from usb device 0:1 (usbda1)
** File not found /rescueme
reading /rescueme.txt

** Unable to read "/rescueme.txt" from usb 0:1 **
Creating 1 MTD partitions on "nand0":
0x000002500000-0x000010000000 : "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:            219 MiB
UBI: number of good PEBs:        1752
UBI: number of bad PEBs:         0
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:             1731
UBI: total number of reserved PEBs: 21
UBI: number of PEBs reserved for bad PEB handling: 17
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'!
Loading file "/boot/uImage" from usb device 0:1 (usbda1)
1 bytes read
Found bootable drive on usb 0:1
Loading file "/boot/uImage" from usb device 0:1 (usbda1)
1606440 bytes read
Loading file "/boot/uInitrd" from usb device 0:1 (usbda1)
6761843 bytes read
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   kernel 3.2.0-4-kirkwood
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    1606376 Bytes = 1.5 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 01100000 ...
   Image Name:   ramdisk 3.2.0-4-kirkwood
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    6761779 Bytes = 6.4 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 3.2.0-4-kirkwood (debian-kernel@lists.debian.org) (gcc version 4.6.3 (Debian 4.6.3-12) ) #1 Debian 3.2.35-2
[    0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053977
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] Machine: Seagate FreeAgent DockStar
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/sda1 rootdelay=10 rootfstype=ext2 mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
[    0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[    0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Memory: 128MB = 128MB total
[    0.000000] Memory: 118548k/118548k available, 12524k reserved, 0K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xc8800000 - 0xfe800000   ( 864 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xc8000000   ( 128 MB)
[    0.000000]     modules : 0xbf000000 - 0xc0000000   (  16 MB)
[    0.000000]       .text : 0xc0008000 - 0xc03e3130   (3949 kB)
[    0.000000]       .init : 0xc03e4000 - 0xc0408000   ( 144 kB)
[    0.000000]       .data : 0xc0408000 - 0xc0442520   ( 234 kB)
[    0.000000]        .bss : 0xc0442544 - 0xc04a5b84   ( 398 kB)
[    0.000000] NR_IRQS:114
[    0.000000] sched_clock: 32 bits at 200MHz, resolution 5ns, wraps every 21474ms
[    0.000000] Console: colour dummy device 80x30
[   10.081751] Calibrating delay loop... 1191.11 BogoMIPS (lpj=5955584)
[   10.171638] pid_max: default: 32768 minimum: 301
[   10.171761] Security Framework initialized
[   10.171836] Mount-cache hash table entries: 512
[   10.172169] Initializing cgroup subsys cpuacct
[   10.172194] Initializing cgroup subsys memory
[   10.172218] Initializing cgroup subsys devices
[   10.172227] Initializing cgroup subsys freezer
[   10.172235] Initializing cgroup subsys net_cls
[   10.172243] Initializing cgroup subsys blkio
[   10.172264] Initializing cgroup subsys perf_event
[   10.172357] CPU: Testing write buffer coherency: ok
[   10.173649] devtmpfs: initialized
[   10.175500] print_constraints: dummy:
[   10.175756] NET: Registered protocol family 16
[   10.176565] Kirkwood: MV88F6281-A0, TCLK=200000000.
[   10.176580] Feroceon L2: Enabling L2
[   10.176615] Feroceon L2: Cache support initialised.
[   10.179407] bio: create slab <bio-0> at 0
[   10.179786] vgaarb: loaded
[   10.180312] Switching to clocksource orion_clocksource
[   10.194415] NET: Registered protocol family 2
[   10.194620] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[   10.195230] TCP established hash table entries: 4096 (order: 3, 32768 bytes)
[   10.195329] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[   10.195382] TCP: Hash tables configured (established 4096 bind 4096)
[   10.195391] TCP reno registered
[   10.195401] UDP hash table entries: 256 (order: 0, 4096 bytes)
[   10.195422] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[   10.195631] NET: Registered protocol family 1
[   10.195814] Unpacking initramfs...
[   10.743044] Freeing initrd memory: 6600K
[   10.743059] NetWinder Floating Point Emulator V0.97 (double precision)
[   10.743596] audit: initializing netlink socket (disabled)
[   10.743639] type=2000 audit(0.650:1): initialized
[   10.745024] VFS: Disk quotas dquot_6.5.2
[   10.745109] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[   10.745228] JFFS2 version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[   10.745562] msgmni has been set to 244
[   10.747086] alg: No test for stdrng (krng)
[   10.747200] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[   10.747213] io scheduler noop registered
[   10.747220] io scheduler deadline registered
[   10.747273] io scheduler cfq registered (default)
[   10.747350] mv_xor_shared mv_xor_shared.0: Marvell shared XOR driver
[   10.747381] mv_xor_shared mv_xor_shared.1: Marvell shared XOR driver
[   10.780382] mv_xor mv_xor.0: Marvell XOR: ( xor cpy )
[   10.820379] mv_xor mv_xor.1: Marvell XOR: ( xor fill cpy )
[   10.860377] mv_xor mv_xor.2: Marvell XOR: ( xor cpy )
[   10.900378] mv_xor mv_xor.3: Marvell XOR: ( xor fill cpy )
[   10.900759] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[   10.921320] serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
[   11.347594] console [ttyS0] enabled
[   11.352061] ONFI flash detected
[   11.355305] ONFI param page 0 valid
[   11.358815] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xda (Micron MT29F2G08AAD)
[   11.366527] Scanning device for bad blocks
[   11.522753] 4 cmdlinepart partitions found on MTD device orion_nand
[   11.529050] Creating 4 MTD partitions on "orion_nand":
[   11.534228] 0x000000000000-0x000000100000 : "u-boot"
[   11.540036] 0x000000100000-0x000000500000 : "uImage"
[   11.545836] 0x000000500000-0x000002500000 : "rootfs"
[   11.551664] 0x000002500000-0x000010000000 : "data"
[   11.558098] mousedev: PS/2 mouse device common for all mice
[   12.570366] rtc-mv rtc-mv: internal RTC not ticking
[   12.575362] i2c /dev entries driver
[   12.579004] cpuidle: using governor ladder
[   12.583253] cpuidle: using governor menu
[   12.588191] TCP cubic registered
[   12.591458] NET: Registered protocol family 17
[   12.595928] Registering the dns_resolver key type
[   12.601137] registered taskstats version 1
[   12.605696] /build/buildd-linux_3.2.35-2-armel-th89m3/linux-3.2.35/drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[   12.616858] Initializing network drop monitor service
[   12.622534] Freeing init memory: 144K
Loading, please wait...
[   12.680908] udevd[48]: starting version 175
[   12.784830] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[   12.830408] mv643xx_eth smi: probed
[   12.863507] usbcore: registered new interface driver usbfs
[   12.869102] usbcore: registered new interface driver hub
[   12.881278] mv643xx_eth_port mv643xx_eth_port.0: eth0: port 0 with MAC address 00:10:75:1a:ca:9f
[   12.930838] usbcore: registered new device driver usb
[   12.937913] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[   12.990386] orion-ehci orion-ehci.0: Marvell Orion EHCI
[   12.995710] orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
[   13.040387] orion-ehci orion-ehci.0: irq 19, io mem 0xf1050000
[   13.060353] orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
[   13.066370] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[   13.073207] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[   13.080472] usb usb1: Product: Marvell Orion EHCI
[   13.085195] usb usb1: Manufacturer: Linux 3.2.0-4-kirkwood ehci_hcd
[   13.091503] usb usb1: SerialNumber: orion-ehci.0
[   13.097028] hub 1-0:1.0: USB hub found
[   13.100834] hub 1-0:1.0: 1 port detected
[   13.420361] usb 1-1: new high-speed USB device number 2 using orion-ehci
[   13.571708] usb 1-1: New USB device found, idVendor=05e3, idProduct=0608
[   13.578445] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[   13.585625] usb 1-1: Product: USB2.0 Hub
[   13.593783] hub 1-1:1.0: USB hub found
[   13.603698] hub 1-1:1.0: 4 ports detected
[   13.880604] usb 1-1.2: new high-speed USB device number 3 using orion-ehci
[   13.992957] usb 1-1.2: New USB device found, idVendor=090c, idProduct=1000
[   13.999865] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   14.007219] usb 1-1.2: Product: USB DISK
[   14.011180] usb 1-1.2: Manufacturer: SMI Corporation
[   14.016174] usb 1-1.2: SerialNumber: AA04012700008370
[   14.046495] SCSI subsystem initialized
[   14.055152] Initializing USB Mass Storage driver...
[   14.060414] scsi0 : usb-storage 1-1.2:1.0
[   14.065921] usbcore: registered new interface driver usb-storage
[   14.071983] USB Mass Storage support registered.
[   15.061924] scsi 0:0:0:0: Direct-Access     SMI      USB DISK         1100 PQ: 0 ANSI: 0 CCS
[   15.086504] sd 0:0:0:0: [sda] 7864320 512-byte logical blocks: (4.02 GB/3.75 GiB)
[   15.094731] sd 0:0:0:0: [sda] Write Protect is off
[   15.100228] sd 0:0:0:0: [sda] No Caching mode page present
[   15.105758] sd 0:0:0:0: [sda] Assuming drive cache: write through
[   15.116729] sd 0:0:0:0: [sda] No Caching mode page present
[   15.122262] sd 0:0:0:0: [sda] Assuming drive cache: write through
[   15.131111]  sda: sda1 sda2
[   15.137728] sd 0:0:0:0: [sda] No Caching mode page present
[   15.143260] sd 0:0:0:0: [sda] Assuming drive cache: write through
[   15.149378] sd 0:0:0:0: [sda] Attached SCSI removable disk
[   15.164631] sd 0:0:0:0: Attached scsi generic sg0 type 0
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... done.
Begin: Running /scripts/local-bottom ... done.
done.
Begin: Running /scripts/init-bottom ... done.
INIT: version 2.88 booting
[info] Using makefile-style concurrent boot in runlevel S.
[....] Starting the hotplug events dispatcher: udevd[   24.225836] udevd[227]: starting version 175
. ok
[ ok ] Synthesizing the initial hotplug events...done.
[ ok ] Waiting for /dev to be fully populated...done.
[....] Activating swap...[   25.379596] Adding 265068k swap on /dev/sda2.  Priority:-1 extents:1 across:265068k
done.
[....] Checking root file system...fsck from util-linux 2.20.1
/dev/sda1: clean, 13408/228928 files, 107584/915200 blocks
done.
[ ok ] Cleaning up temporary files... /tmp.
[ ok ] Activating lvm and md swap...done.
[....] Checking file systems...fsck from util-linux 2.20.1
done.
[ ok ] Mounting local filesystems...done.
[ ok ] Activating swapfile swap...done.
[ ok ] Cleaning up temporary files....
[ ok ] Setting kernel variables ...done.
[....] Configuring network interfaces...[   31.862288] mv643xx_eth_port mv643xx_eth_port.0: eth0: link up, 1000 Mb/s, full duplex, flow control disabled
dhcpcd.sh: interface eth0 has been configured with new IP=192.168.17.185
[   37.106353] NET: Registered protocol family 10
done.
[ ok ] Cleaning up temporary files....
INIT: Entering runlevel: 2
[info] Using makefile-style concurrent boot in runlevel 2.
[ ok ] Starting OpenBSD Secure Shell server: sshd.

Debian GNU/Linux 7.0 debian ttyS0

debian login:

Utilities, blparam

Original description

Introduction

Blparam was included in the Pogoplug 2.0 update. Blparam both displays and allows you to change the U-Boot parameter block stored in NAND flash. Any changes that you make to the boot parameters will take effect on the next reboot. If you make any changes to the parameters that cause the Pogoplug to not boot, you will need a serial cable to recover the device.

Note: Blparam only exists on the stock Pogoplug firmware, not Plugbox Linux. You also need a working plug to use it, so if your is bricked, you'll need to make a serial cable.

Installation of blparam

The programm must be downloaded first.

-bash-3.2# cd /sbin
-bash-3.2# mount -o rw,remount /             # make flash writeable
-bash-3.2# wget http://plugapps.com/os/pogoplug/uboot/blparam
-bash-3.2# chmod 755 ./blparam
-bash-3.2# mount -o remount,ro /  # make flash readonly

Usage

Blparam is located in /sbin or originally /usr/local/cloudengines/bin/ in the Pogoplug 2.0 firmware.

And can be downloaded here.

If use without parameters it will show all set boot paramerters. The output is the same if using the serial console and typing printenv.

blparam
      (no arguments)
      Outputs all the u-boot parameters without changing them.

-bash-3.2# /sbin/blparam
baudrate=115200
loads_echo=0
ipaddr=169.254.254.253
serverip=169.254.254.254
rootpath=/mnt/ARM_FS/
netmask=255.255.0.0
run_diag=yes
console=console=ttyS0,115200
CASset=min
MALLOC_len=1
ethprime=egiga0
bootargs_root=root=/dev/mtdblock2 ro
ethmtu=1500
usb0Mode=host
nandEcc=1bit
ethact=egiga0
stdin=serial
stdout=serial
stderr=serial
mainlineLinux=no
enaMonExt=no
enaCpuStream=no
enaWrAllo=no
pexMode=RC
disL2Cache=no
setL2CacheWT=yes
disL2Prefetch=yes
enaICPref=yes
enaDCPref=yes
sata_dma_mode=yes
netbsd_en=no
vxworks_en=no
bootdelay=3
disaMvPnp=no
ethaddr=00:10:75:1A:CE:XX
cesvcid=LH5AUGG5K5N82WZ83QE2GWZUYN
ceserialno=2GEP1GHF
ceboardver=REDSTONE:1.0
bootcmd=nand read.e 0x800000 0x100000 0x300000; setenv bootargs $(console) $(bootargs_root); bootm 0x800000

blparam [paramname[=paramvalue]]
      Arguments without a value are REMOVED from the parameter block (i.e. set to empty).
      Arguments with a value are added or changed.

Example (change the root partition to /dev/mtdblock3 and set it read-only on boot):

blparam "bootargs_root=root/dev/mtdblock3 ro"

List of pages in this category:

-- RudolfReuter 2010-08-29 17:52:35


Go back to CategoryDockStar or FrontPage ; KontaktEmail (ContactEmail)

DockStarUboot (last edited 2013-01-23 15:44:32 by dslb-084-058-183-247)