NAME
powerd
- power management daemon for sysmon
SYNOPSIS
powerd
[-d]
DESCRIPTION
powerd
acts upon power management events posted by the kernel's power management
facility.
When events are posted,
powerd
translates the event into a script name and a list of arguments.
powerd
then runs the script in order to implement the power management policy
defined by the system administrator.
powerd
supports the following option:
- -d
-
Enable debugging mode.
Verbose messages will be sent to stderr and
powerd
will stay in the foreground of the controlling terminal.
CONFIGURATION SCRIPTS
All of
powerd
configuration is encapsulated into scripts that are run when power
management events occur.
powerd
will look for these scripts in two locations.
The first location is
/etc/powerd/scripts/<power_type>
,
where
<
power_type
>
is defined by the power management mechanism supported by the system,
e.g.,
``apm''
or
``acpi''.
If the script is not found in the first location,
powerd
looks in
/etc/powerd/scripts
.
Configuration scripts are run synchronously, i.e.,
powerd
will start the script and wait for its completion before it handles
the next event.
Configuration scripts are called with different arguments, depending on
the script class.
These classes are described in the following sections.
POWER SWITCH SCRIPTS
Power switch scripts are called when a state change event occurs on
a power switch device.
Power switch scripts are called with two arguments: the device with which
the device is associated, and the event type.
The following power switch script names are defined:
- power_button
-
This script is called when an event occurs on a power button device.
- reset_button
-
This script is called when an event occurs on a reset button device.
- sleep_button
-
This script is called when an event occurs on a sleep button device.
- lid_switch
-
This script is called when an event occurs on a lid switch device.
- acadapter
-
This script is called when an online or offline event occurs on an
AC adapter device.
- hotkey_button
-
This script is called when an event occurs on a hotkey button device.
The following events are defined for power switch devices:
- pressed
-
The button was pressed, the lid closed, or the AC adapter connected.
- released
-
The button was released, the lid opened, or the AC adapter disconnected.
Note that power and sleep button devices usually do not
post this type of event.
The following is an example of how a power button script might be invoked
when a power button is pressed by the operator:
-
/etc/powerd/scripts/power_button acpi0 pressed
ENVSYS SCRIPTS
envsys(4)
scripts are called when a condition was triggered in a sensor.
These scripts are called with three arguments: the
device associated, the event type and sensor's name.
The
sensor_drive
and the
sensor_battery
scripts uses a fourth argument: state description.
The following envsys script names are defined:
- sensor_battery
-
This script is called when an event occurs on a battery sensor
(Wh/Ah/Battery state).
- sensor_drive
-
This script is called when an event occurs on a drive sensor.
- sensor_fan
-
This script is called when an event occurs on a fan sensor.
- sensor_indicator
-
This script is called when an event ocurrs on a indicator/integer sensor.
- sensor_power
-
This script is called when an event occurs on a power sensor (W/Ampere).
- sensor_resistance
-
This script is called when an event occurs on a resistance sensor (Ohm).
- sensor_temperature
-
This script is called when an event occurs on a temperature sensor.
- sensor_voltage
-
This script is called when an event occurs on a voltage sensor.
The following event is defined for all scripts but is only sent if
a critical/warning or any other event was previously sent:
- normal
-
A normal state/capacity/condition was triggered.
The following events are defined for fan, indicator, power,
resistance, temperature and voltage sensors:
- critical
-
A critical condition was triggered.
- critical-under
-
A critical under condition was triggered.
- critical-over
-
A critical over condition was triggered.
- warning-under
-
A warning under condition was triggered.
- warning-over
-
A warning over condition was triggered.
The following events are defined only for battery sensors:
- user-capacity
-
Capacity dropped below the limit set by the user.
- low-power
-
System is running in low power, that means that there is not
any AC Adapter connected and all batteries are in critical or
low capacity. When this event is received there's no much time
so you should only suspend or shutdown the system. The script
shutdowns the system gracefully by default.
The following events are defined for drive and battery sensors:
- state-changed
-
The state on the sensor has been changed and it's not in normal state.
The following is an example of how a temperature sensor script might be
invoked when a critical over condition is triggered:
-
/etc/powerd/scripts/sensor_temperature lm0 critical-over "CPU Temp"
SEE ALSO
acpi(4),
acpiacad(4),
acpibut(4),
acpilid(4),
envsys(4),
i386/apm(4)
HISTORY
powerd
first appeared in
NetBSD2.0.
Support to handle
envsys(4)
events appeared in
NetBSD5.0.
AUTHORS
powerd
was written by
Jason R. Thorpe
<thorpej@wasabisystems.com>
and contributed by Wasabi Systems, Inc.
Juan Romero Pardines
added support to handle
envsys(4)
events.
BUGS
Due to its synchronous nature
powerd
cannot be trusted to handle events within a certain time.