我注意到来自dmesg输出的一个错误,即ubuntu无法启用ASPM:
[ 0.192722] pci0000:00: ACPI _OSC support notification failed, disabling PCIe ASPM
[ 0.192728] pci0000:00: Unable to request _OSC control (_OSC support mask: 0x08)虽然我知道这不是一个错误,但我想问一下是否有一种方法来纠正它并启用ASPM,原因是它应该提高电池寿命(powertop显示PCIe总是100%打开)。
编辑:我正在使用最新的bios版本(1401)运行在ASUS eee pc 1015 pc上。
发布于 2012-11-29 22:48:23
我把它粘贴在我的博客中(加上一些修改),因为它为这个问题添加了一些上下文。
基于Power的串行连接设备可以由Active State Power Management (ASPM)管理,以延长笔记本和上网本等移动设备上的电池寿命。ASPM是一种电源管理协议,它允许操作系统的电源管理将链路物理层置于低功耗模式,并能够指示链路上的其他设备也进入低功耗模式。
好处是,我们使用ASPM节省电力,然而,它将引入一些延迟,因为总线需要时间唤醒时,在低功耗状态。PCIe规范(Version2.0)定义了两种电源模式:
不幸的是,您的固件似乎向内核表明它确实不支持硬件上的ASPM。内核使用ACPI _OSC控件查询固件,以查看是否支持ASPM,并通知它不支持,因此禁用了ASPM。禁用此功能的原因是特定于供应商的。这可能是因为在Windows上,如果启用了ASPM,某些东西就会挂起或不可靠,所以固件会完全禁用它。
Linux还提供了一些ASPM驱动程序内核参数,以允许某种程度的可调整性。可以使用以下内核参数:
禁用ASPM:
pcie_aspm=off使用默认固件配置:
pcie_aspm=default禁用ASPM和时钟电源管理:
pcie_aspm=performance最高省电模式,启用ASPM和时钟电源管理:
pcie_aspm=powersave强制执行ASPM:
pcie_aspm=force您可能希望修改最后一个设置,看看是否可以覆盖默认的ASPM设置。
https://askubuntu.com/questions/202308
复制相似问题