Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / u-boot / board / cray / L1 / bootscript.hush
diff --git a/qemu/roms/u-boot/board/cray/L1/bootscript.hush b/qemu/roms/u-boot/board/cray/L1/bootscript.hush
new file mode 100644 (file)
index 0000000..f2f78ad
--- /dev/null
@@ -0,0 +1,117 @@
+# $Header$
+# hush bootscript for PPCBOOT on L1
+# note: all #s are in hex, do _NOT_ prefix it with 0x
+
+flash_rfs=ffc00000
+flash_krl=fff00000
+tftp_addr=100000
+tftp2_addr=1000000
+
+if printenv booted
+then
+       echo already booted before
+else
+       echo first boot in environment, create and save settings
+       setenv booted OK
+       saveenv
+fi
+
+setenv autoload no
+# clear out stale env stuff, so we get fresh from dhcp.
+for setting in initrd fromflash kernel rootfs rootpath
+do
+setenv $setting
+done
+
+dhcp
+
+# if host provides us with a different bootscript, us it.
+if printenv bootscript
+       then
+       tftp $tftp_addr $bootcript
+       if imi $tftp_addr
+       then
+               source $tftp_addr
+       fi
+fi
+
+# default base kernel arguments.
+setenv bootargs $xbootargs devfs=mount ip=$ipaddr:$serverip:$gatewayip:$netmask:L1:eth0:off wdt=120
+
+# Have a kernel in flash?
+if imi $flash_krl
+then
+       echo ok kernel to boot from $flash_krl
+       setenv kernel $flash_krl
+else
+       echo no kernel to boot from $flash_krl, need tftp
+fi
+
+# Have a rootfs in flash? 
+echo test for SQUASHfs at $flash_rfs
+
+if imi $flash_rfs
+then
+       echo appears to be a good initrd image at base of flash OK
+       setenv rootfs $flash_rfs
+else
+       echo no image at base of flash, need nfsroot or initrd
+fi
+
+# I boot from flash if told to and I can.
+if printenv fromflash && printenv kernel && printenv rootfs
+then
+       echo booting entirely from flash
+       setenv bootargs root=/dev/ram0 rw $bootargs
+       bootm $kernel $rootfs
+       echo oh no failed so I try some other stuff
+fi
+
+# TFTP down a kernel
+if printenv bootfile
+then 
+       tftp $tftp_addr $bootfile
+       setenv kernel $tftp_addr
+       echo I will boot the TFTP kernel
+else
+       if printenv kernel
+       then
+               echo no bootfile specified, will use one from flash
+       else
+               setenv bootfile /opt/crayx1/craymcu/l1/flash/linux.image
+               echo OH NO! we have no bootfile,nor flash kernel! try default: $bootfile
+               tftp $tftp_addr $bootfile
+               setenv kernel $tftp_addr
+       fi
+fi
+
+# the rootfs.
+if printenv rootpath
+then
+       echo rootpath is $rootpath
+       if printenv initrd
+       then 
+               echo initrd is also specified, so use $initrd
+               tftp $tftp2_addr $initrd
+               setenv bootargs root=/dev/ram0 rw cwsroot=$serverip:$rootpath $bootargs
+               bootm $kernel $tftp2_addr
+       else
+               echo initrd is not specified, so use NFSROOT $rootpat
+               setenv bootargs root=/dev/nfs ro nfsroot=$serverip:$rootpath $bootargs
+               bootm $kernel
+       fi
+else
+       echo we have no rootpath check for one in flash
+       if printenv rootfs
+       then
+               echo I will use the one in flash
+               setenv bootargs root=/dev/mtdblock/0 ro rootfstype=squashfs $bootargs
+               bootm $kernel
+       else
+               setenv rootpath /export/crayl1
+               echo OH NO! we have no rootpath,nor flash kernel! try default: $rootpath
+               setenv bootargs root=/dev/mtdblock/0 ro rootfstype=squashfs $bootargs
+               bootm $kernel
+       fi
+fi
+reset