# Class CIM_PCIDevice
extends CIM_PCIController

Capabilities and management of a PCI device controller on an adapter card.

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_EnabledLogicalElement
|
+--CIM_AllocatedLogicalElement
|
+--CIM_LogicalDevice
|
+--CIM_Controller
|
+--CIM_PCIController
|
+--CIM_PCIDevice

## Direct Known Subclasses

CIM_PCIBridge
CIM_PCIeSwitch

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
ClassConstraint | string | inv:IsBaseAddress64=true implies BaseAddress=null and BaseAddress64<>null, inv:IsBaseAddress64=false implies BaseAddress64=null
Description | string | Capabilities and management of a PCI device controller on an adapter card.
UMLPackagePath | string | CIM::Device::Controller
Version | string | 2.22.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
BusNumber | uint8 |
Description | string | The bus number where this PCI device resides.
DeviceNumber | uint8 |
Description | string | The device number assigned to this PCI device for this bus.
FunctionNumber | uint8 |
Description | string | The function number for this PCI device.
MaxLatency | uint8 |
Description | string | Register that specifies how often the device needs access to the PCI bus in 250ns. A 0 value indicates no requirement.
PUnit | string | second * 250 * 10^-9
Units | string | 250 nanoseconds
MinGrantTime | uint8 |
Description | string | Register that indicates how long the master would like to retain PCI bus ownership whenever it initiates a transaction. A 0 value indicates no requirement.
PUnit | string | second * 250 * 10^-9
Units | string | 250 nanoseconds
PCIDeviceID | uint16 |
Description | string | Register that contains a value assigned by the device manufacturer used to identify the type of device.
RevisionID | uint8 |
Description | string | Register that contains a value assigned by the device manufacturer used to identify the revision number of the device.
SubsystemID | uint16 |
Description | string | Subsystem identifier code.
SubsystemVendorID | uint16 |
Description | string | Subsystem vendor ID. ID information is reported from a PCIDevice through protocol-specific requests. The correct place in the CIM Schema for this information is in CIM_Physical Element (the Manufacturer property) for hardware, and CIM_Product (the Vendor property) if the information is related to Product acquisition. This data is also reported here, because it is part of the standard output from the Device and is an optimization.
VendorID | uint16 |
Description | string | Register that contains a value assigned by the PCI SIG used to identify the manufacturer of the device.
BaseAddress | uint32[] |
Description | string | Array of doubleword base-memory addresses.

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
AllocationState | string | CIM_LogicalDevice
Availability | uint16 | CIM_LogicalDevice
CacheLineSize | uint8 | CIM_PCIController
Caption | string | CIM_ManagedElement
ClassCode | uint8 | CIM_PCIController
CommandRegister | uint16 | CIM_PCIController
CommunicationStatus | uint16 | CIM_ManagedSystemElement
CreationClassName | string | CIM_LogicalDevice
Description | string | CIM_ManagedElement
DetailedStatus | uint16 | CIM_ManagedSystemElement
DeviceID | string | CIM_LogicalDevice
DeviceSelectTiming | uint16 | CIM_PCIController
ElementName | string | CIM_ManagedElement
EnabledDefault | uint16 | CIM_EnabledLogicalElement
EnabledState | uint16 | CIM_EnabledLogicalElement
ErrorCleared | boolean | CIM_LogicalDevice
ErrorDescription | string | CIM_LogicalDevice
ExpansionROMBaseAddress | uint32 | CIM_PCIController
Generation | uint64 | CIM_ManagedElement
HealthState | uint16 | CIM_ManagedSystemElement
InstallDate | datetime | CIM_ManagedSystemElement
InstanceID | string | CIM_ManagedElement
InterruptPin | uint16 | CIM_PCIController
LastErrorCode | uint32 | CIM_LogicalDevice
LatencyTimer | uint8 | CIM_PCIController
LocationIndicator | uint16 | CIM_LogicalDevice
MaxNumberControlled | uint32 | CIM_Controller
MaxQuiesceTime | uint64 | CIM_LogicalDevice
Name | string | CIM_ManagedSystemElement
OperatingStatus | uint16 | CIM_ManagedSystemElement
OtherEnabledState | string | CIM_EnabledLogicalElement
PowerManagementSupported | boolean | CIM_LogicalDevice
PowerOnHours | uint64 | CIM_LogicalDevice
PrimaryStatus | uint16 | CIM_ManagedSystemElement
ProtocolDescription | string | CIM_Controller
ProtocolSupported | uint16 | CIM_Controller
RequestedState | uint16 | CIM_EnabledLogicalElement
SelfTestEnabled | boolean | CIM_PCIController
Status | string | CIM_ManagedSystemElement
StatusInfo | uint16 | CIM_LogicalDevice
SystemCreationClassName | string | CIM_LogicalDevice
SystemName | string | CIM_LogicalDevice
TimeOfLastReset | datetime | CIM_Controller
TimeOfLastStateChange | datetime | CIM_EnabledLogicalElement
TotalPowerOnHours | uint64 | CIM_LogicalDevice
TransitioningToState | uint16 | CIM_EnabledLogicalElement
AdditionalAvailability | uint16[] | CIM_LogicalDevice
AvailableRequestedStates | uint16[] | CIM_EnabledLogicalElement
Capabilities | uint16[] | CIM_PCIController
CapabilityDescriptions | string[] | CIM_PCIController
IdentifyingDescriptions | string[] | CIM_LogicalDevice
OperationalStatus | uint16[] | CIM_ManagedSystemElement
OtherIdentifyingInfo | string[] | CIM_LogicalDevice
PowerManagementCapabilities | uint16[] | CIM_LogicalDevice
StatusDescriptions | string[] | CIM_ManagedSystemElement

## Class Methods

### Inherited Class Methods

Name | Return Type | Class Origin
--- | --- | ---
BISTExecution | uint8 | CIM_PCIController
EnableDevice | uint32 | CIM_LogicalDevice
OnlineDevice | uint32 | CIM_LogicalDevice
QuiesceDevice | uint32 | CIM_LogicalDevice
RequestStateChange | uint32 | CIM_EnabledLogicalElement
Reset | uint32 | CIM_LogicalDevice
RestoreProperties | uint32 | CIM_LogicalDevice
SaveProperties | uint32 | CIM_LogicalDevice
SetPowerState | uint32 | CIM_LogicalDevice