This chapter describes how PCI devices are initialized and used by the Linux kernel.
REVIEW NOTE: This is in need of reworking.
Peripheral Component Interconnect (PCI), as its name implies is a standard which describes how to connect the peripheral components of a system together in a structured and controlled way. The standard[3, PCI Local Bus Specification,] describes the way that the system components are electrically connected and the way that they should behave. This chapter looks at how the Linux kernel initializes the system's PCI buses and devices.
Figure: Example PCI Based System
Figure is a logical diagram of an example PCI based system. The PCI busses and PCI-PCI bridges are the glue connecting the system components together; the CPU is connected to PCI bus 0, the primary PCI bus as is the video device. A special PCI device, a PCI-PCI bridge connects the primary bus to the secondary PCI bus, PCI bus 1. In the jargon of the PCI specification, PCI bus 1 is described as being downstream of the PCI-PCI bridge and PCI bus 0 is up-steam of the bridge. Connected to the secondary PCI bus are the SCSI and ethernet devices for the system. Physically the bridge, secondary PCI bus and two devices would all be contained on the same combination PCI card. The PCI-ISA bridge in the system supports older, legacy ISA devices and the diagram shows a super I/O controller chip which controls the keyboard, mouse and floppy.