From: Jon Smirl <jonsmirl@gmail.com>
To: lkml <linux-kernel@vger.kernel.org>
Subject: structure of /sys/class/pci_bus
Date: Sat, 4 Sep 2004 19:39:00 -0400 [thread overview]
Message-ID: <9e4733910409041639457fd46b@mail.gmail.com> (raw)
I'm having some trouble with the way sysfs is structured for multiple
PCI busses.
[jonsmirl@smirl /]$ ls sys/class/pci_bus
0000:00 0000:01 0000:02
I have three busses in my system. It is Intel i875P.
[jonsmirl@smirl /]$ ls sys/class/pci_bus/0000:00
bridge cpuaffinity
Normal pci_bus entry
[jonsmirl@smirl /]$ ls sys/class/pci_bus/0000:00/bridge -l
lrwxrwxrwx 1 root root 0 Sep 4 13:10
sys/class/pci_bus/0000:00/bridge -> ../../../devices/pci0000:00
bridge for bus 0 is pci0000:00
[jonsmirl@smirl /]$ ls sys/class/pci_bus/0000:01/bridge -l
lrwxrwxrwx 1 root root 0 Sep 4 13:10
sys/class/pci_bus/0000:01/bridge ->
../../../devices/pci0000:00/0000:00:01.0
bridge for bus 0 is pci0000:00/0000:00:01.0
[jonsmirl@smirl /]$ ls sys/class/pci_bus/0000:02/bridge -l
lrwxrwxrwx 1 root root 0 Sep 4 13:10
sys/class/pci_bus/0000:02/bridge ->
../../../devices/pci0000:00/0000:00:1e.0
bridge for bus 2 is pci0000:00/0000:00:1e.0
[jonsmirl@smirl /]$ ls sys/class/pci_bus/0000:00/bridge
0000:00:00.0 0000:00:1d.0 0000:00:1d.2 0000:00:1d.7 0000:00:1f.0
0000:00:1f.2 0000:00:1f.5 power
0000:00:01.0 0000:00:1d.1 0000:00:1d.3 0000:00:1e.0 0000:00:1f.1
0000:00:1f.3 detach_state
But bridge 0 is not linked to a bridge node. It is linked to the host
device node instead. This is not symetrical with bus 1 and 2.
[jonsmirl@smirl /]$ ls sys/class/pci_bus/0000:01/bridge
0000:01:00.0 class detach_state irq resource subsystem_vendor
0000:01:00.1 config device power subsystem_device vendor
This is what a normal bridge node looks like
[jonsmirl@smirl /]$ cat sys/class/pci_bus/0000:01/bridge/class
0x060400
Bridge is a PCI bridge
[jonsmirl@smirl /]$ ls sys/class/pci_bus/0000:00/bridge/0000:00:00.0
class config detach_state device irq power resource
subsystem_device subsystem_vendor vendor
This is the real bridge node for bus 0.
[jonsmirl@smirl /]$ cat sys/class/pci_bus/0000:00/bridge/0000:00:00.0/class
0x060000
Class is Host bridge. Host bridge has two nodes in sysfs, a device
node, pci0000:00, and a pci_device node, 0000:00:00.0.
[jonsmirl@smirl /]$ ls sys/devices
pci0000:00 platform system
This shows the top level Host bridge.
Starting from here, how I am supposed to figure out that 0000:00:00.0
is the PCI device for controlling this bridge?
--
Jon Smirl
jonsmirl@gmail.com
reply other threads:[~2004-09-04 23:39 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9e4733910409041639457fd46b@mail.gmail.com \
--to=jonsmirl@gmail.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.