aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/atheros/base-files/etc/hotplug.d/button/00-button
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/atheros/base-files/etc/hotplug.d/button/00-button')
-rw-r--r--target/linux/atheros/base-files/etc/hotplug.d/button/00-button24
1 files changed, 24 insertions, 0 deletions
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
index 0000000000..857a59b4a8
--- /dev/null
+++ b/target/linux/atheros/base-files/etc/hotplug.d/button/00-button
@@ -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