Linux下安装tpacpi-bat 控制thinkpad 充电阈值

本文详细介绍了如何使用 tpacpi-bat 工具来调整 CentOS 6 上 ThinkPad T430 的电池充电阈值,从而延长电池续航时间。包括安装依赖工具、ACPI Call 编程和配置 tpacpi-bat 脚本等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介: thinkpad 使用tp_smapi (http://www.thinkwiki.org/wiki/Tp_smapi) 设置电池充电阈值, 此外tp_smapi 还附带了HDAPS(类似win下的硬盘保护).

但是 2013新出的几款Ivy Bridge 平台的thinkpad(X230,T430,T530), 已经无法使用tp_smapi了. 

tp_smapi 项目也有两年多没有更新 : https://github.com/evgeni/tp_smapi


虽然tp_smapi已经无法支持T430, 但是我们还有tpacpi-bat可以使用. 

安装过程:


(1) sudo yum install pmtools iasl

安装acpidump , iasl工具


(2) sudo acpidump -b -t DSDT -o /tmp/dsdt.aml

可能会返回Wrong checksum for FADT!错误, 忽略.

iasl -d /tmp/dsdt.aml

cat /tmp/dsdt.dsl | grep \\\\_SB\.PCI.*HKEY -o | uniq

记住输出的  T430上输出是"\_SB.PCI0.LPC.EC.HKEY"


(3) 下载acpi_call 代码并编译: https://github.com/mkottman/acpi_call
sudo make
sudo make install
sudo depmod -a
sudo modprobe acpi_call

载入acpi_call.ko之后,会多出一个 /proc/acpi/call "文件", 通过写入参数到这个文件, 实现与acpi_call的交互.   tpacpi-bat就是通过这种方式控制电池阈值. 当然也可以通过acpi_call控制独立显卡的关闭(双显卡的机型).


(4) 下载tpacpi_call解压: https://github.com/teleshoes/tpacpi-bat
需要编辑一下 vim  tpacpi-bat

修改 "my $aslBases = ..." 改为自己的, 例如:

my $aslBases = {
  'default'              => '\_SB.PCI0.LPC.EC.HKEY',
  'ThinkPad W520'        => '\_SB.PCI0.LPC.EC.HKEY',
  'ThinkPad T430'        => '\_SB.PCI0.LPC.EC.HKEY',
  'ThinkPad T430u'       => '\_SB.PCI0.LPCB.EC.HKEY',
};
然后把tpacpi-bat 移动到/usr/local/bin .



(5) 添加如下到开机脚本中, 比如/etc/rc.local

 
 
/usr/local/bin/tpacpi-bat -s ST 0 70
/usr/local/bin/tpacpi-bat -s SP 0 90

开机会通过tpacpi_call 向/proc/acpi/call 写入参数, 实现充电阈值的控制.






参考:

http://ubuntuforums.org/showthread.php?t=2148044
http://smitran.com/centos-6-thinkpad-t530-prolong-battery-life-with-tpacpi-bat/

http://blog.thekondor.net/2012/09/make-new-thinkpads-charge-thresholds.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值