Initial commit
This commit is contained in:
37
package/kernel/om-watchdog/Makefile
Normal file
37
package/kernel/om-watchdog/Makefile
Normal file
@@ -0,0 +1,37 @@
|
||||
#
|
||||
# Copyright (C) 2011 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=om-watchdog
|
||||
PKG_RELEASE:=2
|
||||
PKG_VERSION:=1
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/om-watchdog
|
||||
SECTION:=base
|
||||
CATEGORY:=Base system
|
||||
TITLE:=om watchdog
|
||||
URL:=http://openwrt.org/
|
||||
endef
|
||||
|
||||
define Package/om-watchdog/description
|
||||
This package contains the hw watchdog script for the OM1P and OM2P device.
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
endef
|
||||
|
||||
define Package/om-watchdog/install
|
||||
$(INSTALL_DIR) $(1)/etc/init.d/
|
||||
$(INSTALL_DIR) $(1)/sbin/
|
||||
$(INSTALL_BIN) ./files/om-watchdog.init $(1)/etc/init.d/om-watchdog
|
||||
$(INSTALL_BIN) ./files/om-watchdog $(1)/sbin/om-watchdog
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,om-watchdog))
|
||||
15
package/kernel/om-watchdog/files/om-watchdog
Normal file
15
package/kernel/om-watchdog/files/om-watchdog
Normal file
@@ -0,0 +1,15 @@
|
||||
#!/bin/sh
|
||||
|
||||
GPIO=$1
|
||||
|
||||
trap "" INT HUP
|
||||
|
||||
echo $GPIO > /sys/class/gpio/export
|
||||
echo out > /sys/class/gpio/gpio${GPIO}/direction
|
||||
|
||||
while true; do
|
||||
echo 1 > /sys/class/gpio/gpio${GPIO}/value
|
||||
sleep 1
|
||||
echo 0 > /sys/class/gpio/gpio${GPIO}/value
|
||||
sleep 180
|
||||
done
|
||||
73
package/kernel/om-watchdog/files/om-watchdog.init
Normal file
73
package/kernel/om-watchdog/files/om-watchdog.init
Normal file
@@ -0,0 +1,73 @@
|
||||
#!/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
|
||||
}
|
||||
Reference in New Issue
Block a user