(file) Return to Device27_USB.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIM27

  1 kumpf 1.2 // ===================================================================
  2           // Title:       Device USB 2.7
  3           // Filename:    Device27_USB.mof
  4           // Version:     2.7.0
  5           // Release:     Final
  6           // Date:        03/31/03
  7           // ===================================================================
  8           // Copyright 2000-2003 Distributed Management Task Force, Inc. (DMTF).
  9           // All rights reserved.  
 10           // DMTF is a not-for-profit association of industry members dedicated 
 11           // to promoting enterprise and systems management and interoperability. 
 12           // DMTF specifications and documents may be reproduced for uses
 13           // consistent with this purpose by members and non-members, 
 14           // provided that correct attribution is given. 
 15           // As DMTF specifications may be revised from time to time, 
 16           // the particular version and release date should always be noted.
 17           //
 18           // Implementation of certain elements of this standard or proposed 
 19           // standard may be subject to third party patent rights, including 
 20           // provisional patent rights (herein "patent rights"). DMTF makes 
 21           // no representations to users of the standard as to the existence 
 22 kumpf 1.2 // of such rights, and is not responsible to recognize, disclose, or
 23           // identify any or all such third party patent right, owners or 
 24           // claimants, nor for any incomplete or inaccurate identification or 
 25           // disclosure of such rights, owners or claimants. DMTF shall have no 
 26           // liability to any party, in any manner or circumstance, under any 
 27           // legal theory whatsoever, for failure to recognize, disclose, or 
 28           // identify any such third party patent rights, or for such party's
 29           // reliance on the standard or incorporation thereof in its product, 
 30           // protocols or testing procedures. DMTF shall have no liability to 
 31           // any party implementing such standard, whether such implementation 
 32           // is foreseeable or not, nor to any patent owner or claimant, and shall 
 33           // have no liability or responsibility for costs or losses incurred if 
 34           // a standard is withdrawn or modified after publication, and shall be
 35           // indemnified and held harmless by any party implementing the 
 36           // standard from any and all claims of infringement by a patent owner 
 37           // for such implementations.
 38           //
 39           // For information about patents held by third-parties which have 
 40           // notified the DMTF that, in their opinion, such patent may relate to 
 41           // or impact implementations of DMTF standards, visit 
 42           // http://www.dmtf.org/about/policies/disclosures.php.
 43 kumpf 1.2 // ===================================================================
 44           // Description: The Device Model extends the management concepts that
 45           //              are related to LogicalDevices. This file defines 
 46           //              the modeling constructs to manage USB devices.
 47           //
 48           //              The object classes below are listed in an order that
 49           //              avoids forward references. Required objects, defined 
 50           //              by other working groups, are omitted.
 51           // ==================================================================
 52           // Change Log for v2.7 - None
 53           // ================================================================== 
 54           
 55           #pragma locale ("en_US")
 56           
 57           
 58           // ===================================================================
 59           // USBDevice
 60           // ===================================================================
 61           [Version ("2.6.0"), Description (
 62               "The management characterisitics of a USB Device.") ]
 63           class CIM_USBDevice : CIM_LogicalDevice {
 64 kumpf 1.2 
 65               [Description (
 66                   "Indicates the latest USB Version supported by the USB Device. "
 67                   "The property is expressed as a Binary-Coded Decimal (BCD) "
 68                   "where a decimal point is implied between the 2nd and 3rd "
 69                   "digits. For example, a value of 0x201 indicates that "
 70                   "version 2.01 is supported.") ]
 71               uint16 USBVersion;
 72           
 73               [Description (
 74                   "Indicates the USB class code.") ]
 75               uint8 ClassCode;
 76           
 77               [Description (
 78                   "Indicates the USB subclass code.") ]
 79               uint8 SubclassCode;
 80           
 81               [Description (
 82                   "Indicates the USB protocol code.") ]
 83               uint8 ProtocolCode;
 84           
 85 kumpf 1.2     [Description (
 86                   "Number of device configurations that are defined for the "
 87                   "Device.") ]
 88               uint8 NumberOfConfigs;
 89             
 90               [Description (
 91                   "Indicates the configuration currently selected for the "
 92                   "Device. If this value is zero, the Device is "
 93                   "unconfigured."), 
 94                   ModelCorrespondence {"CIM_USBDevice.CurrentAlternateSettings"} ]
 95               uint8 CurrentConfigValue;
 96           
 97               [Description (
 98                   "An array of USB 'alternate settings' for each interface "
 99                   "in the currently selected configuration (indicated by the "
100                   "CurrentConfigValue property). This array has one entry for "
101                   "each interface in the configuration. If the property, "
102                   "CurrentConfigValue, is zero (indicating the Device is not "
103                   "configured), the array is undefined. To understand how "
104                   "to parse this octet string, refer to the USB Specification."), 
105                   ModelCorrespondence {"CIM_USBDevice.CurrentConfigValue"} ]
106 kumpf 1.2     uint8 CurrentAlternateSettings[];
107           
108               [Description (
109                   "This method returns the USBDevice Descriptor as specified by "
110                   "the input parameters. Each parameter is briefly described "
111                   "here with more detail in its Qualifier list. RequestType is "
112                   "an input parameter that defines whether the request is for "
113                   "standard, class or vendor-specific information, as well as "
114                   "specifying the recipient. RequestValue is also an input "
115                   "parameter and defines the USB Descriptor Type and Index. "
116                   "RequestIndex is an input parameter which describes the "
117                   "language used to return a string Descriptor. RequestLength "
118                   "is both an input and output parameter. It specifies the "
119                   "length of the Descriptor that should be returned (on input) "
120                   "and what is actually returned in the Buffer parameter (on "
121                   "output). Buffer is an output parameter, containing the "
122                   "Descriptor data. The GetDescriptor method returns an integer "
123                   "value of 0 if the USB Descriptor is successfully returned, 1 "
124                   "if the request is not supported and any other number to "
125                   "indicate an error. \n"
126                   "In a subclass, the set of possible return codes could be "
127 kumpf 1.2         "specified, using a ValueMap qualifier on the method. The "
128                   "strings to which the ValueMap contents are 'translated' may "
129                   "also be specified in the subclass as a Values array "
130                   "qualifier.") ]
131               uint32 GetDescriptor(
132                   [IN, Description (
133                       "RequestType is bit-mapped and identifies the "
134                       "type of Descriptor request and the recipient. The type of "
135                       "request may be 'standard', 'class' or 'vendor-specific'. "
136                       "The recipient may be 'device', 'interface', 'endpoint' "
137                       "or 'other'. Refer to the USB Specification for the "
138                       "appropriate values for each bit.") ] 
139                   uint8 RequestType, 
140                   [IN, Description (
141                       "RequestValue contains the Descriptor Type in "
142                       "the high byte and the Descriptor Index (for example, index"
143                       " or offset into the Descriptor array) in the low byte. "
144                       "Refer to the USB Specification for more information.") ] 
145                   uint16 RequestValue, 
146                   [IN, Description (
147                       "RequestIndex defines the 2 byte Language ID "
148 kumpf 1.2             "code used by the USBDevice when returning string "
149                       "Descriptor data. The parameter is typically 0 for "
150                       "non-string Descriptors. Refer to the USB Specification "
151                       "for more information.") ] 
152                   uint16 RequestIndex, 
153                   [IN, OUT, Description (
154                       "On input, RequestLength is the length "
155                       "(in octets) of the Descriptor that should be returned. "
156                       "If this value is less than the actual length of the "
157                       "Descriptor, only the requested length will be returned. "
158                       "If it is more than the actual length, the actual length "
159                       "is returned. On output, this parameter is the length, "
160                       "in octets, of the Buffer being returned. If the requested "
161                       "Descriptor does not exist, the contents of this parameter "
162                       "are undefined.") ] 
163                   uint16 RequestLength, 
164                   [IN (false), OUT, Description (
165                       "Buffer returns the requested Descriptor information. "
166                       "If the Descriptor does not exist, "
167                       "the contents of the Buffer are undefined.") ] 
168                   uint8 Buffer[]); 
169 kumpf 1.2 };
170           
171           
172           // ===================================================================
173           // USBHub 
174           // ===================================================================
175           [Version ("2.6.0"), Description (
176               "USB Hub Device.") ]
177           class CIM_USBHub : CIM_USBDevice {
178           
179               [Description (
180                   "Indicates whether power to the Hub Ports is individually or "
181                   "gang-switched. If this value is FALSE, power is switched "
182                   "individually for each Port. If this value is TRUE, power is "
183                   "switched to all Ports on the Hub at once.") ]
184               boolean GangSwitched;
185             
186               [Description (
187                   "Number of downstream Ports on the Hub, including those "
188                   "embedded in the Hub's silicon. Individual USBPorts are "
189                   "associated with the Hub using the USBPortOnHub association.") ]
190 kumpf 1.2     uint8 NumberOfPorts;
191           };
192           
193           
194           // ===================================================================
195           // USBPort 
196           // ===================================================================
197           [Version ("2.6.0"), Description (
198               "A Port on a USBHub.") ]
199           class CIM_USBPort : CIM_LogicalPort {
200           
201               [Override ("Speed"), Description (
202                   "USB Port Speed in bits per second. This speed is determined "
203                   "and set by the attached Device. The 'attached Device' is "
204                   "indicated using the USBConnection association. At this time, "
205                   "only several Port speeds are valid. These are: 1.5Mbps and "
206                   "12Mbps. The value 0 can also be specified to indicate that "
207                   "the current speed is 'unknown' or 1 to indicate that the "
208                   "speed is 'other' than 1.5 or 12Mbps."), 
209                   ValueMap {"0", "1", "1500000", "12000000"} ]
210               uint64 Speed;
211 kumpf 1.2 
212               [Override ("StatusInfo"), Description (
213                   "Indicates whether the Port is currently enabled."), 
214                   ValueMap {"2", "3", "4"}, 
215                   Values {"Unknown", "Enabled", "Disabled"} ]
216               uint16 StatusInfo;
217           
218               [Override ("Availability"), Description (
219                   "Indicates whether the Port is currently Powered."), 
220                   ValueMap {"2", "3", "7"}, 
221                   Values {"Unknown", "Running/Full Power", "Power Off"} ]
222               uint16 Availability;
223           
224               [Description (
225                   "The USB Port's power capability. The current specification "
226                   "defines that 1 or 5 loads can be supported (values 2 or 3 "
227                   "would be specified, respectively)."), 
228                   ValueMap {"0", "1", "2", "3"},  
229                   Values {"Unknown", "Other", "1 Unit Load", "5 Unit Loads"} ]
230               uint16 Power;
231           
232 kumpf 1.2     [Description (
233                   "Indicates whether the Port is currently Suspended.") ]
234               boolean Suspended;
235           
236               [Description (
237                   "Indicates whether the Port is disabled due to an "
238                   "overcurrent event.") ]
239               boolean Overcurrent;
240           };
241           
242           
243           // ===================================================================
244           // USBPortOnHub
245           // ===================================================================
246           [Association, Version ("2.6.0"), Description (
247               "USBPortOnHub associates a USBPort or connection point with the "
248               "USBHub that includes it.") ]
249           class CIM_USBPortOnHub : CIM_PortOnDevice {
250           
251               [Override ("Antecedent"), Min (1), Max (1), Description (
252                   "The Hub that includes the USBPort.") ]
253 kumpf 1.2     CIM_USBHub REF Antecedent;
254           
255               [Override ("Dependent"), Min (1), Description (
256                   "The Port on the USBHub.") ]
257               CIM_USBPort REF Dependent;
258           };
259           
260           
261           // ===================================================================
262           // USBControllerHasHub
263           // ===================================================================
264           [Association, Version ("2.6.0"), Description (
265               "USBControllerHasHub defines the Hub(s) that are downstream "
266               "of the USBController.") ]
267           class CIM_USBControllerHasHub : CIM_ControlledBy {
268           
269               [Override ("Antecedent"), Min (1), Max (1), Description (
270                   "The USBController.") ]
271               CIM_USBController REF Antecedent;
272           
273               [Override ("Dependent"), Min (1), Description (
274 kumpf 1.2         "The USBHub that is associated with the Controller.") ]
275               CIM_USBHub REF Dependent;
276           };
277           
278           
279           // ===================================================================
280           // USBConnection 
281           // ===================================================================
282           [Association, Version ("2.6.0"), Description (
283               "USBConnection associates a Device with the USBPort to which it "
284               "is connected.") ]
285           class CIM_USBConnection: CIM_DeviceConnection {
286           
287               [Override ("Antecedent"), Max (1), Description (
288                   "The USBPort.") ]
289               CIM_USBPort REF Antecedent;
290           
291               [Override ("Dependent"), Max (1), Description (
292                   "The USBDevice that is connected to the Port.") ]
293               CIM_USBDevice REF Dependent;
294           };
295 kumpf 1.2 
296           
297           // ===================================================================
298           // end of file
299           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2