blob: 497a76d8dd7608bfbb2342261b6b3bb6092e0229 (
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
43
44
45
46
|
#!/sbin/runscript
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# This init script turns on/off the F3507g card. Has to be started
# before gpsd and ppp services.
depend() {
after serial hotplug
before gpsd net.ppp0
}
checkradiosw() {
if [ `cat ${HOTKEY_STATE}` == "0" ]
then
ewarn "Wireless switch is disabled"
return 1
fi
}
start() {
checkradiosw || return 1
ebegin "Powering up F3507g"
echo 1 > ${RFKILL_STATE}
while [ ! -c ${CONTROL_DEV} ]; do sleep 1; done
ebegin "Turning F3507g on"
if [ -n "${PIN}" ]
then
/usr/sbin/chat -v "" "AT+CPIN?" "SIM PIN" "AT" "OK" "AT+CPIN=\"${PIN}\"" "OK" > ${CONTROL_DEV} < ${CONTROL_DEV}
fi
sleep 3
/usr/sbin/chat -v "" "AT+CPIN?" "READY" "AT+CFUN=1" "+PACSP0" "AT" "OK" > ${CONTROL_DEV} < ${CONTROL_DEV}
eend $? "Failed to turn F3507g on"
}
stop() {
ebegin "Turning F3507g off"
/usr/sbin/chat -v "" "AT+CFUN=4" "OK" > ${CONTROL_DEV} < ${CONTROL_DEV}
eend $? "Failed to turn F3507g off"
ebegin "Powering F3507g down"
echo 0 > ${RFKILL_STATE}
while [ -c ${CONTROL_DEV} ]; do sleep 1; done
}
|