Skip to content

Commit 7acb092

Browse files
gurasinghMSCopilotmattkur
authored
pci_core: add infrastructure for devices to advertise pcie support with some basic functionality (#1930)
Adds the PCI_Express capability option for devices to advertise PCIe support. This change will also us to add FLR support to the nvme_test crate for further perf testing. PciExpressCapability: New capability struct implementing PCI Express Device Capabilities, Device Control, and Device Status registers Spec digarams (From PCIe Base Spec 6.4) for reference: <img width="1481" height="991" alt="image" src="https://github.com/user-attachments/assets/a6f49e62-af03-4573-ab60-17637154aadc" /> <img width="1489" height="919" alt="image" src="https://github.com/user-attachments/assets/21f6996c-eb8b-4fb6-b505-a113c37d9257" /> Being made as a helper PR to #1858 since that was getting a little too large/complicated --------- Co-authored-by: Copilot <[email protected]> Co-authored-by: Matt LaFayette (Kurjanowicz) <[email protected]>
1 parent 13ae1ad commit 7acb092

File tree

3 files changed

+516
-0
lines changed

3 files changed

+516
-0
lines changed

vm/devices/pci/pci_core/src/capabilities/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ use inspect::Inspect;
99
use vmcore::save_restore::ProtobufSaveRestore;
1010

1111
pub mod msix;
12+
pub mod pci_express;
1213
pub mod read_only;
1314

1415
/// A generic PCI configuration space capability structure.

0 commit comments

Comments
 (0)