我有一台 HP Probook 6470b 笔记本电脑,配备 HP MBO 179C 和英特尔移动 HM76 芯片组。我想在不打开笔记本电脑的情况下找出我的 DDR3 内存模块的 CAS 延迟。
有人告诉我 SMBus 应显示为设备 00:1f.3,但它丢失了。
00:00.0 Host bridge: Intel Corporation 3rd Gen Core processor DRAM Controller (rev 09)
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
00:16.0 Communication controller: Intel Corporation 7 Series/C216 Chipset Family MEI Controller #1 (rev 04)
00:19.0 Ethernet controller: Intel Corporation 82579V Gigabit Network Connection (rev 04)
00:1a.0 USB controller: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #2 (rev 04)
00:1b.0 Audio device: Intel Corporation 7 Series/C216 Chipset Family High Definition Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 7 Series/C216 Chipset Family PCI Express Root Port 1 (rev c4)
00:1c.1 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 2 (rev c4)
00:1c.2 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 3 (rev c4)
00:1c.3 PCI bridge: Intel Corporation 7 Series/C216 Chipset Family PCI Express Root Port 4 (rev c4)
00:1d.0 USB controller: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation HM76 Express Chipset LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 7 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
23:00.0 FireWire (IEEE 1394): JMicron Technology Corp. IEEE 1394 Host Controller (rev 30)
23:00.1 System peripheral: JMicron Technology Corp. SD/MMC Host Controller (rev 30)
23:00.2 SD Host controller: JMicron Technology Corp. Standard SD Host Controller (rev 30)
24:00.0 Network controller: Broadcom Limited BCM43228 802.11a/b/g/n
这意味着它已被 BIOS 隐藏,并且可以在较旧的英特尔芯片组(最高可达 ICH6)上取消隐藏 SMBus,但对于最新的芯片组则无法取消隐藏。
从Intel 5系列芯片组开始,不再使用南桥I/O控制器集线器(ICH),而是使用PCH(平台控制器集线器)。
利用具有集成显卡和 PCI Express 端口的 Intel Nehalem CPU,曾经安装在北桥中的 Intel 管理引擎 (ME) 和集成显卡显示控制器被移至平台控制器中枢 (PCH) 中。 I/O 控制器集线器 (ICH) 功能集成到 PCH 中,无需单独的北桥和南桥。
在此i2c-i801 驱动程序文档页面我读到这可能是 SMBus 被故意隐藏,因为它将由 ACPI 驱动。有多种方法可以取消隐藏 ICH SMBus,但我没有找到如何使用 PCH SMBus 来做到这一点。
阅读如何与 EEPROM 通信以获得串行存在检测 (SPD)我发现了有关 i2c-tools 的数据。与从 BIOS 读取内存数据的 dmidecode 不同,i2c-tools 需要内核中的 SMBus 控制器支持、EEPROM 内核驱动程序,并且 SPD EEPROM 连接到 SMBus。
从 i2c-tools 运行 i2cdetect:
modprobe i2c-dev
i2cdetect -l
并得到这个:
i2c-3 i2c i915 gmbus dpc I2C adapter
i2c-1 i2c i915 gmbus vga I2C adapter
i2c-8 i2c DPDDC-D I2C adapter
i2c-6 i2c DPDDC-B I2C adapter
i2c-4 i2c i915 gmbus dpb I2C adapter
i2c-2 i2c i915 gmbus panel I2C adapter
i2c-0 i2c i915 gmbus ssc I2C adapter
i2c-7 i2c DPDDC-C I2C adapter
i2c-5 i2c i915 gmbus dpd I2C adapter
这些都是我的 iGPU 卡上的传感器。未列出 SMBus。
是否可以在这台笔记本电脑上看到 Linux 上的 CAS 延迟?为什么 Windows 上的 CPU-Z 能够看到此信息,而在 Linux 下此 SMBus 是隐藏的?是否可以在 /dev/mem 中读取此信息,如何读取?
答案1
是的,看起来00:1f.3
SMBus 设备被 BIOS 隐藏了。
如果它在 Windows 下使用 CPU-Z 工作,第一步是检查该设备是否显示在 Windows 下的硬件管理器中。如果确实如此,人们需要弄清楚如何启用它,我不知道该怎么做 - 也许是 ACPI 选项。
启用后,您可以在decode-dimms
加载内核模块i2c_dev
和后读取 RAM 时序eeprom
。 RAM 芯片的配置 EEPROM 必须显示在 下/sys/bus/i2c/drivers/eeprom
。至少在我的系统上是这样的。
不,不可能“读入此信息/dev/mem
”。/dev/mem
代表主存储器,我们想要的是 RAM 模块上的特殊 EEPROM,只能通过串行总线访问,中小企业总线。
答案2
尝试一下
dmidecode –type memory
或者
dmidecode -t 17