У меня на ноутбуке Xioami pro Ubuntu 20.04 (та же проблема, что и 18.04).
После того, как ноутбук переходит в режим сна / спящий режим, из динамиков не выходит звук . Системные настройки (настройки> звуки) определяют, что музыка воспроизводится и наушники работают нормально после сна. Проблема связана только с динамиками, встроенными в ноутбук. В качестве быстрого решения, мне нужно перезагрузить компьютер, чтобы иметь динамики работать снова.
Я безуспешно пробовал приведенные ниже варианты:
У меня есть история успеха (спасибо Night Str)!
То же оборудование.Такая же ситуация после спящего режима. Прежде всего, получите привилегии суперпользователя:
$ sudo su -
Затем откройте свои устройства:
# lspci -vvv
...
00:1f.3 Audio device: Intel Corporation Device 02c8 (prog-if 80)
Subsystem: Xiaomi Device 1963
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 32, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 148
Region 0: Memory at c4214000 (64-bit, non-prefetchable) [size=16K]
Region 4: Memory at c4000000 (64-bit, non-prefetchable) [size=1M]
Capabilities: <access denied>
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel, snd_sof_pci
...
Итак, идентификатор моего устройства 00:1f.3. Проверим:
# ls /sys/bus/pci/devices/ | grep 00:1f.3
0000:00:1f.3
Вот в чем хитрость:
# echo 1 > /sys/bus/pci/devices/0000:00:1f.3/remove
# echo 1 > /sys/bus/pci/rescan
Первая команда отключает драйвер от устройства и отсоединяет устройство от дерева. Драйвер (snd_hda_intel) не выгружается, просто отключается. Вторая команда повторно сканирует устройства PCI.
В результате снова появляется звук.
Ниже приведена информация, касающаяся аппаратного обеспечения. Команда
: aplay -l
**** Список воспроизведения аппаратных устройств **** карта 0: PCH [HDA Intel PCH], устройство 0: ALC256 Analog [ALC256 Analog] Подустройства: 1/1 Подустройство № 0: Подустройство № 0 карта 0: PCH [HDA Intel PCH], устройство 3: HDMI 0 [HDMI 0] Подустройства: 1/1 Подустройство № 0: Подустройство № 0 карта 0: PCH [HDA Intel PCH], устройство 7: HDMI 1 [HDMI 1] Подустройства: 1/1 Подустройство № 0: Подустройство № 0 карта 0: PCH [HDA Intel PCH], устройство 8: HDMI 2 [HDMI 2] Подустройства: 1/1 Подустройство № 0: Подустройство № 0 карта 0: PCH [HDA Intel PCH], устройство 9: HDMI 3 [HDMI 3] Подустройства: 1/1 Подустройство № 0: Подустройство № 0 карта 0: PCH [HDA Intel PCH], устройство 10: HDMI 4 [HDMI 4] Подустройства: 1/1 Подустройство № 0: подраздел № 0
команда: cat / proc / asound / cards
0 [PCH]: HDA-Intel - HDA Intel PCH HDA Intel PCH в 0xb4214000 irq 147
команда: lspci -nnk | grep -A2 Audio 00: 1f.3 Аудиоустройство [0403]: Intel Corporation Device [8086: 02c8] Подсистема: устройство Xiaomi [1d72: 1905] Используемый драйвер ядра: snd_hda_intel
команда: pacmd list-cards
Доступно 1 карта (и). индекс: 0 название: Водитель: Модуль владельца: 7 свойства: alsa.card = "0" alsa.card_name = "HDA Intel PCH" alsa.long_card_name = "HDA Intel PCH в 0xb4214000 irq 147" alsa.driver_name = "snd_hda_intel" device.bus_path = "pci-0000: 00: 1f.3" sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0" device.bus = "pci" device.vendor.id = "8086" device.vendor.name = "Корпорация Intel" device.product.id = "02c8" device.form_factor = "internal" device.string = "0" device.description = "Встроенный звук" module-udev-detect.discovered = "1" device.icon_name = "audio-card-pci"
Спасибо,
Виктор
у меня такая же проблема. И я нахожу решение, но оно не работает в kde, не знаю почему.
Решение:
echo 1 > /sys/bus/pci/devices/<device_address>/remove
sleep 1
echo 1 > /sys/bus/pci/rescan
Для поиска адреса устройства: lspci | grep Audio
Обновление:
Решение для применения команд после пробуждения:
Вы можете создать новый файл: /lib/systemd/system-sleep/99_restart_sound
и вставьте следующий исходный код:
#!/bin/sh
case "$1" in
post)
DEVICE_ID=`lspci -D |grep Audio|awk '{print $1}'`
echo 1 > /sys/bus/pci/devices/${DEVICE_ID}/remove
sleep 1
echo 1 > /sys/bus/pci/rescan
esac
Файл должен быть исполняемым:
sudo chmod +x /lib/systemd/system-sleep/99_restart_sound