Audio quits after startup sound -Fedora 41

I’ve been troubleshooting this for weeks and am finally reaching out for help. I got a 1 year old laptop (Lenovo Legion 7 Pro) off eBay, dual boot, and Win11 has no issue with audio on this machine, so I don’t think it’s a hardware problem.
Upon booting Fedora 41 KDE, it always plays the startup sound, but then afterward if I launch, say, Firefox, and start to play a youtube video, sometimes I’ll have audio and sometimes I won’t. It’s a tossup. If I do have audio, then if I pause/stop the video and wait a few minutes and then resume, then I may or may not have audio upon resume. I can see the meter levels moving in the Sound System Settings menu, and the little taskbar icon that shows what’s currently playing is running visually as if it’s playing, but no sound is coming out of the speakers. Then after reboot, same thing- I hear the startup sound just fine, but dice roll if I’ll have audio after that. Just fyi I did previously try Kubuntu on the same machine and it had the exact same issue, although I was able to run “sudo alsa force-reload” and it would consistently fix it but only temporarily for maybe a few minutes, not sure why. But Fedora doesn’t have the alsa command. It’s a fresh install of Fedora, updated as of today, open-source graphics (I have NVIDIA card but have not installed the non-free driver), the only thing I’ve done after the fresh install so far besides update is install inxi and run “sudo dnf install alsa-firmware”. When I installed the alsa firmware it fixed the problem temporarily, but then after reboot, same thing- startup sound played fine but no audio after that. I’d love to have consistent audio on this laptop.

Any help you could give would be greatly appreciated! :slight_smile:

cody@fedora:~$ uname -r

6.12.6-200.fc41.x86_64
cody@fedora:~$ lspci | grep -i audio

00:1f.3 Audio device: Intel Corporation Raptor Lake High Definition Audio Controller (rev 11)
01:00.1 Audio device: NVIDIA Corporation AD104 High Definition Audio Controller (rev a1)
cody@fedora:~$ pipewire --version

pipewire
Compiled with libpipewire 1.2.7
Linked with libpipewire 1.2.7
cody@fedora:~$ rpm -q wireplumber pipewire

wireplumber-0.5.7-1.fc41.x86_64
pipewire-1.2.7-1.fc41.x86_64
cody@fedora:~$ inxi -Fxxrzc0

System:
  Kernel: 6.12.6-200.fc41.x86_64 arch: x86_64 bits: 64 compiler: gcc
    v: 2.43.1-5.fc41
  Desktop: KDE Plasma v: 6.2.4 tk: Qt v: N/A wm: kwin_wayland dm: SDDM
    Distro: Fedora Linux 41 (KDE Plasma)
Machine:
  Type: Laptop System: LENOVO product: 82WQ v: Legion Pro 7 16IRX8H
    serial: <superuser required> Chassis: type: 10 v: Legion Pro 7 16IRX8H
    serial: <superuser required>
  Mobo: LENOVO model: LNVNB161216 v: SDK0T76528 WIN
    serial: <superuser required> part-nu: LENOVO_MT_82WQ_BU_idea_FM_Legion Pro
    7 16IRX8H UEFI: LENOVO v: KWCN46WW date: 07/04/2024
Battery:
  ID-1: BAT0 charge: 96.1 Wh (100.0%) condition: 96.1/99.9 Wh (96.2%)
    volts: 17.2 min: 15.5 model: SMP L22M4PC1 serial: <filter> status: full
CPU:
  Info: 24-core (8-mt/16-st) model: 13th Gen Intel Core i9-13900HX bits: 64
    type: MST AMCP arch: Raptor Lake rev: 1 cache: L1: 2.1 MiB L2: 32 MiB
    L3: 36 MiB
  Speed (MHz): avg: 800 min/max: 800/5200:5400:3900 cores: 1: 800 2: 800
    3: 800 4: 800 5: 800 6: 800 7: 800 8: 800 9: 800 10: 800 11: 800 12: 800
    13: 800 14: 800 15: 800 16: 800 17: 800 18: 800 19: 800 20: 800 21: 800
    22: 800 23: 800 24: 800 25: 800 26: 800 27: 800 28: 800 29: 800 30: 800
    31: 800 32: 800 bogomips: 154828
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
  Device-1: Intel Raptor Lake-S UHD Graphics vendor: Lenovo driver: i915
    v: kernel arch: Gen-13 ports: active: eDP-1 empty: none bus-ID: 00:02.0
    chip-ID: 8086:a788
  Device-2: NVIDIA AD104M [GeForce RTX 4080 Max-Q / Mobile] vendor: Lenovo
    driver: nouveau v: kernel arch: Lovelace pcie: speed: 16 GT/s lanes: 16
    ports: active: none empty: DP-1, DP-2, DP-3, HDMI-A-1, eDP-2
    bus-ID: 01:00.0 chip-ID: 10de:27e0
  Device-3: Luxvisions Innotech Integrated Camera driver: uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 bus-ID: 1-11:3 chip-ID: 30c9:00ac
  Display: wayland server: Xwayland v: 24.1.4 compositor: kwin_wayland
    driver: N/A display-ID: 0
  Monitor-1: eDP-1 res: 1707x1067 size: N/A
  API: EGL v: 1.5 platforms: device: 0 drv: nouveau device: 1 drv: iris
    device: 2 drv: swrast gbm: drv: nouveau surfaceless: drv: nouveau wayland:
    drv: iris x11: drv: iris
  API: OpenGL v: 4.6 compat-v: 4.3 vendor: intel mesa v: 24.2.8 glx-v: 1.4
    direct-render: yes renderer: Mesa Intel Graphics (RPL-S)
    device-ID: 8086:a788 display-ID: :0.0
  API: Vulkan v: 1.3.296 surfaces: xcb,xlib,wayland device: 0
    type: integrated-gpu driver: N/A device-ID: 8086:a788 device: 1
    type: discrete-gpu driver: N/A device-ID: 10de:27e0 device: 2 type: cpu
    driver: N/A device-ID: 10005:0000
Audio:
  Device-1: Intel Raptor Lake High Definition Audio vendor: Lenovo
    driver: snd_hda_intel v: kernel bus-ID: 00:1f.3 chip-ID: 8086:7a50
  Device-2: NVIDIA AD104 High Definition Audio vendor: Lenovo
    driver: snd_hda_intel v: kernel pcie: speed: 16 GT/s lanes: 16
    bus-ID: 01:00.1 chip-ID: 10de:22bc
  API: ALSA v: k6.12.6-200.fc41.x86_64 status: kernel-api
  Server-1: PipeWire v: 1.2.7 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    4: pw-jack type: plugin
Network:
  Device-1: Intel Raptor Lake-S PCH CNVi WiFi driver: iwlwifi v: kernel
    bus-ID: 00:14.3 chip-ID: 8086:7a70
  IF: wlp0s20f3 state: up mac: <filter>
  Device-2: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
    vendor: Lenovo driver: r8169 v: kernel pcie: speed: 2.5 GT/s lanes: 1
    port: 4000 bus-ID: 76:00.0 chip-ID: 10ec:8168
  IF: enp118s0 state: down mac: <filter>
Bluetooth:
  Device-1: Intel AX211 Bluetooth driver: btusb v: 0.8 type: USB rev: 2.0
    speed: 12 Mb/s lanes: 1 bus-ID: 1-14:4 chip-ID: 8087:0033
  Report: btmgmt ID: hci0 rfk-id: 2 state: up address: <filter> bt-v: 5.3
    lmp-v: 12
Drives:
  Local Storage: total: 1.86 TiB used: 5.56 GiB (0.3%)
  ID-1: /dev/nvme0n1 vendor: Samsung model: MZVL21T0HCLR-00BL2
    size: 953.87 GiB speed: 63.2 Gb/s lanes: 4 serial: <filter> temp: 40.9 C
  ID-2: /dev/nvme1n1 vendor: Samsung model: MZVL21T0HCLR-00BL2
    size: 953.87 GiB speed: 63.2 Gb/s lanes: 4 serial: <filter> temp: 33.9 C
Partition:
  ID-1: / size: 952.28 GiB used: 5.06 GiB (0.5%) fs: btrfs dev: /dev/nvme1n1p3
  ID-2: /boot size: 973.4 MiB used: 485.4 MiB (49.9%) fs: ext4
    dev: /dev/nvme1n1p2
  ID-3: /boot/efi size: 598.8 MiB used: 19.3 MiB (3.2%) fs: vfat
    dev: /dev/nvme1n1p1
  ID-4: /home size: 952.28 GiB used: 5.06 GiB (0.5%) fs: btrfs
    dev: /dev/nvme1n1p3
Swap:
  ID-1: swap-1 type: zram size: 8 GiB used: 0 KiB (0.0%) priority: 100
    dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 40.8 C mobo: N/A
  Fan Speeds (rpm): N/A
Repos:
  Packages: pm: rpm pkgs: N/A note: see --rpm
  No active dnf repos in: /etc/dnf/dnf.conf
  No active yum repos in: /etc/yum.repos.d/_copr:copr.fedorainfracloud.org:phracek:PyCharm.repo
  Active yum repos in: /etc/yum.repos.d/fedora-cisco-openh264.repo
    1: fedora-cisco-openh264 ~ https://mirrors.fedoraproject.org/metalink?repo=fedora-cisco-openh264-$releasever&arch=$basearch
  No active yum repos in: /etc/yum.repos.d/fedora-updates-testing.repo
  Active yum repos in: /etc/yum.repos.d/fedora-updates.repo
    1: updates ~ https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch
  Active yum repos in: /etc/yum.repos.d/fedora.repo
    1: fedora ~ https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
  No active yum repos in: /etc/yum.repos.d/google-chrome.repo
  Active yum repos in: /etc/yum.repos.d/rpmfusion-nonfree-nvidia-driver.repo
    1: rpmfusion-nonfree-nvidia-driver ~ https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-nvidia-driver-$releasever&arch=$basearch
  No active yum repos in: /etc/yum.repos.d/rpmfusion-nonfree-steam.repo
Info:
  Memory: total: 32 GiB note: est. available: 31.07 GiB used: 4.33 GiB (13.9%)
  Processes: 523 Power: uptime: 7m wakeups: 0 Init: systemd v: 256
    target: graphical (5) default: graphical
  Compilers: N/A Shell: Bash v: 5.2.32 running-in: konsole inxi: 3.3.36

Is it just auto-selecting the wrong output device? Maybe you can use wpctl status to see what default sink is set and/or wpctl set-default <N> to configure the default that you want?

I ran wpctl status when the issue was happening, and then ran it again when the audio was working, and it’s using the exact same sinks and default sink in both scenarios.

I just now discovered though, that closing the lid to the laptop so that it goes to sleep, then reopening, will consistently bring the audio back. Of course, it’s only a matter of time before it quits again.

It sounds like it might be another power management bug. Sometimes disabling power management on specific devices or setting the power profile to “performance” will work around that sort of problem. Using an older kernel until the problems are worked out is another work around that some people are using.

It looks like the snd_hda_intel driver has three power management related tunables:

$ modinfo -p snd_hda_intel | grep power
power_save:Automatic power-saving timeout (in second, 0 = disable). (xint)
pm_blacklist:Enable power-management denylist (bool)
power_save_controller:Reset controller in power save mode. (bool)

It looks like the power_save option defaults to 10 seconds:

$ cat /sys/module/snd_hda_intel/parameters/power_save
10

Is 10 seconds about how long your sound works before cutting out?

You should be able to adjust that setting (temporarily, until you reboot) by running something like echo 60 | sudo tee /sys/module/snd_hda_intel/parameters/power_save.

1 Like

Yes, it is roughly 10 seconds between the time any audio last played and when it won’t play any more. Like if I’m playing music on youtube, then pause, I can restart it in 5 seconds and audio works, but after ~10 seconds it won’t have sound until a reboot or sleep/wake. I adjusted the power_save per your recommendation from 10 to 60 but no affect. I tried a value of 0 as well, but same issue.

cody@fedora:~$ modinfo -p snd_hda_intel | grep power
power_save:Automatic power-saving timeout (in second, 0 = disable). (xint)
pm_blacklist:Enable power-management denylist (bint)
power_save_controller:Reset controller in power save mode. (bool)

I did notice that my pm_blacklist is bint instead of bool, not sure if that’s of any significance

It’s possible that the value cannot be changed at runtime (some drivers will require that they be completely unloaded and then that parameter be set by passing it at load time).

I’d also experiment with the other two settings. They are indicated to be booleans, meaning that they can be set to either 0 (off) or 1 (on).

Edit: It doesn’t look like the pm_blacklist setting would do anything useful: [RFC,v3] ALSA: hda: Add a power_save blacklist - Patchwork

bint is a superset of bool. In addition to 0 (off) and 1 (on), larger integral values can be set. You’d probably have to dig into the driver code to find out what the values greater than 1 mean though.

Correction: It appears that bint just a bool, but it always shows as an integer (0 or 1): moduleparam.h - include/linux/moduleparam.h - Linux source code v6.12.6 - Bootlin Elixir Cross Referencer

Seeing that the power_save kicks in after only 10 seconds, it is possible that your adjustment was made too late (since power save was activated before you made the change, the change seemed to have no effect).

I have the same laptop.
It seems like kernel 6.12 broke the audio, not to mention my entire system just got bricked a few minutes ago. I’m trying to roll back to 6.11, but it seems to be impossible.

For now the only way I can use my laptop is to switch to dGPU-only. But the audio is still broken, while with 6.11 I was able to fix it using sudo tee /etc/modprobe.d/snd-hda-intel.conf <<< "options snd_hda_intel power_save=0"

1 Like

It should always be possible to install an older kernel. Generally, dnf --repo=fedora downgrade kernel* should work (and you will have to select the older kernel while booting or else make the older kernel the default[1]).


  1. https://fedoraproject.org/wiki/User:Ilikelinux/grubby ↩︎

Thanks. I was trying to do it using Koji, since that was the only thing I could find in the docs.

Anyway, after the downgrade I ran sudo tee /etc/modprobe.d/snd-hda-intel.conf <<< "options snd_hda_intel power_save=0" since that config somehow got deleted after upgrading to F41. Audio is working again. The system is (I think) working fine too.

It’s interesting that cat /sys/module/snd_hda_intel/parameters/power_save gives you 10. On the 6.11 kernel (without the fix) it gave me 1. I made a post a few days ago about the same issue. Since then I also found out that Bluetooth audio is broken too. Something got seriously messed up in 6.12.

2 Likes

Same thing here, I have even dowgraded my kernel i use a dell latitude 7300,Nothing brings my sound back after the pop up saw an update from intel media driver for vaap don’t know if it will fix it ?

Ok so I found a solution! After reading through the referenced thread by @br0kenpixel I saw someone else had mentioned another thread, and someone there linked a solution that worked: https://github.com/DanielWeiner/tas2781-fix-16IRX8H/blob/main/README.md. And that’s my exact model of laptop (16IRX8H). So I ran the script, and it seems to be working great! It looks like it is indeed a couple of power-save issues causing the problem just as @glb had suspected. Thank you everyone, there’s no way I would have found this solution without your help.

2 Likes

That’s awesome!

By the way, I’m curious… Are you also getting a loud pop sound when rebooting? Does this fix remove it?

Yes I do still get a popping sound in the built-in laptop speakers when rebooting, even after applying the fix. It only happens during reboot and not during shutdown or regular startup. But it’s never been loud on my system, so it hasn’t ever bothered me. It almost reminds me of how it sounds when someone disconnects/reconnects an aux cable from an amp, except really quiet (at least on my laptop). The popping sound on reboot doesn’t seem to be happening through the headphones, only through the built-in speakers.