diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2012-01-04 17:30:39 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2012-01-04 17:30:39 +0000 |
commit | ce639ba1855ddda4ae4cf1fc3ef585420fd996ca (patch) | |
tree | 8e4c030841f0dd082846f9ecd55f2f4d1aa16df9 | |
parent | 5b14d8bc0bca5e0f9e45fb6e89752a550cba487e (diff) | |
download | upstream-ce639ba1855ddda4ae4cf1fc3ef585420fd996ca.tar.gz upstream-ce639ba1855ddda4ae4cf1fc3ef585420fd996ca.tar.bz2 upstream-ce639ba1855ddda4ae4cf1fc3ef585420fd996ca.zip |
package: add om-watchdog package
om2p-watchdog package is OM2P specific. However a similar watchdog
mechanism exists on OM1P as well. This new package wants to substitute
om2p-watchdog with a new one which is suitable either for OM1P and OM2P.
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
SVN-Revision: 29647
-rw-r--r-- | package/om-watchdog/Makefile | 45 | ||||
-rw-r--r-- | package/om-watchdog/files/om-watchdog | 15 | ||||
-rw-r--r-- | package/om-watchdog/files/om-watchdog.init | 22 |
3 files changed, 82 insertions, 0 deletions
diff --git a/package/om-watchdog/Makefile b/package/om-watchdog/Makefile new file mode 100644 index 0000000000..7d517a11eb --- /dev/null +++ b/package/om-watchdog/Makefile @@ -0,0 +1,45 @@ +# +# 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:=1 +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/Prepare +endef + +define Build/Compile +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)) + diff --git a/package/om-watchdog/files/om-watchdog b/package/om-watchdog/files/om-watchdog new file mode 100644 index 0000000000..d730c68447 --- /dev/null +++ b/package/om-watchdog/files/om-watchdog @@ -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 diff --git a/package/om-watchdog/files/om-watchdog.init b/package/om-watchdog/files/om-watchdog.init new file mode 100644 index 0000000000..d598c86a38 --- /dev/null +++ b/package/om-watchdog/files/om-watchdog.init @@ -0,0 +1,22 @@ +#!/bin/sh /etc/rc.common +# +# Copyright (C) 2011 OpenWrt.org +# + +START=11 + +SERVICE_DAEMONIZE=1 + +boot() { + if [ -r /lib/ar71xx.sh ]; then + . /lib/ar71xx.sh + local board=$(ar71xx_board_name) + fi + + if [ "$board" = "om2p" ]; then + service_start /sbin/om-watchdog 12 + else + #we assume it is om1p in this case + service_start /sbin/om-watchdog 3 + fi +} |