Jim,
This is described in the "PCI-to-PCI Bridge Architecture Specification" revision 1.1, chapter 3.
There are two types of configuration transactions. Type 0 has the lowest bit of the AD bus set to 0. A type 0 transaction is to the config space of a device on the local bus and only needs to convey device number and function number. A type 1 transaction has the lowest bit set to 1. Type 1 means the transaction to the configuration space is to another bus. It encodes the bus number, device number and function number. All bridges on the bus will check if the type transaction is meant for a bus behind it. In the bridge's config space there are three registers used to do this. These are the Primary Bus Number, Secondary Bus Number and Subordinate Bus Number registers. They are loaded by the system during initialization. If the bridge sees that the device targeted by the type 1 transaction is on its secondary bus it will convert the transaction to a type 0 and send it on. If the bridge sees that the device targeted by the type 1 transaction is behind it on another bus behind a bridge (the Subordinate Bus Number Register holds the value of the highest numbered bus behind the bridge) then it will leave the transaction as a type 1 and pass it on.
You can get a lot more detail by reading section 3.1.
Jeff D
-----Original Message-----
From: Jim Chan [mailto:tan264@hotmail.com]
Sent: Thursday, September 07, 2000 11:13 PM
To: pci-sig@znyx.com
Subject: PCI configuration transaction
Hi guys
Is the Configuration Mechanism described in the PCI spec for software
implementation(ie OS implementation).
During the configuration, if the configuration software detect a PCI-PCI
bridge, it will know that there is another PCI bus at the other end of the
bridge(let say PCI bus 1). So it will scan all the devices on PCI BUS 1. How
can the software actually pass thru the bridge and be able to scan PCI BUS
1. We have a physical hardware(which is the bridge) between two PCI bus. I
just wonder how can the conf. software be able to go pass the bridge and
scan the bus on the other side.
The target device number are decoded within the bridge and the decoder
asserts the appropriate IDSEL output signal. How do we implement this
decoder?? Can we do the assignment of IDSEL to device number by software??
Thanks
Jimmy
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
Share information about yourself, create your own public profile at
http://profiles.msn.com.