#!/bin/sh

#. /etc_ro_fs/init.d/common
. /etc/autoconf.conf

#

#readconf /etc/bluedsl.conf ENABLE_USB_HOST


if [ ! -z "$CONFIG_LINUX_2_6" ]; then
	USB_HOST_MOD="ohci-hcd"
	USB_PRINT_MOD="usblp"
	USB_FS="usbfs"
else
	USB_HOST_MOD="usb-ohci"
	USB_PRINT_MOD="printer"
	USB_FS="usbdevfs"
fi

case $1 in
    start)
    	if [ ! "$ENABLE_USB_HOST" = "1" ] ; then
            echo "Not starting USB-HOST"
            exit 0                                                              
        fi
      
        modprobe $USB_HOST_MOD
		if [ ! -e /proc/bus/usb/devices ]; then
                mount -t $USB_FS none /proc/bus/usb
        fi;

	#TODO : usbmgr
        [ ! -z "$CONFIG_PRINT_SERVER" ] && modprobe $USB_PRINT_MOD
        [ ! -z "$CONFIG_PRINT_SERVER" ] && /etc/init.d/print_server start
		[ ! -z "$CONFIG_TPE" ] && /etc/init.d/tpe start
		[ ! -z "$CONFIG_USBSERIAL" ] && modprobe usbserial && modprobe cp2101
		[ ! -z "$CONFIG_STORAGE" ] && /etc/init.d/usb_storage start
		[ -d /var/run ] || mkdir /var/run
		[ ! -z "$CONFIG_USBMGR" ] && usbmgr
		[ ! -z "$CONFIG_SAMBA" ] && /etc/init.d/samba start
        ;;

    stop)
        [ ! -z "$CONFIG_TPE" ] && /etc/init.d/tpe stop
		[ ! -z "$CONFIG_USBSERIAL" ] && rmmod usbserial && rmmod cp2101
		[ ! -z "$CONFIG_SAMBA" ] && /etc/init.d/samba stop
        [ ! -z "$CONFIG_PRINT_SERVER" ] && /etc/init.d/print_server stop
        [ ! -z "$CONFIG_PRINT_SERVER" ] && rmmod $USB_PRINT_MOD
		[ ! -z "$CONFIG_STORAGE" ] && /etc/init.d/usb_storage stop
		if [ ! -z "$CONFIG_USBMGR" ]; then
			kill $(cat "/var/run/usbmgr.pid")
			rm -f "/var/run/usbmgr.pid"
		fi;
		rmmod $USB_HOST_MOD
        ;;
   
    *)
        echo "do nothing"
        ;;
esac


