修改内存配置寄存器

问题描述

我的Intel(R) Core(TM) i7-4720HQ cpu @ 2.60GHz笔记本电脑上有一个HaswellAsus)处理器。芯片组数据表包括Datasheet,volume 1 (M- and H-processor lines)Datasheet,volume 2 (M- and H-processor lines)。我想使用DRAM 掉电模式。它们在第1卷第64页中进行了描述:

enter image description here

似乎有一个PM_PDWN_config_0_0_0_MCHBAR寄存器来控制此电源管理机制。在同一页的底部,提到仅在BIOS未锁定IMC寄存器的情况下才能更改它们:

enter image description here

有关PM_PDWN寄存器的说明,请参见第2卷第247页,如下所示:

enter image description here

我使用ioread32()内核模块中读取了该寄存器的值,它的值为0x6080。但是我无法修改任何位(使用iowrite32())。从上图中可以看出,有意义位(即位0-15)的访问方法RW_L。该定义在第2卷的第18页的表2

enter image description here

这可能意味着寄存器已被BIOS锁定。我还更新了BIOS固件,似乎与这些位无关。

自刷新配置寄存器(第2卷第252 页)也是如此:

enter image description here

访问方法也是RW_L,并且检索到的值0x10200无法修改

这是否意味着我无法使用RW_L标志更改任何位?

换句话说,我可以执行任何手动 DRAM电源管理吗? 如果原因是BIOS锁定,我可以编写UEFI应用程序并解锁寄存器吗? BIOS在这里似乎太强壮了。我测试的寄存器的RW_L位中的没有可以修改

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)