Expand description
Provides facilities for accessing Capabilities described in the PCI Configuration Space.
For Extended Capabilities, see pci_driver::config::ext_caps.
The following table relates the section numbers and titles from the “PCI Express® Base Specification Revision 6.0” describing Capabilities to the corresponding type:
| Section number | Section title | Type |
|---|---|---|
| 7.5.2 | PCI Power Management Capability Structure | PciPowerManagementCapability |
| 7.5.3 | PCI Express Capability Structure | PciExpressCapability |
| 7.7.1 | MSI Capability Structures | MsiCapability Msi32BitCapability Msi64BitCapability Msi32BitPvmCapability Msi64BitPvmCapability |
| 7.7.2 | MSI-X Capability and Table Structure | MsiXCapability |
| 7.8.5 | Enhanced Allocation Capability Structure (EA) | EnhancedAllocationCapability |
| 7.9.4 | Vendor-Specific Capability | VendorSpecificCapability |
| 7.9.18 | Vital Product Data Capability (VPD Capability) | VitalProductDataCapability |
| 7.9.21 | Conventional PCI Advanced Features Capability (AF) | ConventionalPciAdvancedFeaturesCapability |
| 7.9.27 | Null Capability | NullCapability |
Structs§
- Capability
Header - The spec doesn’t really define a header part explicitly, but this holds the two fields that are common to all Capabilities.
- Conventional
PciAdvanced Features Capability - Enhanced
Allocation Capability - Msi32
BitCapability - Msi32
BitPvm Capability - Msi64
BitCapability - Msi64
BitPvm Capability - MsiCapability
- MsiMessage
Control - MsiX
Capability - Null
Capability - PciCapabilities
- Lets you inspect and manipulate the PCI Capabilities defined in the configuration space of some PCI device.
- PciCapabilities
Into Iter - An iterator over all PCI Capabilities of a device.
- PciCapabilities
Iter - An iterator over a device’s PCI Capabilities of a certain type.
- PciExpress
Capabilities - PciExpress
Capability - TODO: Should take the “Capability Version” into consideration.
- PciExpress
Device Capabilities - PciExpress
Device Capabilities2 - PciExpress
Device Control - PciExpress
Device Control2 - PciExpress
Device Status - PciExpress
Link Capabilities - PciExpress
Link Capabilities2 - PciExpress
Link Control - PciExpress
Link Control2 - PciExpress
Link Status - PciExpress
Link Status2 - PciPower
Management Capability - Unspecified
Capability - Some/any PCI Capability.
- Vendor
Specific Capability - Vital
Product Data Capability - VpdAddress
Register - The “VPD Address Register”’s two elements are/can be RW, but we expose them as RO because they are supposed to be written only together at once.
Traits§
- Capability
- Some specific type of PCI Capability.