[ARMedslack] slackwarearm on seagate dosckstar

Davide louigi600 at yahoo.it
Thu Apr 18 06:48:46 UTC 2013


The old uboot image instalelt over 2 years ago on my dockstar was a Jeff Doozan image with a modified environment ... and it still boots 2.6 kernels that I was using at the time (not sure if I ever got round to diddling with 3.x kernels on my dockstar but I'll check asap).
Did Doozan's uboot images brake somwhere along the kernel developement line  from 2.6.38 to 3.4 ?

This is a live clashNG environment running from internal flash on my dockstar:
root at surap:~# cat /proc/cpuinfo
Processor       : Feroceon 88FR131 rev 1 (v5l)
BogoMIPS        : 1192.75
Features        : swp half thumb fastmult edsp 
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant     : 0x2
CPU part        : 0x131
CPU revision    : 1

Hardware        : Seagate FreeAgent DockStar
Revision        : 0000
Serial          : 0000000000000000
root at surap:~# uname -a
Linux surap 2.6.38.3-kirkwood #2 PREEMPT Fri Apr 15 22:36:21 BST 2011 armv5tel GNU/Linux
root at surap:~#

And this is a live armedslack 13.37 running from that same dockstar and booting from a usb stick:
root at slackware:~# cat /etc/slackware-version 
Slackware 13.37.0
root at slackware:~# uname -a
Linux slackware 2.6.38.7-kirkwood #1 PREEMPT Thu May 26 08:29:19 BST 2011 armv5tel Feroceon 88FR131x
root at slackware:~# cat /proc/cpuinfo 
Processor       : Feroceon 88FR131 rev 1 (v5l)
BogoMIPS        : 1192.75
Features        : swp half thumb fastmult edsp 
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant     : 0x2
CPU part        : 0x131
CPU revision    : 1

Hardware        : Seagate FreeAgent DockStar
Revision        : 0000
Serial          : 0000000000000000
root at slackware:~# df -m
Filesystem           1M-blocks      Used Available Use% Mounted on
/dev/sda2                 7483      3463      4020  47% /
root at slackware:~# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 001 Device 003: ID 0951:1607 Kingston Technology DataTraveler 100
root at slackware:~#

So I'm pretty much sure that the u-boot setup is ok ... just happens that for some reason I'm unable to boot the new 3.4.... kirkwood kernel. 

Yeah I got a couple of DKU-5 compatible cables from an ebay user (I forgot the details since it was 2 years ago) and i recall that for  something like 5 Euro I had them both shipped to my door. 
Doing enbedded stuff without at least a serial cable suitable for the target platform is difficult to say the least ... at some stage I plan to start using jtag too ;)




________________________________
 Da: Richard Lapointe <richard.lapointe at gmail.com>
A: Davide <louigi600 at yahoo.it>; Slackware ARM port <armedslack at lists.armedslack.org> 
Inviato: Giovedì 18 Aprile 2013 3:32
Oggetto: Re: [ARMedslack] slackwarearm on seagate dosckstar
 


Maybe you need a new uboot :
http://forum.doozan.com/read.php?3,6965oot 

I use this uboot in my dockstar and 2 pogoplug P21 (E02) kirkwood
    base NAS.  All three are running Slackwarearm 14.0

I also use these for my serial connection.  http://www.ebay.com/sch/i.html?_trksid=p2047675.m570.l1313.TR0.TRC0&_nkw=USB+2.0+to+TTL+UART&_sacat=0&_from=R40


root at pogo-161:/home/rich# uname -a
Linux pogo-161 3.4.11-kirkwood #2 PREEMPT Sat Sep 15 21:42:15 BST
    2012 armv5tel Feroceon 88FR131 rev 1 (v5l) Marvell SheevaPlug
    Reference Board GNU/Linux

root at pogo-161:/home/rich# 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_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_init=run usb_scan
usb_device=0:1
usb_root=/dev/sda1
usb_rootfstype=ext2
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:xx:xx:xx
arcNumber=2097
ipaddr=192.168.1.161
if_netconsole=ping $serverip
start_netconsole=setenv ncip $serverip; setenv bootdelay 10; setenv
    stdin nc; setenv stdout nc; setenv stderr nc; version;
preboot=run if_netconsole start_netconsole
serverip=192.168.1.71
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
force_rescue=0
usb_custom_params=nic=auto:eth0:dhcp kbd=us


Regards

Rich Lapointe



On 04/17/2013 11:15 AM, Davide wrote: 
>> Uncompressing Linux... done, booting the kernel.
>>
>> And that's it ... nothing more on the serial
            console and nothing on the
>> network .... actually it does not even appear to
            mount the root
>> filesystem as the last mount seems to be coherent
            with the last time I
>> mounted it on my PC Do I need to recompile the
            kernel (I'm using the
>> kirkwood uImage) or is there something else wrong ?

>This usually happens when the kernel +initrd does not
            fit into the
>allocated memory locations.  Make sure you have the
            u-boot memory settings
>correctly set:

>    Marvell>>  tftpboot 0x01100000
            %SLACKTREE%/uinitrd-kirkwood.img
>    Marvell>>  tftpboot 0x00800000
            %SLACKTREE%/uImage-kirkwood
>    Marvell>>  setenv bootargs
            console=ttyS0,115200 nodhcp kbd=uk root=/dev/ram rw
>    Marvell>>  bootm 0x00800000 0x01100000

>I haven't tried the latest Kirkwood kernel on a Plug
            machine, but I know
>it does work on the OpenRD client.  I added the
            'earlyprintk' debugging to
>the Tegra20 kernel which'd show you what was wrong, but
            I don't think this
>is available in the kirkwood implementation (although
            I'll have a look
>again later).

O possibly the sizes matched what i was using 2 years back
            ... might nit fit the new images
I've lost familiarity with uboot command line ....
I load them from usb with something that looks like this:

${dev}
$part
${usb_boot_dir}
get populated somewhere along the execution of the script

ext2load usb ${dev}:$part 0x800000 ${usb_boot_dir} /uImage
ext2load usb ${dev}:$usb_dev_part 0x1100000
            ${usb_boot_dir}/uinitrd
setenv usb_boot_address 0x800000 0x1100000
bootm $usb_boot_address

but they do look as if they are ok ....

The images got into /boot when by installing the packages
            from the versatile virtual machine (I then manually linked
            with the correct names my uboot looks for)
root at darkstar:/mnt/floppy/boot# ls
System.map@                 config-kirkwood-3.4.11 
            uImage-kirkwood-3.4.11  uinitrd-kirkwood-3.4.11
System.map-kirkwood-3.4.11  uImage@                 uinitrd@
root at darkstar:/mnt/floppy/boot#  md5sum
            uinitrd-kirkwood-3.4.11 uImage-kirkwood-3.4.11 
0ff11c800fa6745b04676787596246de  uinitrd-kirkwood-3.4.11
0c5e9a376a92e49863e2989875564a12  uImage-kirkwood-3.4.11
root at darkstar:/mnt/floppy/boot#

so I'm supposing that it's not an issue on how they got into
            the image.

anyway just incase anyone is intrested on the script I'm
            using for booting from usb stick if present (and correctly
            setup) or from internal flash here's a dump of printenv:
Marvell>> printenv
usb_device=0:1
usb_root=/dev/sda1
usb_rootfstype=ext2
usb_rootdelay=10
bootcmd_pogo=fsload uboot-original-mtd0.kwb; go 0x800200
bootdelay=3
baudrate=115200
console=console=ttyS0,115200
mtdids=nand0=orion_nand
partition=nand0,2
led_init=green blinking
led_exit=green off
led_error=orange blinking
ethact=egiga0
arcNumber=2998
usb_boot_0=setenv root_fs root=/dev/sda${usb_dev_part}
usb_boot_1=setenv root_fs root=/dev/sdb${usb_dev_part}
usb_boot_2=setenv root_fs root=/dev/sdc${usb_dev_part}
usb_boot_3=setenv root_fs root=/dev/sdd${usb_dev_part}
usb_boot_4=setenv root_fs root=/dev/sde${usb_dev_part}
usb_boot_5=setenv root_fs root=/dev/sdf${usb_dev_part}
usb_boot_6=setenv root_fs root=/dev/sdg${usb_dev_part}
set_usb_bootargs=setenv bootargs ${console} ${mtdparts}
            ${root_fs} ro ${root_fstype}
mtdparts=mtdparts=orion_nand:1M(u-boot),4M at 1M(uImage),32M at 5M(rootfs),219M at 37M(data)
root_fs=root=/dev/mtdblock2
root_fstype=rootfstype=jffs2
bootcmd=run usb_scan; run set_flash_bootargs; run
            boot_flash_kernel
ethaddr=00:10:75:1A:21:B7
usb_part_list=4 3 2 1
usb_dev_list=6 5 4 3 2 1 0
usb_dev_part=0
usb_scan=usb start; setenv usb_boot_dev none; for dev in 
            $usb_dev_list; do for part in $usb_part_list; do if ext2ls
            usb ${dev}:$part /etc; then setenv usb_boot_dir; ext2ls usb
            ${dev}:$part /boot && setenv usb_boot_dir /boot; if
            ext2load usb ${dev}:$part 0x800000 ${usb_boot_dir}
/uImage; then setenv usb_dev_part $part; setenv usb_boot_dev
            $dev; setenv usb_boot_address 0x800000; setenv root_fstype
            rootfstype=ext2; run usb_boot_$dev ; run set_usb_bootargs;
            fi; ext2load usb ${dev}:$usb_dev_part 0x1100000
            ${usb_boot_dir}/uinitrd; && setenv usb_boot_address 
0x800000 0x1100000; fi; done; done; if test "$usb_boot_dev"
            = "none"; then echo "No USB bootable device found"; else
            echo "USB device ${usb_boot_dev}:$usb_dev_part is bootable";
            bootm $usb_boot_address; fi;
flash_root_fstype=rootfstype=jffs2
flash_kernel_size=0x300000
flash_kernel_load_addr=0x6400000
set_flash_bootargs=setenv bootargs ${console} ${mtdparts}
            ${flash_root_fs} ro ${flash_root_fstype}
boot_flash_kernel=nand read $flash_kernel_load_addr
            $flash_kernel_offest $flash_kernel_size; bootm
            $flash_kernel_load_addr
flash_root_fs=root=/dev/mtdblock2
flash_kernel_offest=0x100000
stdin=serial
stdout=serial
stderr=serial


>
>
>_______________________________________________
ARMedslack mailing list ARMedslack at lists.armedslack.org http://lists.armedslack.org/mailman/listinfo/armedslack 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.armedslack.org/pipermail/armedslack/attachments/20130418/baf28d19/attachment-0001.html>


More information about the ARMedslack mailing list