我在配有内置电池的联想 Yoga 300 上安装了 Ubuntu 14.04。一切正常,但系统未检测到电池。输入acpi -V
终端时显示:
Adapter 0: on-line
Cooling 0: soc_dts1 no state information available
Cooling 1: soc_dts0 no state information available
Cooling 2: B0DB no state information available
Cooling 3: INT3400 Thermal no state information available
Cooling 4: intel_powerclamp no state information available
Cooling 5: Processor 0 of 10
Cooling 6: Processor 0 of 10
Cooling 7: Processor 0 of 10
Cooling 8: Processor 0 of 10
当我拔下适配器时它确实会检测。
谢谢你的帮助。
答案1
我在 Xubuntu 16.10 中遇到了同样的问题(我也尝试了 Xubuntu 16.04,确认那里也存在问题)。dmesg 中有可疑消息:
[ 2.575759] ACPI Exception: AE_AML_PACKAGE_LIMIT, Index (0x000000010) is beyond end of object (length 0xD) (20160422/exoparg2-427)
[ 2.575775] ACPI Error: Method parse/execution failed [\_SB.PCI0.LPCB.H_EC.BAT1._BIX] (Node f6091408), AE_AML_PACKAGE_LIMIT (20160422/psparse-542)
[ 2.575794] ACPI Exception: AE_AML_PACKAGE_LIMIT, Evaluating _BIX (20160422/battery-450)
我已经在 Google 上对此进行了广泛的搜索,我认为可能需要修复 acpi 驱动程序,例如:
http://www.spinics.net/lists/linux-acpi/msg69261.html
更新我已经确认,如果您应用类似于上面链接中的补丁并构建自定义内核,则可以获得电池信息!就我而言,我稍微修改了补丁,以确保使用“_BIF”方法而不是“_BIX”方法。希望这个补丁最终能成为官方内核的一部分。
答案2
补丁(patchwork.kernel.org/patch/9337413) 已包含在较新的内核中。问题已解决 ;-)(更多信息:问题 - 是 - 固件有缺陷 - BIX 方法失败)
使用内核 4.10.rc5 再次检测到电池
测试平台:联想 Ideapad 300s-11IBR(带有 Manjaro Linux,内核:4.10.0-1-MANJARO)