s5_info()
{
	WIFDEV=libertas_sdio
	PREDEV=snd-hda-codec-realtek
	SNDDEV=snd-hda-intel
	CAMDEV=uvcvideo
	BOARD_USES_TSLIB=true
}

s5_load_firmware()
{
	FW_PATH="/sys/class/firmware/${FW_DEVNAME}"

	COUNT=0
	while [ ! -d ${FW_PATH} ]; do
		usleep 100000
		COUNT=`expr $COUNT + 1`
		if [ $COUNT -gt 10 ]; then
			break;
		fi
	done
	echo 1 > ${FW_PATH}/loading
	cat ${FW_FILE_PATH} > ${FW_PATH}/data
	echo 0 > ${FW_PATH}/loading

	COUNT=0
	while [ -d ${FW_PATH} ]; do
		usleep 100000
		COUNT=`expr $COUNT + 1`
		if [ $COUNT -gt 10 ]; then
			break;
		fi
	done
}

detect_hardware()
{
	#enable TS
	/system/bin/iowrite 0x1de 0x5a	&> /dev/null
	/system/bin/iowrite 0x1df 0xa5	&> /dev/null
	/system/bin/ioread 0x1de &> /dev/null

	#enable wifi
	/system/bin/s5_onoff 0x7 0x1 &> /dev/null
	modprobe libertas_sdio&
	FW_DEVNAME="mmc1:0001:1"
	FW_FILE_PATH="/system/lib/firmware/sd8686_helper.bin"
	s5_load_firmware
	usleep 10000
	FW_DEVNAME="mmc1:0001:1"
	FW_FILE_PATH="/system/lib/firmware/sd8686.bin"
	s5_load_firmware

	#rename wpa_supplicant driver
	sed -i "s/Dwext/Dawext/g" init.rc

	#for debugging of GFX driver
	if [ -n "$VDEBUG" ]; then
		mknod /dev/sdc1 b 8 33
		mkdir /t
		mount /dev/sdc1 /t
		insmod /t/drm.ko
		modprobe i2c-algo-bit
		insmod /t/psb.ko&
		FW_DEVNAME="0000:00:02.0"
		FW_FILE_PATH="/system/lib/firmware/msvdx_fw.bin"
		s5_load_firmware
		mknod /dev/fb0 c 29 0
	fi

	#for debuggin of libraries
	if [ -n "$LDEBUG" ]; then
		mknod /dev/sdc1 b 8 33
		mkdir /t
		mount /dev/sdc1 /system/lib
	fi

	#load psb driver
	if [ ! -c /dev/fb0 ]; then
		modprobe i2c-algo-bit
		insmod /system/lib/modules/drm.ko
		insmod /system/lib/modules/psb.ko&
		FW_DEVNAME="0000:00:02.0"
		FW_FILE_PATH="/system/lib/firmware/msvdx_fw.bin"
		s5_load_firmware
	fi

	s5_info
}
