What is the purpose of "usb_scan" ? June 17, 2012 07:25AM |
Registered: 11 years ago Posts: 12 |
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=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 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=02:50:43:66:fb:a8 rescue_installed=1 arcNumber=3338 serverip=192.168.0.8 ipaddr=192.168.0.5 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
Re: What is the purpose of "usb_scan" ? June 17, 2012 08:18AM |
Registered: 12 years ago Posts: 378 |
Quote
Is it for finding the good drive to boot from ?
Quote
Can we modify it to detect if a s-ata drive is on /dev/sda and then using /dev/sdb1 automatically instead of /dev/sda1 ?
ide_init=ide reset ide_rootfstype=ext2 bootcmd_ide=run ide_init; run ide_load_uimage; run set_bootargs_ide; run ide_boot; ide_root=/dev/sda5 bootcmd=run bootcmd_ide; run bootcmd_usb; usb stop; run bootcmd_pogo; reset ide_device=0:3 ide_load_uimage=mw 0x800000 0 1;ext2load ide 0:3 0x800000 /uImage ide_boot=if ext2load ide 0:3 0x1100000 /uInitrd; then bootm 0x800000 0x1100000;else bootm 0x800000;fi;
Re: What is the purpose of "usb_scan" ? June 17, 2012 08:45AM |
Registered: 11 years ago Posts: 12 |
usb_scan_1=usb=0:1 dev=sda1
Re: What is the purpose of "usb_scan" ? June 17, 2012 01:23PM |
Registered: 12 years ago Posts: 378 |
You are correct. That is why it is called the IDE subystem. But our devices only have SATA.Quote
I think p-ata and s-ata are two different kind of IDE. (I'm possibly wrong here)
Quote
My problem is not booting from s-ata, it's booting from USB when I have a s-ata drive plugged in. When a s-ata drive is plugged in the goflex Home, it take the place of sda, and usb_scan is setting the usb drive to sda, because it is the first usb drive. But sda is not the first usb drive sda, it's sdb.
Re: What is the purpose of "usb_scan" ? October 31, 2012 09:53AM |
Registered: 11 years ago Posts: 56 |
Quote
gnexus Wrote:
-------------------------------------------------------
you need to completely understand what Jeff's environment code does.