Outils pour utilisateurs

Outils du site


Panneau latéral

nas:dockstar:boot:boot_usb

Boot OpenWrt

Sur le wiki d'OpenWrt, il est décrit la base pour pouvoir démarrer le Dockstar sur cette mini distribution.

Mais il faut passer par un “2nd stage bootloader” spécifique à OpenWrt et donc ralentir le démarrage alors que U-Boot peut supporter directement le démarrage sur d'autres supports (SD, USB) si ceux-ci ont été installés.

Par défaut, U-boot ne le permet pas mais Jeff Doozan a intégré cette capacité.

U-Boot

Installation d'un autre U-Boot sur le Dockstar avec modifications sur l'environnement de démarrage puisque par défaut, Jeff Dozan utilise un système basé sur du Debian, la configuration reflète son choix.
Nettoyage de tout la configuration pour obtenir ce qui suit :

printenv
ethact=egiga0
baudrate=115200
mainlineLinux=yes
console=ttyS0,115200
led_init=green blinking
led_exit=green off
led_error=orange blinking
mtdids=nand0=orion_nand
partition=nand0,2
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_rootdelay=10
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
fileaddr=800000
mtdparts=mtdparts=orion_nand:1M(u-boot),4M@1M(uImage),10M@5M(rootfs),-(rootfs_data)
ethaddr=XX:XX:XX:XX:XX:XX
arcNumber=2998
bootcmd=usb start; run usb_bootcmd; usb stop; run openwrt_bootcmd; reset
filesize=1
usb_device=0:1
usb_root=/dev/sda1
openwrt_root=/dev/mtdblock2 ro
openwrt_rootfstype=jffs2
openwrt_set_bootargs=setenv bootargs console=$console root=$openwrt_root rootfstype=$openwrt_rootfstype $mtdparts $openwrt_custom_params
openwrt_boot=nand read.e 0x6400000 0x100000 0x400000; bootm 0x6400000
openwrt_bootcmd=run openwrt_set_bootargs; run openwrt_boot
usb_rootfstype=ext2
usb_set_bootargs=setenv bootargs console=$console root=$usb_root rootdelay=$usb_rootdelay rootfstype=$usb_rootfstype $usb_custom_params
ipaddr=192.168.1.2
serverip=192.168.1.11
bootdelay=10
stdin=serial
stdout=serial
stderr=serial

Environment size: 1872/131068 bytes
Marvell>> 

Ceci permet de démarrer sur une clef USB avec les partitions comme suit :

Support NAND USB USB
Partition mtd0 sda1 sda2
Taille 1Mo - 256Mo
Contenu u-boot uImage+rootfs+data swap
Système - ext2 swap

Il est possible de démarrer sur une carte SD et gagner un port USB supplémentaire mais il faut réaliser la partie électronique, ajouter un lecteur de carte SD et ajouter le support MMC à U-Boot.

nas/dockstar/boot/boot_usb.txt · Dernière modification: 17 /11/2016 15:03 par psolyca