Kernel Properties for Drivers no-involuntary-power-cycles(9P)
NAME
no-involuntary-power-cycles - device property to prevent
involuntary power cycles
DESCRIPTION
A device that might be damaged by power cycles should export
the boolean (zero length) property no-involuntary-power-
cycles to notify the system that all power cycles for the
device must be under the control of the device driver.
The presence of this property prevents power from being
removed from a device or any ancestor of the device while
the device driver is detached, unless the device was volun-
tarily powered off as a result of the device driver calling
pmlowerpower(9F).
The presence of no-involuntary-power-cycles also forces
attachment of the device driver during a CPR suspend opera-
tion and prevents the suspend from taking place, unless the
device driver returns DISUCES when its detach(9E) entry
point is called with DISUSPEND.
The presence of no-involuntary-power-cycles does not prevent
the system from being powered off due to a halt(1M) or
uadmin(1M) invocation, except for CPR suspend.
This property can be exported by a device that is not power
manageable, in which case power is not removed from the dev-
ice or from any of its ancestors, even when the driver for
the device and the drivers for its ancestors are detached.
EXAMPLES
Example 1 Use of Property in Driver's Configuration File
The following is an example of a no-involuntary-power-cycles
entry in a driver's .conf file:
no-involuntary-power-cycles=1;
...
Example 2 Use of Property in attach() Function
The following is an example of how the preceding .conf file
entry would be implemented in the attach(9E) function of a
SunOS 5.11 Last change: 22 Mar 2001 1
Kernel Properties for Drivers no-involuntary-power-cycles(9P)
driver:
xxattach(devinfot *dip, ddiattachcmdt cmd)
{
...
if (ddipropcreate(DIDEVTNONE, dip, DIPROPCANSLEP,
"no-involuntary-power-cycles", NUL, 0) != DIPROPSUCES)
goto failed;
...
}
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Interface stability Committed
SEE ALSO
attributes(5), pm(7D), attach(9E), detach(9E),
ddipropcreate(9F)
Writing Device Drivers
SunOS 5.11 Last change: 22 Mar 2001 2
|