summaryrefslogtreecommitdiff
path: root/cleopatre/devkit/plcdrv/hotplug-plcdrv
blob: 4fd46366e83a134c32fb5b07ad9b8edd6f34a533 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/bin/sh

case "$ACTION:$SUBSYSTEM:$DEVPATH" in
	add:module:/module/plcdrv)
		mknod /dev/plcdrv c 254 0
		chmod 666 /dev/plcdrv
		mknod /dev/trace c 254 1
		;;
	add:firmware:/class/firmware/plc0)
		echo 1 > /sys/$DEVPATH/loading
		plcfw=/lib/modules/$FIRMWARE.rom
		if [ -e /etc/plcdrv.conf ]; then
			source /etc/plcdrv.conf
		fi
		if [ -e /usr/local/$plcfw ]; then
			plcfw=/usr/local/$plcfw
		fi
		if cat $plcfw > /sys/$DEVPATH/data; then
			echo 0 > /sys/$DEVPATH/loading
		else
			echo -1 > /sys/$DEVPATH/loading
		fi
		;;
	remove:module:/module/plcdrv)
		rm /dev/plcdrv /dev/trace
		;;
esac