A algunos les ha pasado que la batería de la Toshiba Satellite L655 no es reconocida en ubuntu; sin embargo, está presente. Al escribir el siguiente comando arroja como resultado que la batería se encuentra ausente:
dmesg | grep
Para solucionarlo trabajemos como root y ejecutamos cada uno de los siguientes comandos:
# cat /sys/firmware/acpi/tables/DSDT > DSDT.dat
# iasl -d DSDT.dat
# nano DSDT.dsl
E este editor buscamos con control+W la siguiente linea
OperationRegion (EMEM, SystemMemory, 0xFF808001, 0xFF)
y lo remplazamos con:
OperationRegion (EMEM, EmbeddedControl, 0×00, 0xFF)
Además vamos a las lineas 2656 y 2663 donde encontraremos lo siguiente
0×00000000, // Granularity
0×00000000, // Range Minimum
0xFEAFFFFF, // Range Maximum
0×00000000, // Translation Offset
0xFEB00000, // Length
El cual lo cambiamos por:
0×00000000, // Granularity
0xFED40000, // Range Minimum
0xFED44FFF, // Range Maximum
0×00000000, // Translation Offset
0×00005000, // Length
y procedemos a compilar:
# iasl -tc DSDT.dsl
- También hay que tener instalado algunos paquetes y seguir con los pasos.
# apt-get install fakeroot kernel-wedge build-essential makedumpfile kernel-package libncurses5 libncurses5-dev
# apt-get build-dep --no-install-recommends linux-image-$(uname -r)
El uname -r te devuelve la versión del kernel de linux que tengas, por lo que sería recomendable que tengas este dato. Simplemente aplicas en otra terminal uname -r y te devolverá la versión. Que servirá para remplazar las x.x.xx de abajo:
# mkdir /root/source
# cd /root/source
# apt-get source linux-image-$(uname -r)
# cd linux-x.x.xx
# cp -vi /boot/config-`uname -r` .config
# cp DSDT.hex /root/source/linux-2.6.38/include
# nano /root/source/linux-x.x.xx/.config
En este editor hacemos los siguientes cambios:
CONFIG_STANDALONE=n
CONFIG_ACPI_CUSTOM_DSDT=y
CONFIG_ACPI_CUSTOM_DSDT_FILE="DSDT.hex"
Grabamos y salimos
- Ahora estamos en esta ruta /root/source/linux-x.x.xx, y ubicados aquí hacemos:
# make menuconfig
# export CONCURRENCY_LEVEL=5
Ponemos 5 porque en mi caso tengo 4 procesadores y la lógica es sumarle 1. Si quieres saber cuantos procesadores tienes has los siguiente en la terminal "cat /proc/cpuinfo | grep -i processor".
# make-kpkg clean
# fakeroot make-kpkg --initrd --append-to-version=-tuxsage kernel-image kernel-headers
El nombre de tuxsage se puede cambiar por el que quieras, pero lo dejo a criterio.
- Bueno, ahora ya tienes archivos comprimidos que puedes guardarlo y usarlo cuando quieras (por ejemplo, cuando formateas la PC)
# cd /root/source
# dpkg -i linux-i <- AQUI SOLO DALE UN TAB PARA QUE AUTOCOMPLETE Y ENTER
# dpkg -i linux-h <- AQUI TAMBIEN DALE EL TAB PARA QUE AUTOCOMPLETE Y ENTER
# update-initramfs -c -k x.x.x+tuxsage <-ESTAS X son los mismos numeros que los paquetes anteriores que aparecieron con el autocompletado.
# update-grub
Ahora reiniciamos y listo... This is All!!!