diff options
Diffstat (limited to 'poky/meta/recipes-core/sysvinit/sysvinit-inittab')
-rw-r--r-- | poky/meta/recipes-core/sysvinit/sysvinit-inittab/inittab | 30 | ||||
-rw-r--r-- | poky/meta/recipes-core/sysvinit/sysvinit-inittab/start_getty | 43 |
2 files changed, 73 insertions, 0 deletions
diff --git a/poky/meta/recipes-core/sysvinit/sysvinit-inittab/inittab b/poky/meta/recipes-core/sysvinit/sysvinit-inittab/inittab new file mode 100644 index 000000000..6abbdf455 --- /dev/null +++ b/poky/meta/recipes-core/sysvinit/sysvinit-inittab/inittab @@ -0,0 +1,30 @@ +# /etc/inittab: init(8) configuration. +# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $ + +# The default runlevel. +id:5:initdefault: + +# Boot-time system configuration/initialization script. +# This is run first except when booting in emergency (-b) mode. +si::sysinit:/etc/init.d/rcS + +# What to do in single-user mode. +~~:S:wait:/sbin/sulogin + +# /etc/init.d executes the S and K scripts upon change +# of runlevel. +# +# Runlevel 0 is halt. +# Runlevel 1 is single-user. +# Runlevels 2-5 are multi-user. +# Runlevel 6 is reboot. + +l0:0:wait:/etc/init.d/rc 0 +l1:1:wait:/etc/init.d/rc 1 +l2:2:wait:/etc/init.d/rc 2 +l3:3:wait:/etc/init.d/rc 3 +l4:4:wait:/etc/init.d/rc 4 +l5:5:wait:/etc/init.d/rc 5 +l6:6:wait:/etc/init.d/rc 6 +# Normally not reached, but fallthrough in case of emergency. +z6:6:respawn:/sbin/sulogin diff --git a/poky/meta/recipes-core/sysvinit/sysvinit-inittab/start_getty b/poky/meta/recipes-core/sysvinit/sysvinit-inittab/start_getty new file mode 100644 index 000000000..e15ae35f9 --- /dev/null +++ b/poky/meta/recipes-core/sysvinit/sysvinit-inittab/start_getty @@ -0,0 +1,43 @@ +#!/bin/sh +############################################################################### +# This script is used to automatically set up the serial console(s) on startup. +# The variable SERIAL_CONSOLES can be set in meta/conf/machine/*.conf. +# Script enhancement has been done based on Bug YOCTO #10844. +# Most of the information is retrieved from /proc virtual filesystem containing +# all the runtime system information (eg. system memory, device mount, etc). +############################################################################### + +# Get active serial filename. +active_serial=$(grep "serial" /proc/tty/drivers | cut -d/ -f1 | sed "s/ *$//") + +# Rephrase input parameter from ttyS target index (ttyS1, ttyS2, ttyAMA0, etc). +runtime_tty=$(echo $2 | grep -oh '[0-9]') + +# Backup $IFS. +DEFAULT_IFS=$IFS +# Customize Internal Field Separator. +IFS="$(printf '\n\t')" + +for line in $active_serial; do + # Check we have the file containing current active serial target index. + if [ -e "/proc/tty/driver/$line" ] + then + # Remove all unknown entries and discard the first line (desc). + activetty=$(grep -v "unknown" "/proc/tty/driver/$line" \ + | tail -n +2 | grep -oh "^\s*\S*[0-9]") + for active in $activetty; do + # If indexes do match then enable the serial console. + if [ $active -eq $runtime_tty ] + then + if [ -c /dev/$2 ] + then + /sbin/getty -L $1 $2 $3 + fi + break + fi + done + fi +done + +# Restore $IFS. +IFS=$DEFAULT_IFS |