Uso gentoo no meu notebook, e a bateria acaba muito rapidamente, até eu me tocar que a CPU estava sempre no máximo e o backlight do LCD também, levou uns minutos. Isso foi fácil e rápido.
Dei uma olhada no kernel, como estava sem tempo usei o genkernel mesmo:
#genkernel --menuconfig all
Rodei pelos menus ACPIs e APM, compilei tudo de novo; só dar exit até fechar.
Além do módulo especifico para o seu processador, no meu caso p4_clockmod, precisa de mais um, e como apanhei até achar esse tal de cpufreq_userspace.Editei o /etc/modules.autoload.d/kernel-2.6 pra iniciar o carregamento dos módulos do kernel (a não ser que, queira sempre fazer isso a mão).
nano -w /etc/modules.autoload.d/kernel-2.6
lcd
backlight
p4-clockmod
cpufreq_userspace
O último faz alguma coisa importante mas que ainda não tive tempo pra descobrir o que é, se alguém souber me diz.
Agora é instalar o powenowd, o “aplicativo” que faz o trabalho duro.
emerge powernowd
Colocar o powernowd pra iniciar junto com o sistema.
rc-update add powernowd default
Teste se funciona.
modprobe p4-clockmod
modprobe cpufreq_userspace
powernowd
Deve dar um resultado mais ou menos assim depois do último comando.
powernowd: PowerNow Daemon v0.90hun6, (c) 2003-2004 John Clemens
powernowd: Found 1 physical cpu and 1 virtual cpu:
powernowd: cpu0: 200000 kHz - 1600000 kHz`
Se der qualquer coisa que seja paredida com um erro (tu errou né).
Todos esse comandos, que passei, são dados como root.
Escrevi aqui dando a ideia que você pretende deixar a função powernowd ativa direto caso não queira isso, é só não colocar o powernowd para iniciar com o sistema.
rc-update del powernowd default