lspci -n
00:00.0 0600: 8086:29f0 (rev 01)
00:01.0 0604: 8086:29f1 (rev 01)
00:1a.0 0c03: 8086:2937 (rev 02)
00:1a.1 0c03: 8086:2938 (rev 02)
00:1a.2 0c03: 8086:2939 (rev 02)
00:1a.7 0c03: 8086:293c (rev 02)
00:1c.0 0604: 8086:2948 (rev 02)
00:1c.1 0604: 8086:294a (rev 02)
00:1c.2 0604: 8086:2940 (rev 02)
09:00.0 0c04: 1077:2432 (rev 03)
可以看到目前 Qlogic 2432 的 PCI 名稱以及裝置名稱為 09:00.0 0c04: 1077:2432 (rev 03) 先來看看這些數字所代表的意義.前面的 3 個數字 "09:00.0" 是各代表什麼意思.
在 PCI 的裝置使用三個編號用來當作識別值,個別為 1. "匯流排(bus number)", 2. "裝置(device number) 以及 3. "功能(function number)".
所以剛剛的 09:00.0 就是 bus number = 09 ,device number = 00 function = 0 .
這3個編號會組合成一個 16-bits 的識別碼,
匯流排(bus number) 8bits 2^8 至多可連接 256 個匯流排(0 to ff),
裝置(device number) 5bits 2^5 至多可接 32 種裝置(0 to 1f) 以及
功能(function number) 3bits 2^3 至多每種裝置可有 8 項功能(0 to 7).
關於更多 #lspci 的資訊請參考 [http://benjr.tw/node/543
不過在 Linux 使用 Class ID + Vendor ID + Device ID 來代表裝置,如剛剛的 0c04: 1077:2432 所代表裝置名稱為 (Class ID = 0c04 ,Vendor ID = 1077,Device ID =2432) .
0c04 :
class 0c04 表示是 "Fiber Channel controller"
1077 :
vendor ID 1077 製造廠商 "Qlogic Corp"
2432 :
device ID 2432 產品名稱 "ISP2432-based 4Gb Fiber Channel to PCI Express HBA"
你問我怎麼知道 ID 與名稱是怎麼對應的很簡單直接參考 /usr/share/hwdata/pci.ids 檔案即可.