No audio output on Dell XPS 13 (9315)- only shows Dummy Output

Hello, I know similar questions have been asked before on this forum and others, and I promise, promise, I have tried to follow other instructions. This is truly my last resort as this problem has been haunting me for around 3 months.

Around 3 months ago my Arch linux setup (on my Dell XPS 13 (9315)) stopped having any audio output. I was using pipewire, pipewire-pulse and wireplumber and out of nowhere I had only dummy output on pavucontrol and pactl. This problem persisted despite my best efforts, including
a) BIOS update
b) Kernel update
c) messing around with modprobe.d conf files
d) reinstalling all audio packages
e) reloading kernel modules
f) changing the kernel modules loaded for the sound card I am using
etc. (did all these things on the Fedora install too)

I took the computer to the IT desk at my university where they messed around with it for 2 hours and could not fix anything. Tried booting in a live Gentoo environment and had the same problem. Audio worked fine in a Windows install on this computer. Recently I installed Fedora on this same computer to try and finally figure out what the issue is. Same issue with dummy output has persisted. I have tried every single command I have found in every single forum on this website, ArchWiki, Reddit, etc.

I am relatively desperate as this is my school computer and I would really like to continue using it. It works fine in every other way (besides the camera and fingerprint reader, both of which I have given up on)

kernel: Linux 6.14.9-300.fc42.x86_64

pactl list sinks / pavucontrol

Sink #34
	State: SUSPENDED
	Name: auto_null
	Description: Dummy Output
	Driver: PipeWire
	Sample Specification: float32le 2ch 48000Hz
	Channel Map: front-left,front-right
	Owner Module: 4294967295
	Mute: no
	Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
	       balance 0.00
	Base Volume: 65536 / 100% / 0.00 dB
	Monitor Source: auto_null.monitor
	Latency: 0 usec, configured 0 usec
	Flags: DECIBEL_VOLUME LATENCY 
	Properties:
		node.name = "auto_null"
		device.description = "Dummy Output"
		audio.rate = "48000"
		audio.channels = "2"
		audio.position = "FL,FR"
		media.class = "Audio/Sink"
		factory.name = "support.null-audio-sink"
		node.virtual = "true"
		monitor.channel-volumes = "true"
		factory.id = "19"
		clock.quantum-limit = "8192"
		client.id = "33"
		node.driver = "true"
		port.group = "stream.0"
		node.loop.name = "data-loop.0"
		library.name = "audioconvert/libspa-audioconvert"
		object.id = "34"
		object.serial = "34"
	Formats:
		pcm

aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: sofsoundwire [sof-soundwire], device 2: Speaker (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: sofsoundwire [sof-soundwire], device 5: HDMI 1 (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: sofsoundwire [sof-soundwire], device 6: HDMI 2 (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: sofsoundwire [sof-soundwire], device 7: HDMI 3 (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0

pactl list cards

Card #47
	Name: alsa_card.pci-0000_00_1f.3-platform-sof_sdw
	Driver: alsa
	Owner Module: n/a
	Properties:
		api.acp.auto-port = "false"
		api.acp.auto-profile = "false"
		api.alsa.card = "0"
		api.alsa.card.longname = "DellInc.-XPS9315--0GNN3X"
		api.alsa.card.name = "sof-soundwire"
		api.alsa.path = "hw:0"
		api.alsa.split-enable = "true"
		api.alsa.use-acp = "true"
		api.dbus.ReserveDevice1 = "Audio0"
		api.dbus.ReserveDevice1.Priority = "-20"
		device.api = "alsa"
		device.bus = "pci"
		device.bus_path = "pci-0000:00:1f.3-platform-sof_sdw"
		device.description = "Alder Lake Smart Sound Technology Audio Controller"
		device.enum.api = "udev"
		device.icon_name = "audio-card-analog-pci"
		device.name = "alsa_card.pci-0000_00_1f.3-platform-sof_sdw"
		device.nick = "sof-soundwire"
		device.plugged.usec = "6672638"
		device.product.id = "0x51cc"
		device.product.name = "Alder Lake Smart Sound Technology Audio Controller"
		device.subsystem = "sound"
		sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sof_sdw/sound/card0"
		device.vendor.id = "0x8086"
		device.vendor.name = "Intel Corporation"
		media.class = "Audio/Device"
		spa.object.id = "2"
		factory.id = "15"
		client.id = "46"
		object.id = "47"
		object.serial = "47"
		object.path = "alsa:acp:sofsoundwire"
		alsa.card = "0"
		alsa.card_name = "sof-soundwire"
		alsa.long_card_name = "DellInc.-XPS9315--0GNN3X"
		alsa.driver_name = "snd_soc_sof_sdw"
		alsa.mixer_name = "Intel Alderlake-P HDMI"
		alsa.components = "HDA:8086281c,80860101,00100000  cfg-amp:1 spk:rt1316 mic:rt715-sdca"
		alsa.id = "sofsoundwire"
		device.string = "0"
	Profiles:
		off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
		pro-audio: Pro Audio (sinks: 4, sources: 1, priority: 1, available: yes)
	Active Profile: off

inxi -aA

Audio:
  Device-1: Intel Alder Lake Imaging Signal Processor vendor: Dell driver: N/A
    alternate: intel_ipu6 bus-ID: 00:05.0 chip-ID: 8086:465d class-ID: 0480
  Device-2: Intel Alder Lake Smart Sound Audio vendor: Dell
    driver: sof-audio-pci-intel-tgl alternate: snd_hda_intel, snd_soc_avs,
    snd_sof_pci_intel_tgl bus-ID: 00:1f.3 chip-ID: 8086:51cc class-ID: 0401
  API: ALSA v: k6.14.9-300.fc42.x86_64 status: kernel-api
    tools: alsactl,alsamixer,amixer
  Server-1: PipeWire v: 1.4.4 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
1 Like

It’s reasonable to cautiously assume that the Dummy Output issue may be related to the relatively immature support for this specific hardware in Linux, especially when it comes to the firmware and driver stack. In particular, systems like the Dell XPS 13 9315 use Intel’s SoundWire audio architecture combined with the SOF (Sound Open Firmware) project, which is still under active development in the Linux ecosystem.

Given that, I’d recommend starting with the following update, which ensures that you’re using the most up-to-date audio firmware and kernel modules:
sudo dnf install kernel-core sof-firmware alsa-ucm-conf alsa-firmware

This step will help us determine whether the issue stems from a missing or outdated component. Once we verify that these packages are correctly installed and active, we’ll be in a better position to understand what additional diagnostics or configuration might be needed

Updating and loading repositories:
 Fedora 42 - x86_64 - Updates                                                                                           100% | 164.2 KiB/s |  30.7 KiB |  00m00s
 Fedora 42 - x86_64 - Updates                                                                                           100% |   2.5 MiB/s |   1.7 MiB |  00m01s
Repositories loaded.
Failed to resolve the transaction:
Package "kernel-core-6.14.0-63.fc42.x86_64" is already installed.
Package "kernel-core-6.14.9-300.fc42.x86_64" is already installed.
No match for argument: sof-firmware
No match for argument: alsa-ucm-conf

alsa-sof-firmware is already installed

It might be helpful to try booting into a fresh Fedora Live USB environment.

This would allow us to check whether the audio works “out of the box” with the default kernel, drivers, and firmware — essentially ruling out any issues caused by system-specific changes or configuration drift.

I have tried this. Doesn’t work in Fedora or Mint live environment.

Could you try the steps mentioned in this thread related to the ‘dummy output’ issue?

[ezra@fedora ~]$ ls /usr/share/alsa/ucm2/
Allwinner  Amlogic  codecs  conf.d       DEBUG.md  Intel      lib       module  OMAP       Qualcomm   Rockchip  sof-soundwire  ucm.conf
AMD        blobs    common  conf.virt.d  HDA       IO-Boards  MediaTek  NXP     platforms  README.md  Samsung   Tegra          USB-Audio
[ezra@fedora ~]$ ls /usr/share/alsa/ucm2/codecs
cs35l56         cs42l43-dmic  es8316    nau8824     rt5640  rt5672  rt711       rt712-dmic  rt715       wcd934x  wcd939x  wsa883x
cs35l56-bridge  cx2072x       hda       qcom-lpass  rt5645  rt5682  rt711-sdca  rt713-dmic  rt715-sdca  wcd937x  wm5102   wsa884x
cs42l43         da7219        max98090  rt1318      rt5651  rt700   rt712       rt713-sdca  rt722       wcd938x  wsa881x
[ezra@fedora ~]$ ls /usr/share/alsa/ucm2/sof-soundwire
cs35l56-bridge.conf  cs42l43-dmic.conf  Hdmi.conf    rt1316.conf  rt5682.conf  rt711-sdca.conf  rt713-dmic.conf  rt715-sdca.conf
cs35l56.conf         cs42l43-spk.conf   HiFi.conf    rt1318.conf  rt700.conf   rt712.conf       rt713-sdca.conf  rt722.conf
cs42l43.conf         dmic.conf          rt1308.conf  rt1320.conf  rt711.conf   rt712-dmic.conf  rt715.conf       sof-soundwire.conf
[ezra@fedora ~]$ pactl list short sinks
34	auto_null	PipeWire	float32le 2ch 48000Hz	SUSPENDED
[ezra@fedora ~]$ lspci -nnk | grep -A3 Audio
00:1f.3 Multimedia audio controller [0401]: Intel Corporation Alder Lake Smart Sound Technology Audio Controller [8086:51cc] (rev 01)
	Subsystem: Dell Device [1028:0b14]
	Kernel driver in use: sof-audio-pci-intel-tgl
	Kernel modules: snd_hda_intel, snd_soc_avs, snd_sof_pci_intel_tgl

Thanks for taking time to share the command outputs.

From what I can see from the outputs,

  • The audio hardware (Intel SST / SOF with SoundWire codec rt722) is recognized by the kernel, but no actual audio sink is registered in PipeWire.
  • The UCM2 configuration files (like rt722.conf) exist, but the codec might not have been properly detected or initialized.
  • This suggests a possible issue with SOF firmware loading, SoundWire probing, or kernel-level hardware compatibility.

Unfortunately, this issue seems to involve kernel/firmware-level hardware compatibility, especially with newer Dell models and SoundWire codecs.

I haven’t personally gone through kernel-level debugging for this type of hardware, so I’d suggest waiting for help from someone more experienced with kernel or SOF internals on this forum.

Apologies I couldn’t help more directly here — but I’ll keep following the thread in case I can assist further!