Si un controlador no puede reanudar un dispositivo correctamente, creo que la única solución que encontrará será depurar e identificar dónde está el problema para que pueda decidir qué hacer desde allí. Por ejemplo, no veo cómo puede actualizar si la tarjeta de video no se reinicia.
ACPI maneja suspender / reanudar y mostrar. Por ejemplo, el siguiente problema de ACPI que ocurre en algunos ThinkPads puede abordar los síntomas que está describiendo:
Al reanudar desde suspender a ram, las pantallas de la consola de texto pueden mostrar basura en lugar de texto real. De lo contrario, la máquina aún responde y X se muestra bien. Si todo esto es cierto, entonces agregar la opción de kernel acpi_sleep = s3_bios, s3_mode en su menu.lst o
lilo.conf puede resolver el problema.
Problemas con ACPI suspend-to-ram - ThinkWiki
Si está utilizando el thinkpad_acpi
módulo al que se refiere la cita anterior, eso podría ser todo lo que necesita. Para obtener más información sobre esta solución, consulte Suspend2Ram - Documentación de Powersave
Primero, hay varios parámetros del núcleo que se pueden probar. Simplemente agréguelos a su línea "kernel" en /boot/grub/menu.lst . Se puede encontrar más información sobre estos en
/usr/src/linux/Documentation/power/video.txt .
De video.txt:
Durante la reanudación de S3, el hardware debe reinicializarse. Para la mayoría de los dispositivos, esto es fácil, y el controlador del núcleo sabe cómo hacerlo. Lamentablemente, hay una excepción: la tarjeta de video. Por lo general, estos son inicializados por el BIOS, y el kernel no tiene suficiente información para iniciar la tarjeta de video. (Kernel generalmente ni siquiera contiene un controlador de tarjeta de video; vesafb y vgacon se usan ampliamente).
Más información en video.txt Consulte la tabla aquí para ver si hay un conocido acpi_sleep=<hack>
para su modelo de tarjeta de video.
Debian Suspend y KMS
La wiki de Debian sugiere desactivar KMS para un problema de "video corrupto en el currículum". 1
Un problema muy común que se encuentra después de que la computadora se reanuda es el video dañado (o la pantalla en negro, o sin luz de fondo de la pantalla LCD). El primer paso es verificar si el sistema aún se está ejecutando, lo que se puede hacer simplemente presionando el botón Capslock y verificar si el LED Capslock está cambiando en consecuencia. Si el sistema aún se está ejecutando, en la mayoría de los casos necesitamos agregar una peculiaridad de video para su tarjeta de video.
Debian ahora tiene la configuración de modo de kernel (KMS) habilitada por defecto para la mayoría de las tarjetas de video Intel, nVidia y ATI. Pero la peculiaridad de video de pm-utils [no] todavía admite KMS. Entonces, en la mayoría de los casos, primero debe intentar deshabilitar KMS. Los pasos detallados para su tarjeta de video específica se pueden encontrar en la página KernelModesetting.
Después de deshabilitar KMS, si el video después de la reanudación aún se corrompe, puede intentar suspender el sistema utilizando algunas peculiaridades de video. Lea la página de manual del programa pm-suspend para obtener una explicación muy detallada de todas las peculiaridades disponibles, y pruebe las combinaciones de ellas desde la línea de comandos. Si encuentra con éxito una combinación de peculiaridades que funcione para su sistema, puede agregarlas a / usr / lib / pm-utils / video-quirks para hacerlas permanentes. Al mismo tiempo, ayude a presentar un error en el paquete pm-utils con un parche sobre sus cambios para que pueda beneficiar a la masa.
Un problema común que se encuentra en la actualización de sistemas de versiones anteriores de Debian es la habilitación de quirk-s3-bios congela el sistema durante la suspensión. Si su sistema se congela durante la suspensión, revise cuidadosamente pm-suspend.log después de habilitar la depuración y asegúrese de que no se use quirk-s3-bios.
Si cree que esto está relacionado con su problema, puede intentar deshabilitar KMS como se sugiere. Para obtener instrucciones para su tarjeta, consulte KernelModesetting - Debian Wiki
Suspender depuración
El registro de los procesos de suspensión y reanudación se encuentra en el archivo
/var/log/pm-suspend.log. Contiene información moderadamente detallada por defecto. Se puede habilitar más información para la depuración insertando la línea de exportación PM_DEBUG = true al comienzo del archivo
/ usr / lib / pm-utils / pm-functions .
Para obtener más información, consulte la información sobre las instalaciones de prueba de Kernel mencionadas en Suspend - Debian Wiki . Esto puede ayudarlo a depurar y aislar el problema.
Algunos ejemplos y más información de depuración en profundidad que puede ayudarlo a "controladores que no pueden suspender o reanudar sus dispositivos" está disponible en https://www.kernel.org/doc/Documentation/power/basic-pm-debugging.txt, encontrará
Algunas ideas más para depurar pm-utils
en pm-utils - ArchWiki y /unix//a/29090/87728
Aquí hay una lista completa de los parámetros del kernel muchos de los cuales son relevantes para acpi y suspend.
Buena suerte.