
PCI Hot Plug and requirements for a PCI Hot Plug solution
- Document ID: 98060234
- Posted Date: 2001-05-02
- Last Updated: 2001-04-10
- Distribution: View Public Website
- Information
- What is PCI Hot Plug?
PCI Hot Plug offers the capability to replace a PCI adapter while the system remains up and running -- so that online repairs can be performed, much like other hot swappable components (fans, power supplies, etc.). However, PCI Hot Plug is different from those other hot swappable components since it requires NOS (Network Operating System) and PCI adapter driver support. A hot swappable fan or power supply does not require the cooperation (or knowledge) of the NOS or any specialized driver in order to perform an online replacement.
In order to perform a PCI hot plug replace, the user must first interact with the software interface to instruct the NOS and adapter driver to prepare for the replace operation. Once the NOS and adapter driver are prepared, the hardware will be instructed to power off the selected PCI hot plug slot -- allowing the adapter replacement. Once the adapter is physically replaced, the software interface is used to instruct the hardware to power on the PCI hot plug slot, and to instruct the NOS and adapter driver to perform all necessary re-initialization required prior to issuing I/O operations through the newly replaced adapter.
What are the requirements for a PCI Hot Plug solution?
A complete PCI Hot Plug solution requires these components within the system:
- Specialized hardware to power down individual PCI slots -- a PCI hot plug controller. Powering down the PCI slot can be performed while the server remains powered on. Once the individual PCI slot has been powered down, it is safe to remove and replace the PCI adapter card -- without impacting any other system component.
- A driver for the hot plug controller. This driver provides the higher level NOS services and utilities a method to communicate with the hot plug controller. This enables software to control the power to individual PCI slots. This controller driver enables the user interface to select and power down a slot in preparation for a hot plug operation.
- Support within the NOS to direct the PCI adapter driver to prepare for hot plug operations. This may require the driver to quiesce the I/O activity (that is, to stop I/Os until further directed), redirect I/O to a "stand-by" redundant adapter, or to stop I/Os and unload the driver (depending on the specific NOS implementation) in preparation for an adapter removal. This may also require support within the NOS to direct the PCI adapter driver to perform all necessary (re)initialization resulting from the online replacement or addition of an adapter.
- Finally, support within the PCI adapter driver to respond to the specific NOS requests to prepare for an adapter removal, replacement, or addition. The specifics of the driver actions are dependent on the NOS specific implementation of PCI hot plug.
PHP and Windows NT 4.0 Server Since Microsoft Windows NT 4.0 does not have integrated support for PCI Hot Plug, OEMs provide all of the necessary add-on software to enable PCI Hot Plug support in NT 4.0. This add-on software provides a PCI Hot Plug user interface, the NT hot plug service, and the hot plug controller driver. For Windows NT 4.0, specialized PCI adapter drivers, compliant to the PCI hot plug implementation, are also required to complete the solution.PHP and Windows 2000 Server
The PCI Hot Plug (PHP) Filter Driver layers filter devices (FIDOs) into PCI adapter devnodes to provide PCI Hot Plug functionality in Windows 2000. The creation of these devnodes is initiated by the Windows 2000 PCI bus driver (pci.sys) during enumeration of the PCI bus. Because the PHP ASIC is a PCI device, the PCI Hot Plug Filter Driver also acts as a WDM driver, controlling the PHP ASIC. The PCI Hot Plug Filer Driver takes advantage of Windows 2000's Plug and Play support to implement hot addition, removal and replace (replace is actually a remove followed by an add) operations. The PCI Hot Plug Filter Driver is dependent on the Windows 2000 architecture and will not function on previous Windows NT versions.PHP and Novell NetWare 5 Novell NetWare 5 has integrated support for PCI hot plug, including its own user interface (the NetWare Configuration Manager Console -- ncmcon.nlm). Again, this system bus driver provides the method for the NetWare 5 services to communicate with the hot plug controller hardware. When this system bus driver is installed on the system, PCI Hot Plug functionality is enabled. For NetWare 5, adapter drivers written to the NOS specification are hot plug enabled - there is no need for specialized drivers.
COMMENTS:
This document is a work in progress. Since "PCI Hot Plug"(PHP) technology is fairly new, more information will be added when it becomes available. Toshiba specific information regarding PHP will be made available in a separate document. For more information visit the following links: http://www.microsoft.com/hwdev/pci/hotplugpci.htm
http://developer.novell.com/devres/langrp/lan/DISPATCH/hotplug.htm
http://www.pcisig.com/data/news/1997/PCI-hot-plug-release-final.htm
http://opensource.compaq.com/sourceforge/project/?group_id=13 - Export Control and EULA
- Use of any software made available for download from this system constitutes your acceptance of the Export Control Terms and the terms in the Dynabook end-user license agreement both of which you can view before downloading any such software.