#!/bin/sh
#
PLATFORM=$(cat /proc/hardwareinfo)
case "$1" in
    start)
	ln -f -s /root /home/root
	echo -e '\033[9;0]' > /dev/fb0
	cd /root
#
# Set environment variables for Qt: required as R-Loader will start the Qt window
# server, as may any startup script, and we need the keyboard driver loaded
#
	export TOKEN_PATH='/etc/vnc/vnc.access'
	export QWS_SIZE='640x272'
	export QWS_DEPTH='32'
	export QWS_VNC_SERVER='libvnc'
	export QWS_KEYBOARD='remotekbdhandler:/dev/null'
	export QWS_MOUSE_PROTO='remotemouhandler:/dev/null'
#
# GPIO19 is startup reason: if set to 1 do NOT power up TELIT but DO activate
# PUSB1 & PUSB2
#
	echo 19 > /sys/class/gpio/export
	echo in > /sys/class/gpio/gpio19/direction
	POWERUSB=$(cat /sys/class/gpio/gpio19/value)
#
# Following sets PUSB1 & PUSB2 to outputs, level 0
#
	echo 21 > /sys/class/gpio/export
	echo out > /sys/class/gpio/gpio21/direction
	echo 22 > /sys/class/gpio/export
	echo out > /sys/class/gpio/gpio22/direction
	echo 0 > /sys/class/gpio/gpio21/value
	echo 0 > /sys/class/gpio/gpio22/value
#
# if gpio19 == 1 activate PUSB1 & 2, bring up Bluetooth subsystem
#
	if test "$POWERUSB" = "1"; then
		sleep 1
		if test "$PLATFORM" = "D11"; then
			echo 1 > /sys/class/gpio/gpio21/value
			sleep 6
			if [ -e "/sys/class/bluetooth/hci0" ]; then 
				echo "found Bluetooth dongle"
			fi
			if [ -e "/sys/class/net/wlan0" ]; then 
				echo "found WiFi adapter"
			fi
			if [ -e "/dev/sda1" ]; then
				echo "Found USB key"
			fi
			if [ ! -e "/dev/sda" ] && [ ! -e "/sys/class/net/wlan0" ] && [ ! -e "/sys/class/bluetooth/hci0" ]; then
				echo 'D11: shutting down PUSB1'
				echo 0 > /sys/class/gpio/gpio21/value
			fi
#
# D11, neither USB key nor Bluetooth dongle connected so power off the (single)
# USB device.
#
		else
			echo 'D12: Power-up PUSB1 & 2'
			echo 1 > /sys/class/gpio/gpio21/value
			echo 1 > /sys/class/gpio/gpio22/value
			sleep 6
#
# Leave heaps of time for any USB keys to be powered up and mounted
#
		fi
		if test -f /media/usbdisk/startup.sh; then
			chmod 777 /media/usbdisk/startup.sh
			cd /media/usbdisk
			. startup.sh
			cd /root
		fi
	else
		echo 'Starting up for logfile transfer only: no USB, no Bluetooth, no Ethernet'
		ifconfig eth0 down
	fi
#	mkdir -p /media/mmc/SYNC/UP
#	mkdir -p /media/mmc/SYNC/DOWN
	./BIN/R-Loader -qws -display "multi: LinuxFb: VNC::size=640x272" &
	;;
 esac
exit 0
