add proper uci/hotplug based button handling on atheros and work around boards, where...
[openwrt-10.03/.git] / target / linux / atheros / base-files / etc / hotplug.d / button / 00-button
diff --git a/target/linux/atheros/base-files/etc/hotplug.d/button/00-button b/target/linux/atheros/base-files/etc/hotplug.d/button/00-button
new file mode 100644 (file)
index 0000000..857a59b
--- /dev/null
@@ -0,0 +1,24 @@
+. /etc/functions.sh
+do_button () {
+       local button
+       local action
+       local handler
+       local min
+       local max
+
+       config_get button $1 button
+       config_get action $1 action
+       config_get handler $1 handler
+       config_get min $1 min
+       config_get max $1 max
+       
+       [ "$ACTION" = "$action" -a "$BUTTON" = "$button" -a -n "$handler" ] && {
+               [ -z "$min" -o -z "$max" ] && eval $handler 
+               [ -n "$min" -a -n "$max" ] && {
+                       [ $min -le $SEEN -a $max -ge $SEEN ] && eval $handler 
+               }
+       }
+}
+
+config_load system
+config_foreach do_button button