blob: f2b7125b8a156645e83bdfcc6e24c4f253b4fccb (
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
#!/bin/sh
if [ "$SUBSYSTEM" == "firmware" ];then
logger "Firmware load for $FIRMWARE requested"
if [ "$ACTION" == "add" ];then
if [ -e "/lib/firmware/$FIRMWARE" ];then
logger "Firmware loading ..."
echo 1 > /sys$DEVPATH/loading
cat "/lib/firmware/$FIRMWARE" > /sys$DEVPATH/data
echo 0 > /sys$DEVPATH/loading
logger "finished."
else
logger "Firmware file $FIRMWARE not found"
echo -1 > /sys$DEVPATH/loading
fi
fi
fi
if [ "$SUBSYSTEM" == "pcmcia_socket" ];then
logger "Setting up PCMCIA socket resource database"
if [ "$ACTION" == "add" ];then
/usr/sbin/pcmcia-socket-startup
fi
fi
if [ "$SUBSYSTEM" == "usb" ];then
if [ "$ACTION" == "add" ];then
if [ "$DEVTYPE" == "usb_device" ];then
if [ "$PRODUCT" == "12d1/1003/0" ];then
if [ ! -f /tmp/.huawei ];then
logger "USB device added with: $PRODUCT"
usbmods=$(lsmod|grep ^usbserial|awk '{ print $4 }'|sed -e 's/,/ /g')
for i in $usbmods;do rmmod $i;done
rmmod usbserial
lsmod >> /tmp/debug
test -x /sbin/huawei && /sbin/huawei >> /tmp/debug
insmod /lib/modules/$(uname -r)/usbserial.ko product=0x1003 vendor=0x12d1
for i in $usbmods;do insmod /lib/modules/$(uname -r)/$i.ko; done
touch /tmp/.huawei
fi
fi
fi
fi
fi
|