aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarren Hart <dvhart@linux.intel.com>2012-10-25 13:30:02 -0700
committerDarren Hart <dvhart@linux.intel.com>2012-10-26 20:24:53 -0700
commit0ebdf34f9a0f023f62305bddcbc8427d36f740b4 (patch)
tree0a8f7b2ab21a063f27d2cfd5f9ced49453a76f67
parent9fe538c48e6f60fde0728069c95b06671438eeaa (diff)
downloadmeta-intel-0ebdf34f9a0f023f62305bddcbc8427d36f740b4.tar.gz
meta-intel-0ebdf34f9a0f023f62305bddcbc8427d36f740b4.tar.bz2
meta-intel-0ebdf34f9a0f023f62305bddcbc8427d36f740b4.zip
fri2: Add tiny-init bbappend for devtmpfs and console
When using an initramfs, the default for poky-tiny, the kernel cannot automatically mount devtmpfs. Ensure it is mounted. This eliminates the need to create the ptmx device. Signed-off-by: Darren Hart <dvhart@linux.intel.com>
-rw-r--r--meta-fri2/recipes-core/tiny-init/tiny-init.bbappend6
-rw-r--r--meta-fri2/recipes-core/tiny-init/tiny-init/init26
2 files changed, 32 insertions, 0 deletions
diff --git a/meta-fri2/recipes-core/tiny-init/tiny-init.bbappend b/meta-fri2/recipes-core/tiny-init/tiny-init.bbappend
new file mode 100644
index 00000000..89416dc2
--- /dev/null
+++ b/meta-fri2/recipes-core/tiny-init/tiny-init.bbappend
@@ -0,0 +1,6 @@
+# Update the init script for the tiny image to manually mount devtmpfs and
+# ensure the ttyPCH1 device is available for the console.
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+
+PRINC := "${@int(PRINC) + 1}"
diff --git a/meta-fri2/recipes-core/tiny-init/tiny-init/init b/meta-fri2/recipes-core/tiny-init/tiny-init/init
new file mode 100644
index 00000000..4b78f017
--- /dev/null
+++ b/meta-fri2/recipes-core/tiny-init/tiny-init/init
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+# Mount the Linux kernel virtual filesystems
+mount none -t proc /proc
+mount none -t sysfs /sys
+
+# Ensure devtmpfs is mounted, it must be done manually with initramfs
+mount none -t devtmpfs /dev
+
+# Setup PTY infrastructure
+mkdir /dev/pts
+mount none -t devpts /dev/pts
+
+ifup lo
+
+# Allow for distro or local customizations
+if [ -f /etc/rc.local ] ; then
+ source /etc/rc.local
+fi
+
+# Become session leader and try to find a real tty (e.g. ttyS0)
+while true; do
+ setsid cttyhack sh
+ echo "Console sh exited with $?, respawning..."
+ sleep 1
+done