[LUG.ro] No suspende correctamente una netbook CX 30601 en Ubuntu 12.04 [SOLUCIONADO]

Martín Carr tincarr en gmx.com
Jue Oct 18 13:03:50 ART 2012


El 18/10/12 12:11, Pablo Abrudsky escribió:
> Parece ser un problema comun, algunos pudieron resolverlo:
>
> [0][http://askubuntu.com/questions/144932/why-does-my-laptop-resume-immediately-after-suspend]
> [1][http://ubuntuforums.org/showthread.php?t=1444822]

Eso! no había podido encontrar cómo buscar bien el problema, 
"immediately" was the word :)

En las respuestas hay dos tipos de soluciones. En una, se trata de ver 
quién es capaz de despertar la computadora, y para eso se usa:

cat /proc/acpi/wakeup

En mi compu aparecen cosas como esta:
PCI0	  S5	*disabled  no-bus:pci0000:00
USB0	  S3	*enabled   pci:0000:00:13.0
USB1	  S3	*enabled   pci:0000:00:13.1

Una de las soluciones era deshabilitar esos USB* que pueden despertarla, 
haciendo
echo USB0 | sudo tee /proc/acpi/wakeup
echo USB1 | sudo tee /proc/acpi/wakeup

Pero en el caso de la netbook en cuestión solo estaba enabled SLPB 
(sleep button debe ser)


La segunda opción tenía que ver con el USB 3 (módulo xhci), el USB 2 
(que sería ehci_hcd) pero viene metido en el kernel, y no como módulo.

El bichito no tiene USB3, así que salteé la parte de sacar el módulo ese 
o desbindear eso, como se propone al final del thread[0]. Entonces la 
solución es:

[Crear un archivo /etc/pm/sleep.d/20_custom-ehci_hcd]

sudo gedit /etc/pm/sleep.d/20_custom-ehci_hcd

En el editor que se abre pegar lo siguiente, guardar y cerrar:

#!/bin/sh
# File: "/etc/pm/sleep.d/20_custom-ehci_hcd".
TMPLIST=/tmp/ehci-dev-list

case "${1}" in
         hibernate|suspend)
     echo -n '' > $TMPLIST
           for i in `ls /sys/bus/pci/drivers/ehci_hcd/ | egrep 
'[0-9a-z]+\:[0-9a-z]+\:.*$'`; do
               # Unbind ehci_hcd for first device XXXX:XX:XX.X:
                echo -n "$i" | tee /sys/bus/pci/drivers/ehci_hcd/unbind
            echo "$i" >> $TMPLIST
           done
         ;;
         resume|thaw)
     for i in `cat $TMPLIST`; do
               # Bind ehci_hcd for first device XXXX:XX:XX.X:
               echo -n "$i" | tee /sys/bus/pci/drivers/ehci_hcd/bind
     done
     rm $TMPLIST
         ;;
esac

darle permisos de ejecución a ese script:
sudo chmod +x /etc/pm/sleep.d/20_custom-ehci_hcd


Listo, al suspender suspende, y se despierta al levantar la tapa (el 
botón de apagar la apaga).


Saludos y gracias!

[0] 
http://ubuntuforums.org/showthread.php?s=70986fc106d1c6ce92736e92eca5fb1f&t=1444822&page=2

-- 
Software Libre = Software libertario
http://libroblanco.org.ar


Más información sobre la lista de distribución Lugro