12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- #!/bin/sh /etc/rc.common
- #
- # Copyright (C) 2011 OpenWrt.org
- #
- START=11
- STOP=11
- USE_PROCD=1
- NAME=om-watchdog
- PROG=/sbin/om-watchdog
- get_gpio() {
- local board=$(board_name)
- if [ -r /lib/ar71xx.sh ]; then
- case "$board" in
- "a40"|\
- "a60"|\
- "mr1750"|\
- "mr1750v2"|\
- "mr900"|\
- "mr900v2")
- return 16
- ;;
- "mr600v2")
- return 15
- ;;
- "om2p"|\
- "om2p-hs"|\
- "om2p-hsv2"|\
- "om2p-hsv3"|\
- "om2p-hsv4"|\
- "om2pv4"|\
- "om5p-acv2")
- return 12
- ;;
- "om2p-lc"|\
- "om2pv2")
- return 26
- ;;
- "om5p"|\
- "om5p-an")
- return 11
- ;;
- "om5p-ac")
- return 17
- ;;
- esac
- elif [ -r /lib/ramips.sh ]; then
- case "$board" in
- "rut5xx")
- return 11
- ;;
- esac
- else
- #we assume it is om1p in this case
- return 3
- fi
- return 255
- }
- start_service() {
- get_gpio
- gpio="$?"
- [ "$gpio" != "255" ] || return
- procd_open_instance
- procd_set_param command "${PROG}" "${gpio}"
- procd_set_param respawn
- procd_close_instance
- }
|