比如下面这个输出,Memory at 有 2 行,我的 cpu 是 x86 32 位的,这里为什么显示 64 位?另外 size=4k ,size=16k ,这里的 4k 和 16k 是什么的大小?
root@develop:~# lspci -s 05:00.0 -v
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
Subsystem: Realtek Semiconductor Co., Ltd. TP-Link TG-3468 v4.0 Gigabit PCI Express Network Adapter
Flags: bus master, fast devsel, latency 0, IRQ 27, IOMMU group 15
I/O ports at e000 [size=256]
Memory at fcc04000 (64-bit, non-prefetchable) [size=4K]
Memory at fcc00000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [40] Power Management version 3
Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [70] Express Endpoint, MSI 01
Capabilities: [b0] MSI-X: Enable+ Count=4 Masked-
Capabilities: [d0] Vital Product Data
Capabilities: [100] Advanced Error Reporting
Capabilities: [140] Virtual Channel
Capabilities: [160] Device Serial Number 01-00-00-00-68-4c-e0-00
Capabilities: [170] Latency Tolerance Reporting
Capabilities: [178] L1 PM Substates
Kernel driver in use: r8169
Kernel modules: r8169
root@develop:~#
root@develop:~# lspci -s 05:00.0 -x
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
00: ec 10 61 81 07 04 10 00 15 00 00 02 10 00 00 00
10: 01 e0 00 00 00 00 00 00 04 40 c0 fc 00 00 00 00
20: 04 00 c0 fc 00 00 00 00 00 00 00 00 ec 10 68 81
30: 00 00 00 00 40 00 00 00 00 00 00 00 ff 01 00 00
root@develop:~#
使用 lspci -x 输出了这个设备的 configuration space ,从 configuration space 的内容解析出来的 BAR 地址和-x 输出的 Memory at 的地址对不上又是怎么回事?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.