Acer Nitro AN515-58 Alder Lake PCH-P High Definition Audio Controller Dummy Output

Fedora 43

sound stopped after update Mar 2026. reported Dummy Output.

uname -a
Linux fedora 6.19.8-200.fc43.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Mar 13 22:06:06 UTC 2026 x86_64 GNU/Linux
grep TTY /etc/*release
/etc/os-release:PRETTY_NAME="Fedora Linux 43 (Workstation Edition)"
lspci | grep -i audio
0000:00:1f.3 Multimedia audio controller: Intel Corporation Alder Lake PCH-P High Definition Audio Controller (rev 01)
0000:01:00.1 Audio device: NVIDIA Corporation AD107 High Definition Audio Controller (rev a1)
modinfo /lib/modules/6.19.8-200.fc43.x86_64/kernel/sound/hda/controllers/snd-hda-intel.ko.xz
filename:       /lib/modules/6.19.8-200.fc43.x86_64/kernel/sound/hda/controllers/snd-hda-intel.ko.xz
description:    Intel HDA driver
license:        GPL
wpctl status
PipeWire 'pipewire-0' [1.4.10, infotek@fedora, cookie:1505241730]
 └─ Clients:
        33. uresourced                          [1.4.10, infotek@fedora, pid:1612]
        34. WirePlumber                         [1.4.10, infotek@fedora, pid:1733]
        42. WirePlumber [export]                [1.4.10, infotek@fedora, pid:1733]
        56. pipewire                            [1.4.10, infotek@fedora, pid:5082]
        57. GNOME Volume Control Media Keys     [1.4.10, infotek@fedora, pid:4850]
        63. gnome-shell                         [1.4.10, infotek@fedora, pid:4662]
        64. GNOME Shell Volume Control          [1.4.10, infotek@fedora, pid:4662]
        65. xdg-desktop-portal                  [1.4.10, infotek@fedora, pid:4729]
        66. GNOME Settings                      [1.4.10, infotek@fedora, pid:8751]
        74. Mutter                              [1.4.10, infotek@fedora, pid:4662]
        78. wpctl                               [1.4.10, infotek@fedora, pid:10809]

Audio
 ├─ Devices:
 │      43. AD107 High Definition Audio Controller [alsa]
 │      44. Alder Lake PCH-P High Definition Audio Controller [alsa]
 │  
 ├─ Sinks:
 │  *   58. Dummy Output                        [vol: 1.00]
 │  
 ├─ Sources:
 │  
 ├─ Filters:
 │  
 └─ Streams:
        67. GNOME Settings                                              
             68. input_FL        < Dummy Output:monitor_FL	[active]
             69. monitor_FL     
             70. input_FR        < Dummy Output:monitor_FR	[active]
             71. monitor_FR     

Video
 ├─ Devices:
 │      48. ACER HD User Facing                 [v4l2]
 │      49. ACER HD User Facing                 [v4l2]
 │      50. ACER HD User Facing: ACER HD Us     [libcamera]
 │  
 ├─ Sinks:
 │  
 ├─ Sources:
 │  *   51. ACER HD User Facing (V4L2)         
 │  
 ├─ Filters:
 │  
 └─ Streams:

Settings
 └─ Default Configured Devices:
         0. Audio/Sink    alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__HDMI1__sink

Restarting wireplumber fixes it for your session after booting into the GUI.

systemctl --user restart --now  wireplumber

disabling dmic_detect fixes it on boot, but you lose you mic.

you should check if there is anything in /etc/modprobe.d/audio-options.conf
first… cat /etc/modprobe.d/audio-options.conf

sudo bash -c 'echo "options snd_hda_intel dmic_detect=0" >> /etc/modprobe.d/audio-options.conf'
sudo dracut --force
reboot

So I cleared that file

sudo bash -c ' > /etc/modprobe.d/audio-options.conf'
sudo dracut --force
reboot

interesting notes:
Sound works via an external hdmi monitor while at the gui login, after login to desktop the sound does not work and opening up Settings → Sound output is listed as Dummy Output with no other options. Running wireplumber and hitting ctrl-c all sound options works as they should

just running wireplumber from the terminal for a second and hitting ctrl-c caused the sound to work as well

infotek@fedora:~$ wireplumber 
N 20:42:48.113012 wp-event-dispatche ../lib/wp/event-dispatcher.c:246:on_event_hook_done: <WpAsyncEventHook:0x55bca6bfe840> failed: <WpSiStandardLink:0x55bca6c3ebb0> link failed: 2 of 2 PipeWire links failed to activate
W 20:42:48.385743 spa.bluez5.telepho ../spa/plugins/bluez5/telephony.c:479:telephony_new: Bluetooth Telephony service is already registered by another connection
E 20:42:48.387525  spa.bluez5.native ../spa/plugins/bluez5/backend-native.c:2961:sco_listen: listen(): Address already in use
E 20:42:48.389241  spa.bluez5.native ../spa/plugins/bluez5/backend-native.c:3519:register_profile_reply: RegisterProfile() failed: org.bluez.Error.NotPermitted
E 20:42:48.389250  spa.bluez5.native ../spa/plugins/bluez5/backend-native.c:3519:register_profile_reply: RegisterProfile() failed: org.bluez.Error.NotPermitted
[0:01:16.780957845] [9614]  INFO Camera camera_manager.cpp:330 libcamera v0.5.2
[0:01:16.879295705] [9626]  INFO Camera camera_manager.cpp:220 Adding camera '\_SB_.PC00.XHCI.RHUB.HS06-6:1.0-04f2:b76f' for pipeline handler uvcvideo
W 20:42:48.760162           GLib-GIO (null):(null):(null): Unexpected reply 3 when releasing name org.freedesktop.ReserveDevice1.Audio1
W 20:42:49.018077           GLib-GIO (null):(null):(null): Unexpected reply 3 when releasing name org.freedesktop.ReserveDevice1.Audio0
W 20:42:49.237543           GLib-GIO (null):(null):(null): Unexpected reply 3 when releasing name org.freedesktop.ReserveDevice1.Audio1
W 20:42:49.622145           GLib-GIO (null):(null):(null): Unexpected reply 3 when releasing name org.freedesktop.ReserveDevice1.Audio0
W 20:42:49.925169           GLib-GIO (null):(null):(null): Unexpected reply 3 when releasing name org.freedesktop.ReserveDevice1.Audio1
W 20:42:51.698630           GLib-GIO (null):(null):(null): Unexpected reply 3 when releasing name org.freedesktop.ReserveDevice1.Audio0
W 20:42:52.084081           GLib-GIO (null):(null):(null): Unexpected reply 3 when releasing name org.freedesktop.ReserveDevice1.Audio1
W 20:42:52.696493           GLib-GIO (null):(null):(null): Unexpected reply 3 when releasing name org.freedesktop.ReserveDevice1.Audio0
^C

looking into setting delays in systemctl and hinting the module which model the driver is talking to…

I’m sure there is a better way… but I am le tired…

I fixed it by adding the restart command to my users .bashrc file

echo "systemctl --user restart --now wireplumber" >> ~/.bashrc

sync ; reboot ;