#!/bin/bash

# chkconfig: 345 85 15
# description: Forced load of mmodem module driver.

LIBDIR="/lib/modules/`uname -r`/net"
DRIVER_NAME=mmodem
SERIAL_DEV=ttyPX

case "$1" in
  start)
	echo -n "Initializing PX400 Quadmodem card: "

	if [ ! -f $LIBDIR/$DRIVER_NAME.o ]; then
	  echo file $LIBDIR/$DRIVER_NAME.o not found.
	  exit 1
	fi
	/sbin/insmod -f $LIBDIR/$DRIVER_NAME.o >/dev/null
	echo -n $DRIVER_NAME.o
	echo
	touch /var/lock/subsys/$DRIVER_NAME
	;;
  stop)
	echo -n "Unloading PX400 Quadmodem module: "

	rmmod $DRIVER_NAME

	rm -f /var/lock/subsys/$DRIVER_NAME
	echo -n $DRIVER_NAME.o
	echo
	;;
  restart)
	$0 stop
        $0 start
	;;
  status)
  	cat /proc/devices | grep -q $SERIAL_DEV
	if [ $? = 0 ]; then
	    lsmod | grep -q $DRIVER_NAME
	    if [ $? = 0 ]; then
		echo "Modular PX400 Quadmodem card detected."
	    else
		echo "Monolithic PX400 Quadmodem card detected."
	    fi
 	else
	  echo "PX400 Quadmodem card not configured."
	fi
	;;
  *)
	echo "Usage: $0 {start|stop|status|restart}"
	exit 1
esac

exit 0
