Outils pour utilisateurs

Outils du site


Panneau latéral

nas:dockstar:boot:boot_sd-card

Ceci est une ancienne révision du document !


Liens de références :
http://projects.doozan.com/uboot/build_uboot.htm
http://forum.doozan.com/read.php?3,1561
http://forum.doozan.com/read.php?3,6965,7162#msg-7162
http://forum.doozan.com/read.php?3,7477,7477#msg-7477

Après avoir installé une carte SD sur le DockStar, il faut réussir à démarrer dessus.
Pour se faire, il faut modifier U-Boot avec une prise en charge de la carte SD.

Compilation

U-Boot 2010.09

Je suis parti d'une version 2010.09 de U-Boot.

Après quelques modifications de patchs trouvés dans les archives de Jeff Doozan et l'aide à la compilation, j'ai réussi à démarrer sur un U-Boot.
Le patch complet (ajout support USB, MMC et configuration DockStar) à appliquer sur la version 2010.09 est celui-ci.

>tar -xjf u-boot-2010.09.tar.bz2
>cp 2010.09-sdio.patch u-boot-2010.09/
>cd u-boot-2010.09
>patch -p1 < 2010.09-sdio.patch
>codesourcery-arm-2009q3.sh
>make distclean
>make dockstar_config
>make u-boot.kwb
>dd if=u-boot.kwb of=u-boot.mtd0.kwb bs=512k conv=sync
>exit

J'ai modifié l'environnement précédent (installé pour l'USB) avec les commandes suivantes par la liaison série d'U-Boot :

>>setenv mmc_device 0:1
>>setenv mmc_root /dev/mmcblk0p1
>>setenv mmc_test if ext2load mmc \$mmc_device 0x800000 /boot/uImage 1\; then echo "Found bootable drive on SDCard"\; fi\; done
>>setenv mmc_init mmc init\; run mmc_test
>>setenv mmc_rootdelay 10
>>setenv mmc_rootfstype ext2
>>setenv mmc_set_bootargs setenv bootargs console=\$console root=\$mmc_root rootdelay=\$mmc_rootdelay rootfstype=\$mmc_rootfstype \$mtdparts
>>setenv mmc_boot "mw 0x800000 0 1\; ext2load mmc \$mmc_device 0x800000 /boot/uImage\; if ext2load mmc \$mmc_device 0x1100000 /boot/uInitrd\; then bootm 0x800000 0x1100000\; else bootm 0x800000\; fi"
>>setenv mmc_bootcmd run mmc_init\; run mmc_set_bootargs\; run mmc_boot
>>setenv usb_init usb start\; run usb_scan
>>setenv usb_bootcmd run usb_init\; run usb_set_bootargs\; run usb_boot
>>setenv bootcmd run mmc_bootcmd\; run usb_bootcmd\; usb stop\; run openwrt_bootcmd\; reset

U-Boot 2011.12

Voulant être un peu plus à jour, je suis passé sous un U-Boot plus récent, version 2011.12.

J'ai appliqué un patch trouvé sur le forum de Jeff Doozan créé par davygravy mais en enlevant la partie de configuration de l'environnement par défaut.
Un autre patch issu des travaux de Gérard Kerma sur le driver SDIO et trouvétoujours sur le même forum permet la prise en compte de la carte SD.

>tar -xjf u-boot-2011.12.tar.bz2
>cp dockstar-uboot2011.12_dg.patch u-boot-2011.12/
>cp kerma-kirkwood-mvsdio.diff u-boot-2011.12/
>cd u-boot-2011.12
>patch -p1 < dockstar-uboot2011.12_dg.patch
>patch -p1 < kerma-kirkwood-mvsdio.diff
>codesourcery-arm-2009q3.sh
>make distclean
>make dockstar_config
>make u-boot.kwb
>dd if=u-boot.kwb of=u-boot.mtd0.kwb bs=512k conv=sync
>exit

Installation

Je commence par tester le chargeur :

usb start
ext2load usb 0:1 0x800000 uboot.mtd0.kwb
go 0x800200

Si l'application se lance, je l'installe :

usb start
ext2load usb 0:1 0x800000 uboot.mtd0.kwb
nand erase 0x0 0x80000
nand write.e 0x800000 0x0 0x80000

Démarrage

Le log de démarrage :

U-Boot 2010.09 (Jul 07 2012 - 19:34:12)
Marvell-Dockstar - MMC/SD

SoC:   Kirkwood 88F6281_A0
DRAM:  128 MiB
NAND:  256 MiB
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
88E1116 Initialized on egiga0
Hit any key to stop autoboot:  0 
Marvell>>

Problème uboot 2011.12

J'ai bien les outils liés à la carte SD mais j'ai un petit soucis avec je ne sais quelle partie du pilote.
J'ai le message suivant :

U-Boot 2011.12 (Jul 11 2012 - 19:03:43)
Seagate FreeAgent DockStar - SD/MMC

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 
SD found. Card desciption is:
Manufacturer:       0x03, OEM "SD"
Product name:       "SU01G", revision 8.0
Serial number:      15472313
Manufacturing date: 9/2007
CRC:                0x00, b0 = 0
mmc block read error
mmc1 is available
No MMC card found
syntax error
mmc block read error
bad MBR sector signature 0x3135
** Bad partition 1 **
mmc block read error
bad MBR sector signature 0x0000
** Bad partition 1 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!

A voir mais la version debug du chargeur ne veut pas démarrer.

nas/dockstar/boot/boot_sd-card.1342170024.txt.gz · Dernière modification: 14 /11/2016 13:12 (modification externe)