PM(9P) Kernel Properties for Drivers PM(9P)


NAME


pm - Power Management properties

DESCRIPTION


The pm-hardware-state property can be used to influence the behavior of
the Power Management framework. Its syntax and interpretation is
described below.


Note that this property is only interpreted by the system immediately
after the device has successfully attached. Changes in the property made
by the driver after the driver has attached will not be recognized.


pm-hardware-state is a string-valued property. The existence of the pm-
hardware-state property indicates that a device needs special handling by
the Power Management framework with regard to its hardware state.


If the value of this property is needs-suspend-resume, the device has a
hardware state that cannot be deduced by the framework. The framework
definition of a device with hardware state is one with a reg property.
Some drivers, such as SCSI disk and tape drivers, have no reg property
but manage devices with "remote" hardware. Such a device must have a pm-
hardware-state property with a value of needs-suspend-resume for the
system to identify it as needing a call to its detach(9E) entry point
with command DDI_SUSPEND when system is suspended, and a call to
attach(9E) with command DDI_RESUME when system is resumed. For devices
using original Power Management interfaces (which are now obsolete)
detach(9E) is also called with DDI_PM_SUSPEND before power is removed
from the device, and attach(9E) is called with DDI_PM_RESUME after power
is restored.


A value of no-suspend-resume indicates that, in spite of the existence of
a reg property, a device has no hardware state that needs saving and
restoring. A device exporting this property will not have its detach()
entry point called with command DDI_SUSPEND when system is suspended, nor
will its attach() entry point be called with command DDI_RESUME when
system is resumed. For devices using the original (and now obsolete)
Power Management interfaces, detach(9E) will not be called with
DDI_PM_SUSPEND command before power is removed from the device, nor
attach(9E) will be called with DDI_PM_RESUME command after power is
restored to the device.


A value of parental-suspend-resume indicates that the device does not
implement the detach(9E) DDI_SUSPEND semantics, nor the attach()
DDI_RESUME semantics, but that a call should be made up the device tree
by the framework to effect the saving and/or restoring of hardware state
for this device. For devices using original Power Management interfaces
(which are now obsolete), it also indicates that the device does not
implement the detach(9E) DDI_PM_SUSPEND semantics, nor the attach(9E)
DDI_PM_RESUME semantics, but that a call should be made up the device
tree by the framework to effect the saving and/or restoring the hardware
state for this device.

ATTRIBUTES


See attributes(5) for descriptions of the following attributes:


+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface stability | Committed |
+--------------------+-----------------+

SEE ALSO


power.conf(4), pm(7D), attach(9E), detach(9E), pm_busy_component(9F),
pm_idle_component(9F), pm-components(9P)


Writing Device Drivers


January 20, 2004 PM(9P)