1 karl 1.1 // ===================================================================
2 // Title: Core Power Management
3 // $State: Preliminary $
4 // $Date: 2004/06/25 16:11:06 $
5 // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/Core_PowerMgmt.mof,v $
6 // $Revision: 1.9 $
7 // ===================================================================
8 //#pragma inLine ("Includes/copyright.inc")
9 // Copyright 1998-2004 Distributed Management Task Force, Inc. (DMTF).
10 // All rights reserved.
11 // DMTF is a not-for-profit association of industry members dedicated
12 // to promoting enterprise and systems management and interoperability.
13 // DMTF specifications and documents may be reproduced for uses
14 // consistent with this purpose by members and non-members,
15 // provided that correct attribution is given.
16 // As DMTF specifications may be revised from time to time,
17 // the particular version and release date should always be noted.
18 //
19 // Implementation of certain elements of this standard or proposed
20 // standard may be subject to third party patent rights, including
21 // provisional patent rights (herein "patent rights"). DMTF makes
22 karl 1.1 // no representations to users of the standard as to the existence
23 // of such rights, and is not responsible to recognize, disclose, or
24 // identify any or all such third party patent right, owners or
25 // claimants, nor for any incomplete or inaccurate identification or
26 // disclosure of such rights, owners or claimants. DMTF shall have no
27 // liability to any party, in any manner or circumstance, under any
28 // legal theory whatsoever, for failure to recognize, disclose, or
29 // identify any such third party patent rights, or for such party's
30 // reliance on the standard or incorporation thereof in its product,
31 // protocols or testing procedures. DMTF shall have no liability to
32 // any party implementing such standard, whether such implementation
33 // is foreseeable or not, nor to any patent owner or claimant, and shall
34 // have no liability or responsibility for costs or losses incurred if
35 // a standard is withdrawn or modified after publication, and shall be
36 // indemnified and held harmless by any party implementing the
37 // standard from any and all claims of infringement by a patent owner
38 // for such implementations.
39 //
40 // For information about patents held by third-parties which have
41 // notified the DMTF that, in their opinion, such patent may relate to
42 // or impact implementations of DMTF standards, visit
43 karl 1.1 // http://www.dmtf.org/about/policies/disclosures.php.
44 //#pragma inLine
45 // ===================================================================
46 // Description: The Core Model defines basic management concepts.
47 // This file defines the concepts for power
48 // management.
49 //
50 // The object classes below are listed in an order that
51 // avoids forward references. Required objects, defined
52 // by other working groups, are omitted.
53 // ==================================================================
54 // Change Log for v2.9 Preliminary
55 // CR1314 - Convert power state names to use more standard terminology
56 // CR1315 - Add PowerStatesSupported to PowerManagementCapabilities
57 //
58 // Change Log for v2.8 Final
59 // CR1210 - Removal of experimental qualifiers for core.
60 // CR1223 - SysDev Omnibus CR - Minor MOF corrections.
61 //
62 // Change Log for v2.8 Preliminary
63 // CR932 - Add power mode status to OperationalStatus.
64 karl 1.1 // Move the specific power mode states from availability
65 // to a property between the PowerMgmt service and its ME.
66 // Remove the overlapping properties from Logical Device.
67 // CR950 - Add ArrayType to CIM_ManagedSystemElement properties
68 // CR1002 - Move the power on statistics to their own statistic class
69 // CR1019 - CIM Versioning for 2.8 Preliminary
70 //
71 // Change Log for v2.7 Final
72 // CR968 - Remove the Experimental qualifier
73 //
74 // Change Log for v2.7
75 // CR720 - Introduce PowerManagementCapabilities &
76 // PowerManagementService
77 // ===================================================================
78
79 #pragma locale ("en_US")
80
81 // ===================================================================
82 // PowerManagementCapabilites
83 // ===================================================================
84 [Version ( "2.8.1000" ), Description (
85 karl 1.1 "A class derived from Capabilities that describes the power "
86 "management aspects of an element (typically a system or "
87 "device). The element's power management capabilities are "
88 "decoupled from a PowerManagementService, since a single "
89 "service could apply to multiple elements, each with specific "
90 "capabilities.")]
91 class CIM_PowerManagementCapabilities : CIM_Capabilities {
92
93 [Description (
94 "An enumeration indicating the specific power-related "
95 "capabilities of a managed element. Since this is an array, "
96 "multiple values may be specified. The current values in the "
97 "enumeration are: \n"
98 "0 = Unknown \n"
99 "1 = Other \n"
100 "2 = Power Saving Modes Entered Automatically, describing "
101 "that a managed element can change its power state based on "
102 "usage or other criteria \n"
103 "3 = Power State Settable, indicating that the SetPowerState "
104 "method is supported \n"
105 "4 = Power Cycling Supported, indicating that the "
106 karl 1.1 "SetPowerState method can be invoked with the PowerState "
107 "input variable set to 'Power Cycle' \n"
108 "5 = Timed Power On Supported, indicating that the "
109 "SetPowerState method can be invoked with the PowerState "
110 "input variable set to 'Power Cycle' and the Time parameter "
111 "set to a specific date and time, or interval, for power-on."),
112 ValueMap { "0", "1", "2", "3", "4", "5" },
113 Values { "Unknown", "Other",
114 "Power Saving Modes Entered Automatically",
115 "Power State Settable", "Power Cycling Supported",
116 "Timed Power On Supported" },
117 MappingStrings { "MIF.DMTF|System Power Controls|001.2" },
118 ModelCorrespondence { "CIM_PowerManagementCapabilities."
119 "OtherPowerCapabilitiesDescriptions",
120 "CIM_PowerManagementService.SetPowerState" }]
121 uint16 PowerCapabilities[];
122
123 [Description (
124 "An array of strings describing an element's additional "
125 "power management capabilities, used when the "
126 "PowerCapabilities array includes the value 1, \"Other\"."),
127 karl 1.1 ModelCorrespondence {
128 "CIM_PowerManagementCapabilities.PowerCapabilities" }]
129 string OtherPowerCapabilitiesDescriptions[];
130
131 [Experimental, Description (
132 "An enumeration indicating the power states supported by a "
133 "managed element. Since this is an array, multiple values "
134 "may be specified. The current values in the enumeration "
135 "are: \n"
136 "0 = On, corresponding to ACPI state G0 or S0 or D0. \n"
137 "1 = Sleep - Light, corresponding to ACPI state G1 or S1/S2 "
138 "or D1. \n"
139 "2 = Sleep - Deep, corresponding to ACPI state G1 or S3 or "
140 "D2. \n"
141 "3 = Off - Soft, corresponding to ACPI state G2 or S5 or D3. "
142 "\n4 = Power Cycle (Off - Soft), corresponding to ACPI state "
143 "G2 or S5 or D3 but where the managed element is set to "
144 "return to power state \"On\" at a pre-determined time. \n"
145 "5 = Hibernate (Off - Soft), corresponding to ACPI state S4 "
146 "where the managed element's state is preserved and will be "
147 "recovered upon powering up. \n"
148 karl 1.1 "6 = Off - Hard, corresponding to ACPI state G3 or S5 or D3. "
149 "\n.. = DMTF Reserved. \n"
150 "0x7FFF..0xFFFF = Vendor Specific."),
151 ValueMap { "0", "1", "2", "3", "4", "5", "6", "..",
152 "0x7FFF..0xFFFF" },
153 Values { "On", "Sleep - Light", "Sleep - Deep", "Off - Soft",
154 "Power Cycle (Off - Soft)", "Hibernate (Off - Soft)",
155 "Off - Hard", "DMTF Reserved", "Vendor Specific" },
156 MappingStrings { "IEEE P1621 | 3.2" },
157 ModelCorrespondence { "CIM_PowerManagementService.SetPowerState"
158 }]
159 uint16 PowerStatesSupported[];
160 };
161
162 // ===================================================================
163 // PowerManagementService
164 // ===================================================================
165 [Version ( "2.7.0" ), Description (
166 "A class derived from Service that describes power management "
167 "functionality, hosted on a System. The fact that this service "
168 "may be used to affect the power state of a particular element "
169 karl 1.1 "is defined by the CIM_ServiceAvailable ToElement association.")]
170 class CIM_PowerManagementService : CIM_Service {
171 [Description (
172 "SetPowerState defines the desired power state of the "
173 "managed element, and when the element should be put into "
174 "that state. The SetPowerState method has three input "
175 "parameters, no output parameters, and a result. \n"
176 "- PowerState indicates the desired power state. \n"
177 "- ManagedElement indicates the element whose state is set. "
178 "This element SHOULD be associated to the service using the "
179 "ServiceAvailableToElement relationship. \n"
180 "- Time indicates when the power state should be set, either "
181 "as a regular date-time value or as an interval value (where "
182 "the interval begins when the method invocation is "
183 "received). \n"
184 "Note that when the PowerState parameter is equal to 5, "
185 "\"Power Cycle (Off -Soft)\", the Time parameter indicates "
186 "when the managed element should powered on again. Power off "
187 "is immediate. \n"
188 "SetPowerState should return 0 if successful, 1 if the "
189 "specified State and Time request is not supported for the "
190 karl 1.1 "element, and some other value if any other error occurred. "
191 "In a subclass, the set of possible return codes could be "
192 "specified, using a ValueMap qualifier on the method. The "
193 "strings to which the ValueMap contents are 'translated' may "
194 "also be specified in the subclass as a Values array "
195 "qualifier.")]
196 uint32 SetPowerState(
197 [IN, Description (
198 "The power state for ManagedElement."),
199 ValueMap { "1", "2", "3", "4", "5", "6", "7", "8" },
200 Values { "On", "Sleep - Light", "Sleep -Deep",
201 "Vendor Specific", "Power Cycle (Off - Soft)",
202 "Off - Hard", "Hibernate (Off - Soft)", "Off - Soft" },
203 MappingStrings { "IEEE P1621 | 3.2" }]
204 uint16 PowerState,
205 [IN, Description (
206 "ManagedElement indicates the element whose state is set.")]
207 CIM_ManagedElement REF ManagedElement,
208 [IN, Description (
209 "Time indicates when the power state should be set, "
210 "either as a regular date-time value or as an interval "
211 karl 1.1 "value (where the interval begins when the method "
212 "invocation is received.")]
213 datetime Time);
214 };
215
216 // ==================================================================
217 // AssociatedPowerManagementService
218 // ==================================================================
219 [Association, Experimental, Version ( "2.8.1000" ), Description (
220 "The assoication between a managed system element, and it's "
221 "power management service.")]
222 class CIM_AssociatedPowerManagementService : CIM_ServiceAvailableToElement {
223
224 [Override ( "ServiceProvided" ), Max ( 1 ), Description (
225 "The Service that is available.")]
226 CIM_PowerManagementService REF ServiceProvided;
227
228 [Description (
229 "The current power state of the associated Managed System "
230 "Element."),
231 ValueMap { "1", "2", "3", "4", "5", "6", "7",
232 karl 1.1 "8","..","0x7FFF..0xFFFF" },
233 Values { "Other", "On", "Sleep - Light", "Sleep -Deep",
234 "Power Cycle (Off - Soft)", "Off - Hard",
235 "Hibernate (Off - Soft)", "Off - Soft", "DMTF Reserved",
236 "Vendor Specific" },
237 MappingStrings { "MIF.DMTF|System Power Controls|001.2" },
238 ModelCorrespondence {
239 "CIM_PowerManagementCapabilities.PowerCapabilities" }]
240 uint16 PowerState;
241
242 [Description (
243 "A string describing an element's additional power "
244 "management state, used when the PowerState is set to the "
245 "value 1, \"Other\"."),
246 ModelCorrespondence {
247 "CIM_AssociatedPowerManagementService.PowerState" }]
248 string OtherPowerState;
249
250 [Description (
251 "The time when the element will be powered on again, used "
252 "when the PowerState is set to the value 5, \"Power Cycle "
253 karl 1.1 "(Soft - Off)\"."),
254 ModelCorrespondence {
255 "CIM_AssociatedPowerManagementService.PowerState" }]
256 datetime PowerOnTime;
257 };
258
259 // ==================================================================
260 // PoweredStatisticalData
261 // ==================================================================
262 [Experimental, Version ( "2.8.1000" ), Description (
263 "Statistical information related to the powered on time of a "
264 "Managed Element.")]
265 class CIM_PoweredStatisticalData : CIM_StatisticalData {
266
267 [Description (
268 "The amount of consecutive time that the managed element has "
269 "been powered on.")]
270 datetime PowerOnHours;
271
272 [Description (
273 "The total amount of time that the managed element has been "
274 karl 1.1 "powered on.")]
275 datetime TotalPowerOnHours;
276 };
277
278
279 // ===================================================================
280 // end of file
281 // ===================================================================
|