aboutsummaryrefslogtreecommitdiffstats
path: root/packages/initrdscripts
diff options
context:
space:
mode:
authorPaul Sokolovsky <pmiscml@gmail.com>2008-02-21 14:25:21 +0000
committerPaul Sokolovsky <pmiscml@gmail.com>2008-02-21 14:25:21 +0000
commit31eb5409880015cdb38bc25924773af5a20d93dd (patch)
tree765bccde126bb500d264a391a5cdbbb080f5bfb4 /packages/initrdscripts
parentc909315091b489619d0fff985615a05dfe41bb9a (diff)
downloadopenembedded-31eb5409880015cdb38bc25924773af5a20d93dd.tar.gz
applied changes from 5a8c2a2330d46aac768d52f881486817fce472bb
through e8991301f05699cb60606be403c8f4897f904025 initramfs-module-kexecboot: Initramfs module to kexec to kernel in rootfs. (PaulS, Koen)
Diffstat (limited to 'packages/initrdscripts')
-rw-r--r--packages/initrdscripts/files/87-kexecboot.sh17
-rw-r--r--packages/initrdscripts/initramfs-module-kexecboot_1.0.bb12
2 files changed, 29 insertions, 0 deletions
diff --git a/packages/initrdscripts/files/87-kexecboot.sh b/packages/initrdscripts/files/87-kexecboot.sh
new file mode 100644
index 0000000000..ab281577d4
--- /dev/null
+++ b/packages/initrdscripts/files/87-kexecboot.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+# Allow kexecing to kernel in rootfs
+
+if [ -n "$BOOT_ROOT" -a -f "$BOOT_ROOT/boot/zImage" ]; then
+ echo "Kernel found in rootfs:"
+ ls -l "$BOOT_ROOT/boot/zImage"
+ initramfs=""
+ if [ -f "$BOOT_ROOT/boot/initramfs.bin" ]; then
+ echo "Initramfs found in rootfs:"
+ ls -l "$BOOT_ROOT/boot/initramfs.bin"
+ initramfs="--initrd=$BOOT_ROOT/boot/initramfs.bin"
+ fi
+ echo /usr/sbin/kexec -f "$BOOT_ROOT/boot/zImage" $initramfs --command-line="$CMDLINE"
+ sleep 10
+ /usr/sbin/kexec -f "$BOOT_ROOT/boot/zImage" $initramfs --command-line="$CMDLINE"
+ sleep 10000
+fi
diff --git a/packages/initrdscripts/initramfs-module-kexecboot_1.0.bb b/packages/initrdscripts/initramfs-module-kexecboot_1.0.bb
new file mode 100644
index 0000000000..e8be2fd757
--- /dev/null
+++ b/packages/initrdscripts/initramfs-module-kexecboot_1.0.bb
@@ -0,0 +1,12 @@
+SRC_URI = "file://87-kexecboot.sh"
+PR = "r0.2"
+DESCRIPTION = "An initramfs module for kexecing kernel from rootfs."
+RDEPENDS = "initramfs-uniboot kexec-static"
+
+do_install() {
+ install -d ${D}/initrd.d
+ install -m 0755 ${WORKDIR}/87-kexecboot.sh ${D}/initrd.d/
+}
+
+PACKAGE_ARCH = "all"
+FILES_${PN} += " /initrd.d/* "