1no-involuntary-power-cycleKse(r9nPe)l Properties for Dnroi-vienrvsoluntary-power-cycles(9P)
2
3
4

NAME

6       no-involuntary-power-cycles  -  device  property to prevent involuntary
7       power cycles
8

DESCRIPTION

10       A device that might be damaged by power cycles should export the  bool‐
11       ean  (zero  length)  property no-involuntary-power-cycles to notify the
12       system that all power cycles for the device must be under  the  control
13       of the device driver.
14
15
16       The  presence of this property prevents power from being removed from a
17       device or any ancestor  of  the  device  while  the  device  driver  is
18       detached,  unless the device was voluntarily powered off as a result of
19       the device driver calling pm_lower_power(9F).
20
21
22       The presence of no-involuntary-power-cycles also forces  attachment  of
23       the  device driver during a CPR suspend operation and prevents the sus‐
24       pend from taking place, unless the device  driver  returns  DDI_SUCCESS
25       when its detach(9E) entry point is called with DDI_SUSPEND.
26
27
28       The presence of no-involuntary-power-cycles does not prevent the system
29       from being powered off due to  a  halt(1M)  or  uadmin(1M)  invocation,
30       except for CPR suspend.
31
32
33       This property can be exported by a device that is not power manageable,
34       in which case power is not removed from the device or from any  of  its
35       ancestors,  even when the driver for the device and the drivers for its
36       ancestors are detached.
37

EXAMPLES

39       Example 1 Use of Property in Driver's Configuration File
40
41
42       The following is an example of a no-involuntary-power-cycles entry in a
43       driver's .conf file:
44
45
46         no-involuntary-power-cycles=1;
47              ...
48
49
50       Example 2 Use of Property in attach() Function
51
52
53       The following is an example of how the preceding .conf file entry would
54       be implemented in the attach(9E) function of a driver:
55
56
57         xxattach(dev_info_t *dip, ddi_attach_cmd_t cmd)
58           {
59            ...
60                if (ddi_prop_create(DDI_DEV_T_NONE, dip, DDI_PROP_CANSLEEP,
61                    "no-involuntary-power-cycles", NULL, 0) != DDI_PROP_SUCCESS)
62                     goto failed;
63            ...
64            }
65
66

ATTRIBUTES

68       See attributes(5) for descriptions of the following attributes:
69
70
71
72
73       ┌─────────────────────────────┬─────────────────────────────┐
74       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
75       ├─────────────────────────────┼─────────────────────────────┤
76       │Interface stability          │Committed                    │
77       └─────────────────────────────┴─────────────────────────────┘
78

SEE ALSO

80       attributes(5), pm(7D), attach(9E), detach(9E), ddi_prop_create(9F)
81
82
83       Writing Device Drivers
84
85
86
87SunOS 5.11                        22 Mar 2001  no-involuntary-power-cycles(9P)
Impressum