[ Team LiB ] Previous Section Next Section

Elements Required to Support Hot Plug

This section describes the hardware and software elements required to support the Hot Plug environment. Refer to Figure 17-2 on page 654 during this discussion.

Software Elements

Table 17-1 on page 655 describes the major software elements that must be modified to support Hot-Plug capability. Also refer to Figure 17-2 on page 654.

Table 17-1. Introduction to Major Hot-Plug Software Elements

Software Element

Supplied by

Description

User Interface

OS vendor

An OS-supplied utility that permits the end-user to request that a card connector be turned off in order to remove a card or turned on to use a card that has just been installed.

Hot-Plug Service

OS vendor

A service that processes requests (referred to as Hot-Plug Primitives) issued by the OS. This includes requests to:

  • provide slot identifiers

  • turn card On or Off

  • turn Attention Indicator On or Off

  • return current state of slot (On or Off)

The Hot-Plug Service interacts with the Hot-Plug System Driver to satisfy the requests. The interface (i.e., API) with the Hot-Plug System Driver is defined by the OS vendor.

Standardized Hot-Plug System Driver

System Board vendor or OS

Receives requests (aka Hot-Plug Primitives) from the Hot-Plug Service within the OS. Interacts with the hardware Hot-Plug Controllers to accomplish requests.

Device Driver

Adapter card vendor

Some special, Hot-Plug-specific capabilities must be incorporated in a Hot-Plug capable device driver. This includes:

  • support for the Quiesce command.

  • optional implementation of the Pause command.

  • Support for Start command or optional Resume command.

A Hot-Plug-capable system may be loaded with an OS that doesn't support Hot-Plug capability. In this case, although the system BIOS would contain Hot-Plug-related software, the Hot-Plug Service would not be present. Assuming that the user doesn't attempt hot insertion or removal of a card, the system will operate as a standard, non-Hot-Plug system.

  • The system startup firmware must ensure that all Attention Indicators are Off.

  • The spec also states: "the Hot-Plug slots must be in a state that would be appropriate for loading non-Hot-Plug system software."

Hardware Elements

Table 17-2 on page 656 and Figure 17-2 on page 654 illustrate the major hardware elements necessary to support PCI Express Hot-Plug operation.

Table 17-2. Major Hot-Plug Hardware Elements

Hardware Element

Description

Hot-Plug Controller

Receives and processes commands issued by the Hot-Plug Device Driver. One Controller is associated with each root or switch port that supports hot plug operation. The PCI Express Specification defines a standard software interface for the Hot-Plug Controller.

Card Slot Power Switching Logic

Permits the power supply voltages to a slot to be turned on or off under program control. Controlled by the Hot Plug controller under the direction of the Hot-Plug Device Driver.

Card Reset Logic

Permits the selective assertion or deassertion of the PERST# signal to a specific slot under program control. Controlled by the Hot Plug Controller under the direction of the Hot-Plug System Driver.

Power Indicator

One per slot. Indicates whether power is currently applied to the card slot or not. Controlled by the Hot Plug logic associated with each port, at the direction of the Hot Plug Device Driver.

Attention Indicator

One per slot. The Attention Indicator is used to draw the attention of the operator to indicate a Hot Plug problem or failure. Controlled by the Hot Plug logic associated with this port, at the direction of the Hot-Plug Device Driver.

Attention Button

One per slot. This button is pressed by the operator to notify Hot Plug software of a Hot Plug request.

Card Present Detect Pins

Two Card Present signals are defined by the PCI Express specification: PRSNT1# and PRSNT2#. PRSNT1# is located at one end of the card slot and PRSNT2# at the opposite end. These two pins are shorter that the other slot pins, allowing break-first capability upon card removal. The system board must tie PRSNT1# to ground and connect PRSNT2# to a pull-up resistor on the system board. Additional PRSNT2# pins are defined for wider connectors to support the insertion and recognition of shorter cards installed into longer connectors. The card must connect PRSNT1# to PRSNT2# to complete the current path between ground and Vcc. "Auxiliary Signals" on page 693.

    [ Team LiB ] Previous Section Next Section