Hi all,

All documentation I've read thus far suggests that PCI bus 0 is the "root" bus and all other PCI buses branch from there. However, in scanning through all configuration headers on my system, I've found a network controller (based on the classcode) that looks like the following:

VendorID: 0x8086
DeviceID: 0x109a
Bus: 4
Slot: 0
Function: 0
Slotpath:
class: 020000
BAR1: fe3e0000
BAR2: fe400000
BAR3: 0000cce1
BAR4: 00000000
BAR5: 00000000
BAR6: 00000000

This sure *looks* valid, if I look at all PCI bridges in the system I see none that offer bus 4 as secondary.. Here's the bridge list:

1 HOST-PCI bridges found
Bridge 0: primary=0 secondary=0 subord=0 slot=0, vid=8086 did=2770

5 PCI-PCI bridges found
Bridge 0: primary=0 secondary=1 subord=1 slot=1, vid=8086 did=2771
Bridge 1: primary=0 secondary=2 subord=2 slot=28, vid=8086 did=27d0
Bridge 2: primary=0 secondary=5 subord=7 slot=30, vid=8086 did=244e
Bridge 3: primary=5 secondary=6 subord=6 slot=2, vid=8086 did=537c
Bridge 4: primary=5 secondary=7 subord=7 slot=4, vid=1011 did=0026


So how does this bus 4 magically appear without being bridged from bus 0? I've scanned all pci configs for classcode 06xxxx and none seem to offer a bus 4.

TIA!

Read this article.

It has allot of info of how the busses and bridges work.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.