C2H*_*5OH 19 linux bios pci pci-e
我正在尝试以编程方式找出特定PCIe设备连接的物理插槽.前提是我有卡的PCI-ID肯定会占用一个插槽,解决方案是找出哪一个.
请注意,我只对使用PCI Express总线感兴趣,尽管我认为设备识别/枚举过程与旧PCI相同.
该SMBIOS包含可用的主板插槽信息.可以从linux命令行检查这些信息:
$ sudo dmidecode -t slot
# dmidecode 2.11
SMBIOS 2.7 present.
Handle 0x003A, DMI type 9, 17 bytes
System Slot Information
Designation: PCIEX16_1
Type: x16 PCI Express x16
Current Usage: In Use
Length: Short
ID: 1
Characteristics:
3.3 V is provided
Opening is shared
PME signal is supported
Bus Address: 0000:03:02.0
Handle 0x003B, DMI type 9, 17 bytes
System Slot Information
Designation: PCIEX16_2
Type: x8 PCI Express x8
Current Usage: In Use
Length: Short
ID: 2
Characteristics:
3.3 V is provided
Opening is shared
PME signal is supported
Bus Address: 0000:04:02.2
Handle 0x003C, DMI type 9, 17 bytes
System Slot Information
Designation: PCIEX16_3
Type: x16 PCI Express x16
Current Usage: In Use
Length: Short
ID: 3
Characteristics:
3.3 V is provided
Opening is shared
PME signal is supported
Bus Address: 0000:05:03.0
Run Code Online (Sandbox Code Playgroud)
然而,我无法找到在PCI总线(的任何装置lspci
,其具有的PCI ID) 0000:03:02.0
,0000:04:02.2
或0000:05:03.0
.我通过人工检查了解的内容如下:
0000:03:00.0
在第一个插槽中.PCI桥似乎是0000:00:02.0
0000:04:00.0
在第二个插槽中.PCI桥似乎是0000:00:02.2
0000:05:00.0
在第三个插槽中.PCI桥似乎是0000:00:03.0
所以这里出现了一种模式.从SMBIOS结构中,总线编号是插入的卡的总线编号,但设备/功能编号与相应的PCI桥相同.
这种模式在我的主板上是巧合还是有理由背后?它是华硕主板,带有AMI BIOS.我已经读过一些BIOS没有提供有关其插槽的准确信息,所以我想知道我可以实现多少通用性.
任何提示或指针参考文档也非常感谢.
您可能会发现该lspci
命令很有帮助。这是一个示例输出:
# lspci -v -t
-[0000:00]-+-00.0 Intel Corporation 5500 I/O Hub to ESI Port
+-01.0-[01]--+-00.0 Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
| \-00.1 Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
+-03.0-[02]--+-00.0 Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
| \-00.1 Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
+-07.0-[04]----00.0 LSI Logic / Symbios Logic MegaRAID SAS 2108 [Liberator]
+-09.0-[05]----00.0 LSI Logic / Symbios Logic MegaRAID SAS 2108 [Liberator]
+-14.0 Intel Corporation 7500/5520/5500/X58 I/O Hub System Management Registers
+-14.1 Intel Corporation 7500/5520/5500/X58 I/O Hub GPIO and Scratch Pad Registers
+-14.2 Intel Corporation 7500/5520/5500/X58 I/O Hub Control Status and RAS Registers
+-1a.0 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4
+-1a.1 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5
+-1a.7 Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2
+-1c.0-[03]----00.0 LSI Logic / Symbios Logic MegaRAID SAS 2108 [Liberator]
+-1d.0 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1
+-1d.1 Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2
+-1d.7 Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1
+-1e.0-[06]----03.0 Matrox Electronics Systems Ltd. MGA G200eW WPCM450
+-1f.0 Intel Corporation 82801IB (ICH9) LPC Interface Controller
\-1f.2 Intel Corporation 82801IB (ICH9) 2 port SATA Controller [IDE mode]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2381 次 |
最近记录: |