Method and system of supporting multi-plugging in X8 and X16 PCI express slots
AssigneeDell Products L.P.
InventorsMukund Khatri, Anand Joshi, Wei Liu
Life of this patent
Estimating the term…
Abstract
A card having a first device and a second device is plugged into a root port having a predefined root port width. The first device is trained and the device lane width is determined. If the root port width is greater than the device lane width then the root port is dynamically configured via hardware strapping to include a predefined number of adjacent ports with each port having a lane width equal to the device lane width. The root port is reset to force training of the first device and the second device.
Claims20
A basic input output system (BIOS) comprising:
- a detector, wherein the detector detects a first device located on a card having multiple devices, wherein the first device is capable of communicating via N lanes, N being an integer, wherein the card is electrically coupled to a root port configured as a single port having M lanes, M being an integer;
- a reconfigurer, wherein the reconfigurer reconfigures the root port from the single port to a predefined number of adjacent ports when M is greater than N;
- and
- a retrainer, wherein the retrainer forces a retraining of the card to train the multiple devices.
A method for training devices included on a card, the card being plugged into a root port, the method comprising:
- detecting a first device located on the card, wherein the first device is configured to communicate via N lanes and the root port is configured to communicate via M lanes, wherein M and N are predefined integers;
- configuring the root port to include a predefined number of adjacent ports when M is greater than N;
- providing a reset command to force a retraining of the devices;
- and
- detecting the first device and a second device located on the card, wherein the second device is independent of the first device, wherein each one of the first device and the second device is configured to communicate with one of the predefined number of adjacent ports via a corresponding portion of the M lanes.
An information handling system (IHS) comprising:
- a processor;
- a memory coupled to the processor via a bus;
- a root port coupled to the bus;
- a card plugged into the root port via a connector, wherein the root port is operable to communicate with the card via M lanes where M is an integer, wherein the card includes a first device and a second device, the second device being different than the first device;
- a basic input output system (BIOS) stored in memory, wherein the BIOS includes instructions executable by the processor for:
- detecting the first device located on the card;
- configuring the root port to include a predefined number of adjacent ports if M is greater than N, wherein each one of the predefined number of adjacent ports is configured to communicate via a corresponding half of the M lanes;
- resetting the root port;
- and
- detecting the first device and the second device, wherein each one of the first device and the second device is configured to communicate with one of the predefined number of adjacent ports via the corresponding half of the M lanes.
Dependencies are inferred from the claim text.