summaryrefslogtreecommitdiffstats
path: root/board/x86_generic/env/bin/boot
diff options
context:
space:
mode:
Diffstat (limited to 'board/x86_generic/env/bin/boot')
-rw-r--r--board/x86_generic/env/bin/boot37
1 files changed, 37 insertions, 0 deletions
diff --git a/board/x86_generic/env/bin/boot b/board/x86_generic/env/bin/boot
new file mode 100644
index 0000000000..fcfffe3194
--- /dev/null
+++ b/board/x86_generic/env/bin/boot
@@ -0,0 +1,37 @@
+#!/bin/sh
+
+. /env/config
+
+if [ x$1 = xdisk ]; then
+ root=disk
+ kernel=disk
+fi
+
+if [ x$1 = xnet ]; then
+ root=net
+ kernel=net
+fi
+
+if [ x$ip = xdhcp ]; then
+ bootargs="$bootargs ip=dhcp"
+else
+ bootargs="$bootargs ip=$eth0.ipaddr:$eth0.serverip:$eth0.gateway:$eth0.netmask:::"
+fi
+
+if [ x$root = xdisk ]; then
+ bootargs="$bootargs root=$rootpart_disk rootfstype=$rootpart_fs rw"
+else
+ bootargs="$bootargs root=/dev/nfs nfsroot=$eth0.serverip:$nfsroot,v3,tcp rw"
+fi
+
+if [ $kernel = net ]; then
+ if [ x$ip = xdhcp ]; then
+ dhcp
+ fi
+ tftp $uimage uImage || exit 1
+ bootm uImage
+else
+ bootargs="BOOT_IMAGE=$kernel_device auto $bootargs"
+ linux16 $kernel_device
+fi
+