summaryrefslogtreecommitdiffstats
path: root/abs/core/acpid/handler.sh
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/acpid/handler.sh')
-rw-r--r--abs/core/acpid/handler.sh86
1 files changed, 86 insertions, 0 deletions
diff --git a/abs/core/acpid/handler.sh b/abs/core/acpid/handler.sh
new file mode 100644
index 0000000..b5a548f
--- /dev/null
+++ b/abs/core/acpid/handler.sh
@@ -0,0 +1,86 @@
+#!/bin/sh
+# Default acpi script that takes an entry for all actions
+
+minspeed=`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq`
+maxspeed=`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq`
+setspeed="/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed"
+
+set $*
+
+case "$1" in
+ button/power)
+ case "$2" in
+ PBTN|PWRF)
+ logger "PowerButton pressed: $2"
+ poweroff
+ ;;
+ *)
+ logger "ACPI action undefined: $2"
+ ;;
+ esac
+ ;;
+ button/sleep)
+ case "$2" in
+ SLPB|SBTN)
+ echo -n mem >/sys/power/state
+ ;;
+ *)
+ logger "ACPI action undefined: $2"
+ ;;
+ esac
+ ;;
+ ac_adapter)
+ case "$2" in
+ AC|ACAD|ADP0)
+ case "$4" in
+ 00000000)
+ echo -n $minspeed >$setspeed
+ #/etc/laptop-mode/laptop-mode start
+ ;;
+ 00000001)
+ echo -n $maxspeed >$setspeed
+ #/etc/laptop-mode/laptop-mode stop
+ ;;
+ esac
+ ;;
+ *)
+ logger "ACPI action undefined: $2"
+ ;;
+ esac
+ ;;
+ battery)
+ case "$2" in
+ BAT0)
+ case "$4" in
+ 00000000)
+ logger 'Battery online'
+ ;;
+ 00000001)
+ logger 'Battery offline'
+ ;;
+ esac
+ ;;
+ CPU0)
+ ;;
+ *) logger "ACPI action undefined: $2" ;;
+ esac
+ ;;
+ button/lid)
+ case "$3" in
+ close)
+ logger 'LID closed'
+ ;;
+ open)
+ logger 'LID opened'
+ ;;
+ *)
+ logger "ACPI action undefined: $3"
+ ;;
+ esac
+ ;;
+ *)
+ logger "ACPI group/action undefined: $1 / $2"
+ ;;
+esac
+
+# vim:set ts=4 sw=4 ft=sh et: