Уголок новичка
   632

Пропал звук после обновления ядра

Здравствуйте. После установки Manjaro 19.0.2 PulseAudio автоматически выбирал HDMI вместо звуковой карты, но эту проблему я решил (для динамиков). После обновления ядра c Linux 5.4.31-1 до Linux 5.6.2_rt1-1 звук пропал полностью (В этом пункте не уверен, т.к. во время обновления впервые запустил VLC. Возможно, накосячил со звуком в системе плеер). Откат к прошлому ядру не помог. Обращаюсь сюда, так как у меня больше нет никаких идей по устранению проблемы (гуглил, не спасло). Заранее спасибо.

I) По программам:
1.Стоит ALSA и PulseAudio. В alsamixer все устройства включены, звук установлен на максимум, настройки сохранены. Видит звуковую карту, HDMI и pulse (стоит по default'у).Уголок новичка: Пропал звук после обновления ядраУголок новичка: Пропал звук после обновления ядраУголок новичка: Пропал звук после обновления ядраУголок новичка: Пропал звук после обновления ядра
2.Default карта в ALSA настроена с помощью pulseaudio-alsa (т.е. есть файл /etc/asound.conf, где карта по умолчанию — pulse). Файла ~/.asoundrc нет.
/etc/asound.conf
# Use PulseAudio by default
pcm.!default {
type pulse
fallback «sysdefault»
hint {
show on
description «Default ALSA Output (currently PulseAudio Sound Server)»
}
}

ctl.!default {
type pulse
fallback «sysdefault»
}

# vim:set ft=alsaconf:

3.Pulseaudio настроен на нужную (и рабочую) звуковую карту, port, profile и sink в "/etc/pulse/default.pa".
pacmd list | grep active port
active port: <[Out] Speaker>
active port: <[In] Mic>

pacmd stat
Memory blocks currently allocated: 7, size: 85,0 Ки�.
Memory blocks allocated during the whole lifetime: 626757, size: 1,7 ГиБ.
Memory blocks imported from other processes: 0, size: 0 Б.
Memory blocks exported to other processes: 0, size: 0 Б.
Total sample cache size: 11,5 Ки�.
Default sample spec: s16le 2-канальный 4410
Default channel map: front-left,front-right
Default sink name: alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink
Default source name: alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink.monitor
Memory blocks of type POOL: 7 allocated/336693 accumulated.
Memory blocks of type POOL_EXTERNAL: 0 allocated/0 accumulated.
Memory blocks of type APPENDED: 0 allocated/0 accumulated.
Memory blocks of type USER: 0 allocated/0 accumulated.
Memory blocks of type FIXED: 0 allocated/288669 accumulated.
Memory blocks of type IMPORTED: 0 allocated/1395 accumulated.

pacmd dump
### Configuration dump generated at Wed Apr 15 19:25:18 2020

load-module module-device-restore
load-module module-stream-restore restore_device=false
load-module module-card-restore
load-module module-augment-properties
load-module module-switch-on-port-available
load-module module-udev-detect
load-module module-alsa-card device_id=«1» name=«pci-0000_00_03.0» card_name=«alsa_card.pci-0000_00_03.0» namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes avoid_resampling=no card_properties=«module-udev-detect.discovered=1»
load-module module-alsa-card device_id=«0» name=«platform-broadwell-audio» card_name=«alsa_card.platform-broadwell-audio» namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes avoid_resampling=no card_properties=«module-udev-detect.discovered=1»
load-module module-jackdbus-detect channels=2
load-module module-bluetooth-policy
load-module module-bluetooth-discover
load-module module-bluez5-discover
load-module module-dbus-protocol
load-module module-native-protocol-unix
load-module module-gsettings
load-module module-rtp-recv
load-module module-native-protocol-tcp auth-anonymous=1
load-module module-zeroconf-publish
load-module module-default-device-restore
load-module module-rescue-streams
load-module module-always-sink
load-module module-intended-roles
load-module module-suspend-on-idle
load-module module-console-kit
load-module module-systemd-login
load-module module-position-event-sounds
load-module module-role-cork
load-module module-filter-heuristics
load-module module-filter-apply
load-module module-cli-protocol-unix

set-sink-volume alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink 0xf333
set-sink-mute alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink no
suspend-sink alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink no

set-source-volume alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink.monitor 0xd990
set-source-mute alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink.monitor no
suspend-source alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink.monitor no
set-source-volume alsa_input.platform-broadwell-audio.HiFi__hw_broadwellrt286__source 0x10000
set-source-mute alsa_input.platform-broadwell-audio.HiFi__hw_broadwellrt286__source no
suspend-source alsa_input.platform-broadwell-audio.HiFi__hw_broadwellrt286__source no

set-card-profile alsa_card.pci-0000_00_03.0 off
set-card-profile alsa_card.platform-broadwell-audio HiFi

set-default-sink alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink
set-default-source alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink.monitor

### EOF

pacmd list-sinks
1 sink(s) available.
* index: 1
name: <alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink>
driver: <module-alsa-card.c>
flags: HARDWARE DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
state: IDLE
suspend cause: (none)
priority: 9000
volume: front-left: 62259 / 95% / -1,34 dB, front-right: 62259 / 95% / -1,34 dB
balance 0,00
base volume: 65536 / 100% / 0,00 dB
volume steps: 65537
muted: no
current latency: 37,00 ms
max request: 7 KiB
max rewind: 7 KiB
monitor source: 1
sample spec: s16le 2-канальный 4800
channel map: front-left,front-right
Стерео
used by: 0
linked by: 1
configured latency: 40,00 ms; range is 0,50… 1365,33 ms
card: 1 <alsa_card.platform-broadwell-audio>
module: 7
properties:
alsa.resolution_bits = «16»
device.api = «alsa»
device.class = «sound»
alsa.class = «generic»
alsa.subclass = «generic-mix»
alsa.name = ""
alsa.id = «System Playback/Capture (*)»
alsa.subdevice = «0»
alsa.subdevice_name = «subdevice #0»
alsa.device = «0»
alsa.card = «0»
alsa.card_name = «broadwell-rt286»
alsa.long_card_name = «DellInc.-Latitude7350--»
alsa.driver_name = «snd_soc_sst_broadwell»
device.bus_path = «platform-broadwell-audio»
sysfs.path = "/devices/pci0000:00/INT3438:00/broadwell-audio/sound/card0"
device.vendor.name = «Interphase Corporation»
device.form_factor = «internal»
device.string = «hw:broadwellrt286»
device.buffering.buffer_size = «262144»
device.buffering.fragment_size = «131072»
device.access_mode = «mmap+timer»
device.profile.name = «HiFi: hw:broadwellrt286: sink»
device.profile.description = «Headphones + Speakers»
device.description = «Встроенное аудио Headphones + Speakers»
module-udev-detect.discovered = «1»
device.icon_name = «audio-card»
ports:
[Out] Headphones: Headphones (priority 200, latency offset 0 usec, available: no)
properties:

[Out] Speaker: Speakers (priority 100, latency offset 0 usec, available: unknown)
properties:

active port: <[Out] Speaker>

4.pavucontrol видит все устройства, настраивается, линия звука бегает, когда включаю Youtube/VLC/mp3 файл, но звука нет вообще.
Уголок новичка: Пропал звук после обновления ядраУголок новичка: Пропал звук после обновления ядраУголок новичка: Пропал звук после обновления ядраУголок новичка: Пропал звук после обновления ядраУголок новичка: Пропал звук после обновления ядра
Профиль выбирается, но с пометкой "(unavailable)". Насколько помню, раньше всё работало и с "(unavailable)".
5.aplay -L также видит карту.
Уголок новичка: Пропал звук после обновления ядра
6.speaker-test не выдаёт ни ошибок, ни звука. Вообще, даже шипения нет на max громкости.

II) По железу:
Ноут — Dell latitude 7350
Звуковая карта — broadwellrt286

III) Что делал (и что не принесло результата):
1.Заметил, что у меня работает pipewire и выпилил его. Не помогло. (Насколько понимаю, PulseAudio и pipewire делают одно и то же.)
2.Провёл диагностику в BIOS, поэтому знаю, что динамики и звуковуха живы.
3.Менял default карту в ALSA (/etc/asound.conf) с pulse на broadwellrt286 и обратно с проверкой в speaker-test на каждом шаге (pavucontrol показывает, что speaker-test издаёт звуки, но звука нет).
Уголок новичка: Пропал звук после обновления ядра
4.Поменял в /etc/modprobe.d/alsa-base.conf местами HDMI и broadwellrt286 (раньше 0ой была HDMI) и поменял там же 1 параметр.
/etc/modprobe.d/alsa-base.conf
options snd-hda-intel model=auto
options snd-hda-intel id=broadwellrt286 index=0
options snd-hda-intel id=HDMI index=1

5.Обновил систему и все программы (мало ли).
6.Стоит упомянуть, что во время работы pavucontrol использует broadwellrt286. speaker-test при попытке использовать её выдавал ошибку (устройство занято).
Отнимал у pulseaudio карту и давал speaker-test. Звука нет.
Уголок новичка: Пропал звук после обновления ядра
7. Дополнение:
1.Необходимые модули вроде загружаются
lsmod | grep snd
snd_soc_sst_broadwell 24576 2
snd_soc_sst_haswell_pcm 110592 2 snd_soc_sst_broadwell
snd_hda_codec_hdmi 73728 1
snd_soc_sst_firmware 40960 1 snd_soc_sst_haswell_pcm
snd_soc_sst_ipc 20480 1 snd_soc_sst_haswell_pcm
snd_soc_sst_dsp 40960 1 snd_soc_sst_haswell_pcm
snd_soc_rt298 49152 0
snd_hda_intel 57344 1
snd_soc_rt286 49152 2 snd_soc_sst_broadwell
snd_intel_dspcfg 28672 1 snd_hda_intel
snd_soc_rl6347a 16384 2 snd_soc_rt298,snd_soc_rt286
snd_hda_codec 163840 2 snd_hda_codec_hdmi,snd_hda_intel
snd_soc_core 299008 4 snd_soc_rt298,snd_soc_rt286,snd_soc_sst_haswell_pcm,snd_soc_sst_broadwell
snd_compress 28672 1 snd_soc_core
snd_hda_core 106496 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec
ac97_bus 16384 1 snd_soc_core
snd_pcm_dmaengine 16384 1 snd_soc_core
snd_hwdep 16384 1 snd_hda_codec
snd_pcm 143360 9 snd_hda_codec_hdmi,snd_soc_rt298,snd_hda_intel,snd_soc_rt286,snd_hda_codec,snd_soc_sst_haswell_pcm,snd_soc_core,snd_hda_core,snd_pcm_dmaengine
snd_timer 40960 1 snd_pcm
snd 110592 15 snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_timer,snd_soc_sst_haswell_pcm,snd_compress,snd_soc_core,snd_pcm
snd_soc_sst_acpi 16384 0
soundcore 16384 1 snd
snd_soc_acpi_intel_match 40960 1 snd_soc_sst_acpi
snd_soc_acpi 16384 2 snd_soc_sst_acpi,snd_soc_acpi_intel_match

2.Не смог найти решение этих ошибок
sudo dmesg | grep error
[ 0.003655] [Firmware Bug]: TSC ADJUST differs within socket(s), fixing all errors
[ 5.873870] haswell-pcm-audio haswell-pcm-audio: Direct firmware load for intel/IntcPP01.bin failed with error -2

3.Короткий вариант (т.е. система видит карту)
sudo lshw -short
H/W path Device Class Description
====================================================
system Latitude 7350 (0673)
/0 bus Motherboard
/0/0 memory 64KiB BIOS
/0/49 processor Intel® Core(TM) M-5Y71 CPU @ 1.20GHz
/0/49/3a memory 32KiB L1 cache
/0/49/3f memory 256KiB L2 cache
/0/49/44 memory 4MiB L3 cache
/0/35 memory 32KiB L1 cache
/0/53 memory 4GiB System Memory
/0/53/0 memory 2GiB Chip DDR3 Synchronous 1600 MHz (0,6 ns)
/0/53/1 memory 2GiB Chip DDR3 Synchronous 1600 MHz (0,6 ns)
/0/100 bridge Broadwell-U Host Bridge -OPI
/0/100/2 display HD Graphics 5300
/0/100/3 multimedia Broadwell-U Audio Controller
/0/100/4 generic Broadwell-U Processor Thermal Subsystem
/0/100/14 bus Wildcat Point-LP USB xHCI Controller
/0/100/14/0 usb1 bus xHCI Host Controller
/0/100/14/0/1 bus USB hub
/0/100/14/0/3 multimedia Integrated_Webcam_FHD
/0/100/14/0/7 communication Bluetooth wireless interface
/0/100/14/1 usb2 bus xHCI Host Controller
/0/100/14/1/1 bus USB hub
/0/100/16 communication Wildcat Point-LP MEI Controller #1
/0/100/1c bridge Wildcat Point-LP PCI Express Root Port #3
/0/100/1c/0 wlp1s0 network Wireless 7265
/0/100/1f bridge Wildcat Point-LP LPC Controller
/0/100/1f.2 storage Wildcat Point-LP SATA Controller [AHCI Mode]
/0/100/1f.3 bus Wildcat Point-LP SMBus Controller
/0/1 scsi1 storage
/0/1/0.0.0 /dev/sda disk 128GB SAMSUNG SSD PM87
/0/1/0.0.0/1 volume 400MiB Windows FAT volume
/0/1/0.0.0/2 /dev/sda2 volume 48GiB EXT4 volume
/0/1/0.0.0/3 /dev/sda3 volume 8200MiB Linux swap volume
/0/1/0.0.0/4 /dev/sda4 volume 62GiB EXT4 volume
/1 power DELL YX81V49
/2 power DELL J84W044

4.Более полный вариант
sudo lshw
homocomputer
description: Portable Computer
product: Latitude 7350 (0673)
vendor: Dell Inc.
serial: B7QKK12
width: 4294967295 bits
capabilities: smbios-2.8 dmi-2.8 smp vsyscall32
configuration: boot=normal chassis=docking sku=0673 uuid=44454C4C-3700-1051-804B-C2C04F4B3132
*-core
description: Motherboard
vendor: Dell Inc.
physical id: 0
serial: /B7QKK12/ /
*-firmware
description: BIOS
vendor: Dell Inc.
physical id: 0
version: A19
date: 01/22/2020
size: 64KiB
capacity: 15MiB
capabilities: pci pnp upgrade shadowing cdboot bootselect edd int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer acpi usb smartbattery biosbootspecification netboot uefi
*-multimedia
description: Audio device
product: Broadwell-U Audio Controller
vendor: Intel Corporation
physical id: 3
bus info: [email protected]:00:03.0
version: 09
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list
configuration: driver=snd_hda_intel latency=0
resources: irq:48 memory:f7118000-f711bfff

pacmd list-cards
2 card(s) available.
index: 0
name: <alsa_card.pci-0000_00_03.0>
driver: <module-alsa-card.c>
owner module: 6
properties:
alsa.card = «1»
alsa.card_name = «HDA Intel HDMI»
alsa.long_card_name = «HDA Intel HDMI at 0xf7118000 irq 47»
alsa.driver_name = «snd_hda_intel»
device.bus_path = «pci-0000:00:03.0»
sysfs.path = "/devices/pci0000:00/0000:00:03.0/sound/card1"
device.bus = «pci»
device.vendor.id = «8086»
device.vendor.name = «Intel Corporation»
device.product.id = «160c»
device.product.name = «Broadwell-U Audio Controller»
device.form_factor = «internal»
device.string = «1»
device.description = «Встроенное аудио»
module-udev-detect.discovered = «1»
device.icon_name = «audio-card-pci»
profiles:
output:hdmi-stereo: Digital Stereo (HDMI) выход (priority 5900, available: no)
output:hdmi-surround: Digital Surround 5.1 (HDMI) выход (priority 800, available: no)
output:hdmi-surround71: Digital Surround 7.1 (HDMI) выход (priority 800, available: no)
output:hdmi-stereo-extra1: Digital Stereo (HDMI 2) выход (priority 5700, available: no)
output:hdmi-surround-extra1: Digital Surround 5.1 (HDMI 2) выход (priority 600, available: no)
output:hdmi-surround71-extra1: Digital Surround 7.1 (HDMI 2) выход (priority 600, available: no)
output:hdmi-stereo-extra2: Digital Stereo (HDMI 3) выход (priority 5700, available: no)
output:hdmi-surround-extra2: Digital Surround 5.1 (HDMI 3) выход (priority 600, available: no)
output:hdmi-surround71-extra2: Digital Surround 7.1 (HDMI 3) выход (priority 600, available: no)
output:hdmi-stereo-extra3: Digital Stereo (HDMI 4) выход (priority 5700, available: no)
output:hdmi-surround-extra3: Digital Surround 5.1 (HDMI 4) выход (priority 600, available: no)
output:hdmi-surround71-extra3: Digital Surround 7.1 (HDMI 4) выход (priority 600, available: no)
output:hdmi-stereo-extra4: Digital Stereo (HDMI 5) выход (priority 5700, available: no)
output:hdmi-surround-extra4: Digital Surround 5.1 (HDMI 5) выход (priority 600, available: no)
output:hdmi-surround71-extra4: Digital Surround 7.1 (HDMI 5) выход (priority 600, available: no)
off: Выключено (priority 0, available: unknown)
active profile: ports:
hdmi-output-0: HDMI / DisplayPort (priority 5900, latency offset 0 usec, available: no)
properties:
device.icon_name = «video-display»
hdmi-output-1: HDMI / DisplayPort 2 (priority 5800, latency offset 0 usec, available: no)
properties:
device.icon_name = «video-display»
hdmi-output-2: HDMI / DisplayPort 3 (priority 5700, latency offset 0 usec, available: no)
properties:
device.icon_name = «video-display»
hdmi-output-3: HDMI / DisplayPort 4 (priority 5600, latency offset 0 usec, available: no)
properties:
device.icon_name = «video-display»
hdmi-output-4: HDMI / DisplayPort 5 (priority 5500, latency offset 0 usec, available: no)
properties:
device.icon_name = «video-display»
index: 1
name: <alsa_card.platform-broadwell-audio>
driver: <module-alsa-card.c>
owner module: 7
properties:
alsa.card = «0»
alsa.card_name = «broadwell-rt286»
alsa.long_card_name = «DellInc.-Latitude7350--»
alsa.driver_name = «snd_soc_sst_broadwell»
device.bus_path = «platform-broadwell-audio»
sysfs.path = "/devices/pci0000:00/INT3438:00/broadwell-audio/sound/card0"
device.vendor.name = «Interphase Corporation»
device.form_factor = «internal»
device.string = «0»
device.description = «Встроенное аудио»
module-udev-detect.discovered = «1»
device.icon_name = «audio-card»
profiles:
HiFi: Play HiFi quality Music (priority 8000, available: no)
off: Выключено (priority 0, available: unknown)
active profile: sinks:
alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink/#1: Встроенное аудио Headphones + Speakers
sources:
alsa_output.platform-broadwell-audio.HiFi__hw_broadwellrt286__sink.monitor/#1: Monitor of Встроенное аудио Headphones + Speakers
alsa_input.platform-broadwell-audio.HiFi__hw_broadwellrt286__source/#2: Встроенное аудио Headset Microphone + Internal Microphone
ports:
[Out] Headphones: Headphones (priority 200, latency offset 0 usec, available: no)
properties:

[Out] Speaker: Speakers (priority 100, latency offset 0 usec, available: unknown)
properties:

[In] Headset: Headset Microphone (priority 200, latency offset 0 usec, available: no)
properties:

[In] Mic: Internal Microphone (priority 100, latency offset 0 usec, available: no)
properties:


P.S. Если я правильно понимаю ситуацию и принцип работы звука в Linux, то PulseAudio принимает звук от приложений, передаёт ALSA, ALSA передаёт звук на карту, но карта почему-то не работает.

2 комментария

avatar
Такая же петрушка в Ubuntu 19.10. Обновился на новое ядро и пропал звук.
Помогает но не каждый раз перезагрузка alsa

#!/bin/bash
pulseaudio --kill
sleep 2s
sudo alsa force-reload
pulseaudio --start

На данный момент обновился до свежего релиза и до ядра 5.4.0.26 проблема осталась. Тоже ноутбук правда HP и карта HDAI 92HD87B2
Кстати, DE Gnome
Что интересно, перезапуск alsa в 100% случаев работает если выполнен сразу после загрузки, в терминале. Если попытаться проиграть любой звук, а после этого выполнить перезапуск alsa, то эффекта не будет.
Последний раз редактировалось
+1
avatar
Привет. Спасибо за совет. Пробовал перезагружать ALSA, но после попыток проиграть звук. Может поэтому и не работало.
Нашёл тупое и простое, но долгое решение. Просто переустановил Manjaro. Теперь всё работает.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.