#!/bin/sh
# insmod modules from current directory without having to install them first

sync

case "$1" in
    load)
	echo "Inserting DVB modules into kernel"
	modprobe i2c-core
	modprobe crc32
	modprobe firmware_class
	# make sure input stuff is there for IR remote controls
	modprobe evdev
	# vide4linux for av7110 based "full featured" cards
	modprobe videodev
	modprobe v4l1-compat
	modprobe v4l2-common
	if [ -r ./video-buf.ko ]; then
		insmod ./video-buf.ko
	else
		modprobe video-buf
	fi
	# DVB core
	insmod ./dvb-core.ko
	# frontend drivers
	insmod ./ves1x93.ko
	insmod ./sp8870.ko
	insmod ./cx22700.ko
	insmod ./stv0299.ko
	insmod ./ves1820.ko
	insmod ./tda1004x.ko
	insmod ./dib3000mb.ko
	insmod ./l64781.ko
	insmod ./tda8083.ko
	insmod ./cx24110.ko
	insmod ./cx22702.ko
	insmod ./mt312.ko	
	insmod ./stv0297.ko	
	# saa7146 based siemens/technotrend/hauppauge cards
	insmod ./saa7146.ko
	insmod ./saa7146_vv.ko
	insmod ./ttpci-eeprom.ko
	insmod ./dvb-ttpci.ko
	insmod ./budget-core.ko
	insmod ./budget.ko
	insmod ./budget-ci.ko
	insmod ./budget-av.ko
	# technotrend/hauppauge USB things
	insmod ./dvb-ttusb-budget.ko
	insmod ./ttusb_dec.ko
	insmod ./dvb-dibusb.ko
	# technisat skystar2
	insmod ./skystar2.ko
	# terratec CinergyT2
	insmod ./cinergyT2.ko
	echo
	;;
    debug)
	echo "Inserting DVB modules (debug) into kernel"
	modprobe i2c-core
	modprobe crc32
	modprobe evdev
	modprobe videodev
	modprobe v4l1-compat
	modprobe v4l2-common
	if [ -r ./video-buf.ko ]; then
		insmod ./video-buf.ko
	else
		modprobe video-buf
	fi
	insmod ./dvb-core.ko
	insmod ./ves1x93.ko
	insmod ./sp8870.ko
	insmod ./cx22700.ko
	insmod ./stv0299.ko
	insmod ./ves1820.ko
	insmod ./tda1004x.ko
	insmod ./dib3000mb.ko debug=1
	insmod ./l64781.ko
	insmod ./stv0297.ko
	insmod ./tda8083.ko
	insmod ./cx24110.ko
	insmod ./cx22702.ko
	insmod ./saa7146.ko
	insmod ./saa7146_vv.ko saa7146_debug=247
	insmod ./ttpci-eeprom.ko
	insmod ./dvb-ttpci.ko av7110_debug=247
	insmod ./budget-core.ko
	insmod ./budget.ko
	insmod ./budget-ci.ko
	insmod ./budget-av.ko
	insmod ./dvb-ttusb-budget.ko
	insmod ./mt312.ko
	insmod ./skystar2.ko debug=1
	insmod ./ttusb_dec.ko
	insmod ./dvb-dibusb.ko debug=1
	insmod ./cinergyT2.ko
	echo
	;;
    unload)
	echo "Deleting DVB modules from kernel"
	rmmod skystar2 mt312 dvb-ttpci budget budget-av budget-ci budget-core \
		ttusb_dec dvb-ttusb-budget ttpci-eeprom dvb-dibusb dib3000mb \
		ves1x93 sp8870 cx22700 stv0299 ves1820 cinergyT2 \
		tda1004x l64781 tda8083 cx24110 cx22702 stv0297 \
		saa7146_vv saa7146 \
		video-buf v4l2-common v4l1-compat dvb-core videodev 
	echo
	;;
    reload)
	$0 unload && $0 load
	;;
    *)
	echo "Usage$0 {load|unload|debug|reload}"
	exit 1
esac

sync

