#!/bin/sh

DESC="IPWireless USB Modem"
device="ttyIPWu"
module="ipwireless_usb"
mode="664"
group="dialout"

remove_devices() {
  rm -f /dev/${device}[0-9]
  rm -f /dev/${device}1[0-9]
}

start_it() {
  if insmod /lib/modules/`uname -r`/kernel/drivers/usb/$module.o ; then
    remove_devices
    major=`awk "\\$2==\"$device\" {print \\$1}" /proc/devices`
    for no in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ; do
      mknod /dev/${device}$no c $major $no
      chmod $mode /dev/${device}$no
      chown root:$group /dev/${device}$no
    done
    echo "."
  else
    echo "failed."
  fi
}

case "$1" in
  start)
    echo -n "Starting $DESC: $module"
    start_it
    ;;
  stop)
    echo -n "Stopping $DESC: $module"
    if rmmod $module ; then
      remove_devices
      echo "."
    else
      echo "failed."
    fi
    ;;
  restart)
    echo -n "Restarting $DESC: $module"
    remove_devices
    rmmod $module
    start_it
    ;;
  *)
    echo "Usage: $0 start|stop|restart"
    ;;
esac
