#!/bin/bash
#
# seldev init script for seldev module
#
# description: HP SEL module provides access to System Event Log in /proc.

# Source function library.
. /etc/rc.config

# Determine the base and follow a runlevel link name.
base=${0##*/}
link=${base#*[SK][0-9][0-9]}

# Force execution if not called by a runlevel directory.
test $link = $base && INSMOD_SELDEV="yes"
test "$INSMOD_SELDEV" = yes || exit 0

SEL_MODULE_PATH=char/mmc/era/shared/seldev/linux/seldev.o
PATH_MODIFIER=""
KERNEL=$(uname -r)
 
if [ "$(uname -r | grep -E "^2.2")" = "" ]; then
  PATH_MODIFIER=kernel/drivers
fi

#
#	See how we were called.
#
return=$rc_done
case "$1" in
  start)

    if [ "$(grep seldev /proc/devices)" = "" ]; then
      # insert the module in executing kernel
      echo -n 'Loading HP SEL device driver: '	
      /sbin/insmod -f /lib/modules/$KERNEL/$PATH_MODIFIER/$SEL_MODULE_PATH  || return="$rc_failed"
      echo -e "$return"
    fi
	;;
  stop)

	echo -n 'Unloading HP SEL device driver: '
	rmmod seldev || return="$rc_failed"
	echo -e "$return"
	;;
  reload|restart)

	$0 stop
	$0 start
	RETVAL=$?
	;;
  *)
	echo "Usage: /sbin/init.d/seldev {start|stop|restart|reload}"
	exit 1
esac


test "$return" = "$rc_done" || exit 1
exit 0
