diff options
Diffstat (limited to 'meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/init')
-rwxr-xr-x | meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/init | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/init b/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/init new file mode 100755 index 0000000000..63750f187c --- /dev/null +++ b/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/init @@ -0,0 +1,80 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: irda +# Required-Start: $network $remote_fs +# Required-Stop: $network $remote_fs +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Infrared port support +### END INIT INFO + +module_id() { + awk 'BEGIN { FS=": " } /Hardware/ { print $2 } ' </proc/cpuinfo +} + +if [ ! -f /etc/sysconfig/irda ]; then + + case `module_id` in + "HP iPAQ H2200" | "HP iPAQ HX4700" | "HTC Universal") + IRDA=yes + DEVICE=/dev/ttyS2 + DONGLE= + DISCOVERY= + ;; + *) + IRDA=yes + DEVICE=/dev/ttyS1 + DONGLE= + DISCOVERY= + ;; + esac + + mkdir -p /etc/sysconfig + echo "IRDA=$IRDA" > /etc/sysconfig/irda + if [ $IRDA = "yes" ]; then + echo "DEVICE=$DEVICE" >> /etc/sysconfig/irda + echo "DONGLE=$DONGLE" >> /etc/sysconfig/irda + echo "DISCOVERY=$DISCOVERY" >> /etc/sysconfig/irda + fi +fi + +. /etc/sysconfig/irda + +# Check that irda is up. +[ ${IRDA} = "no" ] && exit 0 + +[ -f /usr/sbin/irattach ] || exit 0 + +ARGS= +if [ $DONGLE ]; then + ARGS="$ARGS -d $DONGLE" +fi +if [ "$DISCOVERY" = "yes" ];then + ARGS="$ARGS -s" +fi + +case "$1" in + start) + echo -n "Starting IrDA: " + irattach ${DEVICE} ${ARGS} > /dev/null 2>&1 & + echo "$NAME." + ;; + stop) + echo -n "Stopping IrDA: " + killall irattach > /dev/null 2>&1 + echo "$NAME." + ;; + restart|force-reload) + echo -n "Restarting IrDA: " + irattach ${DEVICE} ${ARGS} > /dev/null 2>&1 & + sleep 1 + killall irattach > /dev/null 2>&1 + echo "$NAME." + ;; + *) + N=/etc/init.d/$NAME + echo "Usage: $N {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + |