Пока что подвешивание к барану и пробуждение от него работают. Внешний дисплей моего ноутбука (подключенный через HDMI) тоже работает.
Однако, что не работает, так это звук, который работает до приостановки, конечно. Я использую динамики внешнего монитора и произвел соответствующие настройки в звуковом меню Ubuntu (переключен на «Цифровой стерео (HDMI) выход + Аналоговый стерео вход» на вкладке «Оборудование»).
Что я могу сделать, чтобы это исправить?
Редактировать : когда я запускал ubuntu-bug, он проверял вывод звука с использованием и без использования импульса. Без пульса он работал, однако я все еще слышал шум. С пульсом это был только шум.
Редактировать : теперь отлично работает с natty и oneiric. Обновление до последней версии Ubuntu решает проблему.
Аппаратная неисправность после приостановки звучит для меня как ошибка драйвера. ubuntu-bug -s audio
Тем временем, в качестве обходного пути, вы можете попытаться sudo alsa force-reload
заставить ваши драйверы выгружаться и перезагружаться (хотя в процессе будут убиты все работающие звуковые приложения).
Определите, какой модуль ядра обрабатывает аудио HDMI. В моем блоке XBMC это «snd_hda_codec_nvhdmi», затем выгрузите этот модуль до того, как ноутбук спит с помощью скрипта в /etc/pm/sleep.d. Команда "lsmod | grep hdmi" может дать вам некоторые подсказки. Возможно, вам придется выгрузить более одного модуля, чтобы это работало должным образом (например, «snd»), но если вы сможете найти правильную комбинацию, это будет так же, как вы выключаете и перезагружаете каждый раз, когда вы спите на своем ноутбуке.
Вот как должен выглядеть ваш скрипт:
#!/bin/sh
# Script to disable hdmi audio before suspend and restart after wake.
case "${1}" in
suspend|hibernate)
rmmod snd_hda_codec_nvhdmi
rmmod snd
;;
resume|thaw)
modprobe snd
modprobe snd_hda_codec_nvhdmi
;;
esac