Pci and pci express virtual hot plug systems and methods
AssigneeCiena Corporation
InventorsGang Luo, Azam Syed, Randy Hilderman
Life of this patent
Estimating the term…
Abstract
Virtual hot plug systems and methods are described for Peripheral Component Interconnect (PCI), PCI Express (PCIe), and variants thereof. Specifically, the virtual hot plug systems and methods enable PCI related devices to support a hot plug configuration with such devices lacking hot plug controller hardware. The virtual hot plug systems and methods include intelligent polling logic for discovering the new PCI/PCIe devices with proper logic to access the hardware and avoid hanging or locking up the operating system.
Claims20
A virtual hot plug system, comprising:
- a Root Complex configured to be communicatively coupled to a Peripheral Component Interconnect (PCI) or PCI express (PCIe) device comprising virtual hot plug enabling hardware thereon without corresponding hot plug controller hardware on the PCI/PCIe device;
- a virtual hot plug controller communicatively coupled to the Root Complex, wherein the virtual hot plug controller is configured to:
- intelligently poll the Root Complex to discover the PCI/PCIe device while avoiding hanging or locking up an operating system;
- and
- perform a virtual hot plug of the PCI/PCIe device configuring a PCI/PCIe subsystem in the operating system.
A virtual hot plug method, comprising:
- physically connecting a Peripheral Component Interconnect (PCI) or PCI express (PCIe) device to a system, wherein the PCI/PCIe device comprises virtual hot plug enabling hardware thereon without corresponding hot plug controller hardware on the PCI/PCIe device;
- intelligently polling a Root Complex to discover the PCI/PCIe device while avoiding hanging or locking up an operating system;
- and
- performing a virtual hot plug of the PCI/PCIe device with a virtual hot plug controller configuring a PCI/PCIe subsystem in the operating system.
A system, comprising:
- a Peripheral Component Interconnect (PCI) or PCI express (PCIe) device comprising virtual hot plug enabling hardware thereon without corresponding hot plug controller hardware on the PCI/PCIe device;
- a Root Complex configured to be communicatively coupled to the PCI/PCIe device;
- and
- a processor executing:
- an operating system comprising a PCI/PCIe subsystem comprising initialization data and a hot plug rescan utility;
- a virtual hot plug controller;
- a virtual hot plug enabling hardware monitor;
- and
- a Root Complex monitor;
- and
- an initialization data handler;
- wherein the virtual hot plug enabling hardware monitor is configured to detect a presence and electrical readiness of the PCI/PCIe device;
- wherein the Root Complex monitor is configured to detect readiness of the Root Complex;
- and
- wherein the virtual hot plug controller is configured to modify the initialization data via the initialization data handler responsive to readiness of the PCI/PCIe device and the Root Complex and to direct the PCI/PCIe subsystem to execute the hot plug rescan utility.
Dependencies are inferred from the claim text.