#!/bin/sh

#ZTE modify for Cdrom+Tcard 2013.2.4 begin
ZTE_HTTP_SHARE_DIR="/tmp/sd"
ZTE_LUNS=`cat /proc/gadget/luns`
#ZTE modify for Cdrom+Tcard 2013.2.4 end

eval `sncfg mget USB_COMPOSITE PRODUCT_TYPE NO_SDSYSLOG`

RNDIS=`cat /sys/devices/virtual/BOOT/BOOT/boot/modem`
META=`cat /sys/class/BOOT/BOOT/boot/boot_mode`
SD_MASS=`expr $USB_COMPOSITE / 2 % 2`

if [ $RNDIS -ne 1 ] ; then
	if [ $META -ne 1 ] ; then
		exit 1
	fi
fi

stop() {
	rmmod mmc-host
}

start() {
	insmod /lib/modules/mmc-host.ko
	# This is workaround. When product board is fixed, this workaround should be removed
	if [ $PRODUCT_TYPE = "MIFI" ] ; then
		echo "-w=1:3 0 0 0 0 1 0" > /sys/devices/virtual/misc/mtgpio/pin
	fi
}

plugin() {
	if [ -d "$ZTE_HTTP_SHARE_DIR" ] ; then
		exit 1
	fi
	if [ -b /dev/mmcblk0p1 ] ; then
		MMCDEV=/dev/mmcblk0p1
	elif [ -b /dev/mmcblk1p1 ] ; then
		MMCDEV=/dev/mmcblk1p1
	elif [ -b /dev/mmcblk0 ] ; then
		MMCDEV=/dev/mmcblk0
	elif [ -b /dev/mmcblk1 ] ; then
		MMCDEV=/dev/mmcblk1
	else
		exit 1
	fi

	if [ $META -eq 1 ] ; then
		mkdir -p /tmp/sd
		mount $MMCDEV /tmp/sd
	elif [ $SD_MASS -eq 0 ] ; then
		mkdir -p /tmp/sd
		mount $MMCDEV /tmp/sd
		SYSLOG_FOLDER="/tmp/sd/syslog"
		if [ -d $SYSLOG_FOLDER ]; then
			rm -rf $SYSLOG_FOLDER
		fi
		mkdir -p $SYSLOG_FOLDER
		/etc/init.d/sysklogd stop
		mv -f /var/log $SYSLOG_FOLDER
		ln -s $SYSLOG_FOLDER /var/log
		/sbin/syslogd -s 131072 -b 0 -l 7  && /sbin/klogd
	elif [ $SD_MASS -eq 1 ] ; then
	  #ZTE modify for Cdrom+Tcard 2013.2.4 begin
	  if [ $ZTE_LUNS -eq 3 ] ; then
				CD_MASS=`cat /sys/devices/platform/mt_udc/mtk_gadget/lun1/file | grep storage`
				if [ ! $CD_MASS ] ; then
					echo $MMCDEV > /sys/devices/platform/mt_udc/mtk_gadget/lun1/file
				fi
	  elif [ $ZTE_LUNS -eq 2 ] ; then
				CD_MASS=`cat /sys/devices/platform/mt_udc/mtk_gadget/lun0/file | grep storage`
				if [ ! $CD_MASS ] ; then
					echo $MMCDEV > /sys/devices/platform/mt_udc/mtk_gadget/lun0/file
				fi
	  fi
	  #ZTE modify for Cdrom+Tcard 2013.2.4 end
	fi
}

plugout() {

	if [ $META -eq 1 ] ; then
		umount /tmp/sd
		rm -rf /tmp/sd
	elif [ $SD_MASS -eq 0 ] ; then
                /etc/init.d/sysklogd stop
                sync
       	        umount /tmp/sd
                rm -rf /tmp/sd
       	        rm -f /var/log
                mkdir -p /var/log
       	        /etc/init.d/sysklogd start
	elif [ $SD_MASS -eq 1 ] ; then
	  #ZTE modify for Cdrom+Tcard 2013.2.4 begin
	  if [ $ZTE_LUNS -eq 3 ] ; then
		    echo > /sys/devices/platform/mt_udc/mtk_gadget/lun1/file
	  elif [ $ZTE_LUNS -eq 2 ] ; then
		    echo > /sys/devices/platform/mt_udc/mtk_gadget/lun0/file
	  fi
	  #ZTE modify for Cdrom+Tcard 2013.2.4 end
	fi
}

#ZTE modify for Cdrom+Tcard 2013.2.4 begin
httpshare() {
  if [ -b /dev/mmcblk0p1 ] ; then
		MMCDEV=/dev/mmcblk0p1
	elif [ -b /dev/mmcblk1p1 ] ; then
		MMCDEV=/dev/mmcblk1p1
	elif [ -b /dev/mmcblk0 ] ; then
		MMCDEV=/dev/mmcblk0
	elif [ -b /dev/mmcblk1 ] ; then
		MMCDEV=/dev/mmcblk1
	else
		exit 1
	fi

	mkdir -p /tmp/sd
	#ZTE guoshoupeng modify for Tcard file display begin
	#mount $MMCDEV /tmp/sd
	mount $MMCDEV /tmp/sd -o shortname=mixed,utf8
	#ZTE guoshoupeng modify for Tcard file display end
	if [ $ZTE_LUNS -eq 3 ] ; then
		echo > /sys/devices/platform/mt_udc/mtk_gadget/lun1/file
	elif [ $ZTE_LUNS -eq 2 ] ; then
		echo > /sys/devices/platform/mt_udc/mtk_gadget/lun0/file
	fi
}

usb() {
	umount /tmp/sd
	rm -rf /tmp/sd
	
	if [ -b /dev/mmcblk0p1 ] ; then
		MMCDEV=/dev/mmcblk0p1
	elif [ -b /dev/mmcblk1p1 ] ; then
		MMCDEV=/dev/mmcblk1p1
	elif [ -b /dev/mmcblk0 ] ; then
		MMCDEV=/dev/mmcblk0
	elif [ -b /dev/mmcblk1 ] ; then
		MMCDEV=/dev/mmcblk1
	else
		exit 1
	fi
	
	if [ $ZTE_LUNS -eq 3 ] ; then
		echo $MMCDEV > /sys/devices/platform/mt_udc/mtk_gadget/lun1/file
	elif [ $ZTE_LUNS -eq 2 ] ; then
		echo $MMCDEV > /sys/devices/platform/mt_udc/mtk_gadget/lun0/file
	fi
}
#ZTE modify for Cdrom+Tcard 2013.2.4 end

case "$1" in
	start)
		start
		;;
	stop)
		stop
		;;
	#ZTE modify for Tcard 2013.11.11 begin
	plugin)
		exit 1
		;;
	zteplugin)
		plugin
		;;
	#ZTE modify for Tcard 2013.11.11 end
	plugout)
		plugout
		;;
	#ZTE modify for Cdrom+Tcard 2013.2.4 begin
	httpshare)
		httpshare
		;;
	usb)
		usb
		;;
	#ZTE modify for Cdrom+Tcard 2013.2.4 end
	plug)
		case "$ACTION" in
			add)
				plugin
				;;
			remove)
				plugout
				;;
		esac
		;;
esac
