diff options
author | "Steven J. Hill" <sjhill@realitydiluted.com> | 2007-05-09 22:48:41 +0000 |
---|---|---|
committer | "Steven J. Hill" <sjhill@realitydiluted.com> | 2007-05-09 22:48:41 +0000 |
commit | 6b00c90d709a01822027fb9986ec8ace605dd991 (patch) | |
tree | 247dda891d7c16580a7d274411581c519d01c2db /package/ltt/S27tracer | |
parent | 448153a06a443ad61f3df88408edf3a7da98ea0c (diff) | |
download | buildroot-novena-6b00c90d709a01822027fb9986ec8ace605dd991.tar.gz buildroot-novena-6b00c90d709a01822027fb9986ec8ace605dd991.zip |
Rename all INIT scripts to have the numerical prefixes to easily see the start-up order.
Diffstat (limited to 'package/ltt/S27tracer')
-rwxr-xr-x | package/ltt/S27tracer | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/package/ltt/S27tracer b/package/ltt/S27tracer new file mode 100755 index 000000000..3dee49211 --- /dev/null +++ b/package/ltt/S27tracer @@ -0,0 +1,93 @@ +#!/bin/sh +# +# Load tracer module and create tracer device node. +# + +MODULE="tracer" +MAIN_DEVICE="tracer" +USER_DEVICE="tracerU" +GROUP="root" +MODE="664" + +start() { + if [ -e /dev/${MAIN_DEVICE} -o -e /dev/${USER_DEVICE} ] + then + # tell the user about what we are doing + echo "Deleting old tracer nodes: /dev/tracer and /dev/tracerU" + + # remove stale nodes + rm -f /dev/${MAIN_DEVICE} + rm -f /dev/${USER_DEVICE} + fi + + # look for the major number + MAJOR=`/bin/grep " ${MODULE}$" /proc/devices | cut -d" " -f1` + + # does the device exist? + if [ ${MAJOR} ] + then + echo "Found tracer device with major number:" ${MAJOR} + else + echo "Loading tracer kernel module: " + # invoke modprobe + /sbin/modprobe ${MODULE} + MAJOR=`/bin/grep " ${MODULE}$" /proc/devices | cut -d" " -f1` + if [ ${MAJOR} ] + then + echo "Found tracer device with major number:" ${MAJOR} + else + echo "Did not find tracer device ... /dev entries not created ..." + exit 1 + fi + fi + + # tell the user about what we are doing + echo "Creating new tracer nodes: /dev/tracer and /dev/tracerU" + + # create the character special file + /bin/mknod /dev/${MAIN_DEVICE} c ${MAJOR} 0 + /bin/mknod /dev/${USER_DEVICE} c ${MAJOR} 1 + + # set permissions and ownership + /bin/chgrp ${GROUP} /dev/${MAIN_DEVICE} + /bin/chmod ${MODE} /dev/${MAIN_DEVICE} + /bin/chgrp ${GROUP} /dev/${USER_DEVICE} + /bin/chmod ${MODE} /dev/${USER_DEVICE} +} +stop() { + # tell the user about what we are doing + echo "Deleting tracer nodes: /dev/tracer and /dev/tracerU" + + # remove nodes + rm -f /dev/${MAIN_DEVICE} + rm -f /dev/${USER_DEVICE} + + if lsmod | /bin/grep "^${MODULE} " + then + echo -n "Removing tracer kernel module: " + # invoke modprobe -r + /sbin/modprobe -r ${MODULE} + echo "OK" + fi +} +restart() { + stop + start +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + restart + ;; + *) + echo $"Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? |