om-watchdog: Stop om-watchdog via procd before rebooting
[openwrt/staging/chunkeey.git] / package / kernel / om-watchdog / files / om-watchdog.init
1 #!/bin/sh /etc/rc.common
2 #
3 # Copyright (C) 2011 OpenWrt.org
4 #
5
6 START=11
7 STOP=11
8
9 USE_PROCD=1
10 NAME=om-watchdog
11 PROG=/sbin/om-watchdog
12
13 get_gpio() {
14 if [ -r /lib/ar71xx.sh ]; then
15 . /lib/ar71xx.sh
16 local board=$(ar71xx_board_name)
17
18 case "$board" in
19 "om2p"|"om2p-hs"|"om2p-hsv2")
20 return 12
21 ;;
22 "om2pv2"|"om2p-lc")
23 return 26
24 ;;
25 "om5p"|"om5p-an")
26 return 11
27 ;;
28 "mr600v2")
29 return 15
30 ;;
31 "mr900"|"mr900v2"|"mr1750")
32 return 16
33 ;;
34 esac
35 else
36 #we assume it is om1p in this case
37 return 3
38 fi
39
40 return 255
41 }
42
43 start_service() {
44 get_gpio
45 gpio="$?"
46 [ "$gpio" != "255" ] || return
47
48 procd_open_instance
49 procd_set_param command "${PROG}" "${gpio}"
50 procd_set_param respawn
51 procd_close_instance
52 }