Transparent bridges (a. k. a. HUB-to-PCI bridges)?

Scott Long scottl at freebsd.org
Wed Nov 24 05:56:14 PST 2004


Chuck Swiger wrote:
> Wilkinson, Alex wrote:
> 
>> Trying to understand your nomenclature John, so that I can follow this 
>> thread.
> 
> 
> I'm no John Kennedy, nor even John Baldwin, but I'll give this a shot.  :-)
> 
>> Can you please elaborate on the following .... please ;-\
>>
>> 1. PCI bridges    - Host-PCI
>>    - PCI-PCI
> 
> 
> A host-PCI bridge is typically part of the "southbridge" chip of modern 
> motherboards; on Intel motherboards this is also called the ICH chip, 
> such as the 82801AA/BA/CA/etc.  VIA Southbridges include the 
> VT8233/8235/8237/etc.

Nope.  The southbridge typically holds a PCI-ISA bridge.  The host-pci
bridge is usually found in the northbridge part of the chipset.  The
whole point it to bridge the CPU to one or more PCI buses.

> 
> A PCI-PCI bridge is commonly found on multifunction PCI cards, an 
> example would be the DEC 21151 chip found on various four-port NICs.

PCI-PCI bridges are also quite common on motherboards, especially with
PCI-X.

> 
>> 2. OOPish device object (device_t) ? 
> 
> 
> True OOP involves encapsulation, polymorphism, and inheritence, and 
> requires language support which is not really available in pure C.  That 
> being said, careful programming in C lets you create several 
> closely-related structs for different types of "objects" which can all 
> be utilized by a common set of functions.
> 
> The most common example of this would probably be the 
> protocol-independent struct sockaddr, which can handle IPv4, IPv6, and 
> other types of network address formats using a common structure (or a 
> related group of structures, depending on how you want to look at it).  
> See "man getaddrinfo".

The particular reference to device_t refers to it's ability to have
limited inheritence of methods from it's parent 'class'.

> 
>> 3. $PIR table 
> 
> 
> Stands for PCI Interrupt Routing table.  When your computer boots, the 
> BIOS is responsible for configuring at least the devices required to 
> boot such that they and the BIOS agree as to which IRQ each device ought 
> to use.
> 
> Blah, I couldn't find a good link outside of Microsoft, but see here:
> 
> http://www.microsoft.com/whdc/archive/pciirq.mspx
> 

Scott


More information about the freebsd-current mailing list