#!/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() { if [ -r /lib/ar71xx.sh ]; then . /lib/ar71xx.sh local board=$(ar71xx_board_name) 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 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 }