[LinuxBIOS] r29 - in buildrom-devel/skeleton: . bin

svn at openbios.org svn at openbios.org
Wed Sep 12 21:19:38 CEST 2007


Author: ward
Date: 2007-09-12 21:19:38 +0200 (Wed, 12 Sep 2007)
New Revision: 29

Modified:
   buildrom-devel/skeleton/bin/boot.functions
   buildrom-devel/skeleton/device.txt
   buildrom-devel/skeleton/linuxrc
Log:

Change the skeleton files to give us a simple busybox + kexec boot (statically
built kexec on disk).

Signed-off-by: Ward Vandewege <ward at gnu.org>
Acked-by: Ronald G. Minnich <rminnich at gmail.com>



Modified: buildrom-devel/skeleton/bin/boot.functions
===================================================================
--- buildrom-devel/skeleton/bin/boot.functions	2007-09-12 19:17:14 UTC (rev 28)
+++ buildrom-devel/skeleton/bin/boot.functions	2007-09-12 19:19:38 UTC (rev 29)
@@ -4,17 +4,11 @@
 # Note - these are being kept for compatablity purposes
 # The best solution is to use olpc-boot.sh
 
-CMDLINE="root=/dev/sda1 console=ttyS0,115200 console=tty0 rootdelay=10 rw"
-KERNEL="/bzImage"
-INITRD=""
+CMDLINE="root=/dev/sda1 ro console=tty0 console=ttyS0,115200"
+KERNEL="/boot/vmlinuz"
+INITRD="/boot/initrd.img"
 VT="1"
 
-# Any of the above can be over-ridden by /boot.conf
-
-if [ -f /boot.conf ]; then
-	. /boot.conf
-fi
-
 message() {
 	echo $1 > /dev/tty$VT
 	echo $1
@@ -26,25 +20,14 @@
 	# Switch to the mounted directory to make life easier for the script
 	cd $DIR 
 
-	if [ -x ./boot/olpc-boot.sh ]; then
-		. ./boot/olpc-boot.sh
-		message "Unable to execute the olpc-boot.sh script"
-		return
-	fi
+	# Any of the above can be over-ridden by /boot.conf
 
-	if [ -x ./olpc-boot.sh ]; then
-		. ./olpc-boot.sh
-		message "Unable to execute the olpc-boot.sh script"
-		return
+	if [ -f $DIR/etc/boot.conf ]; then
+		. $DIR/etc/boot.conf
 	fi
 
-	# For backwards compatablity - try to find the kernel
+	$DIR/sbin/kexec -l $DIR/$KERNEL --command-line="$CMDLINE"
+	$DIR/sbin/kexec -e
 
-	if [ ! -f $DIR$KERNEL ]; then
-		message "ERROR: $DIR$KERNEL doesn't exist."
-		return
-	fi
-
-	/sbin/kbl-kexec $DIR$KERNEL "$CMDLINE" $INITRD
-	message "ERROR: can't run kbl-kexec $DIR$KERNEL $CMDLINE $INITRD"
+	message "ERROR: can't run kexec $DIR$KERNEL $CMDLINE $INITRD"
 }

Modified: buildrom-devel/skeleton/device.txt
===================================================================
--- buildrom-devel/skeleton/device.txt	2007-09-12 19:17:14 UTC (rev 28)
+++ buildrom-devel/skeleton/device.txt	2007-09-12 19:19:38 UTC (rev 29)
@@ -6,5 +6,12 @@
 console        c       640     0       0       5       1
 sda    b       660     0       0       8       0
 sda1   b       660     0       0       8       1
+sda2   b       660     0       0       8       2
+sda3   b       660     0       0       8       3
+sda4   b       660     0       0       8       4
+sda5   b       660     0       0       8       5
+sda6   b       660     0       0       8       6
+sda7   b       660     0       0       8       7
+sda8   b       660     0       0       8       8
 mem    c       640     0       0       1       1
 fb0    c       640     0       0       29      0

Modified: buildrom-devel/skeleton/linuxrc
===================================================================
--- buildrom-devel/skeleton/linuxrc	2007-09-12 19:17:14 UTC (rev 28)
+++ buildrom-devel/skeleton/linuxrc	2007-09-12 19:19:38 UTC (rev 29)
@@ -1,62 +1,28 @@
 #!/bin/sh
 
-# We need boot functions for message()
+/sbin/makedevs /dev < device.txt > /output.makedevs.txt 2>&1
+
 . /bin/boot.functions
 
 boot_default() {
-	sh /bin/boot-nand
-	sh /bin/boot-usb
+	sh /bin/boot-hdd
 }
 
-# Make the null device by hand, since we use it in the makedevs step.
-
-mknod /dev/null c 1 3
-
 mkdir /proc
 mount -t proc proc /proc
 
 # For debug purposes
 mount -t usbfs usbfs /proc/bus/usb
 
-# Makedevs returns seemingly nasty error messages, even though the
-# files are still created (we're missing something in the minimal kernel 
-# that causes chown to return ENOSYS).
-# End result - we ignore the error messages
-
-/sbin/makedevs /dev < device.txt > /dev/null 2>&1
-
 # Show the version 
-cat /buildrom-version
 cat /buildrom-version > /dev/tty$VT
 
-# FIXME - bad!
-
-message "Starting bootmenu."
+message "Trying to boot from hdd."
 cd /bin
-./bootmenu
+./boot-hdd
 RET=$?
 cd /
 
-# Bootmenu now returns 0 if the timeout happened (meaning, 
-# we want to boot the default - which in this case is nand
-# then USB key.  $RET > 0 means to select the menu item
-
-# NOTE:  Should 3 be boot_default, or boot-usb only?
-
-if [ $RET -eq 0 ]; then
-	message "NOTICE: Booting default"
-	boot_default
-elif [ $RET -eq 1 ]; then
-	message "ERROR: Wired mode isn't supported right now."
-elif [ $RET -eq 2 ]; then
-	message "ERROR: Wireless mode isn't supported right now."
-elif [ $RET -eq 3 ]; then
-	sh /bin/boot-usb
-elif [ $RET -eq -1 ]; then
-	message "ERROR: The bootmenu was not successful."
-fi
-
 message "NOTICE: Starting the shell..."
-
 openvt $VT /bin/ash
 exec /bin/ash





More information about the coreboot mailing list