# Kernel 7 Audio Troubleshooting for Dell XPS 17 9700 ## Symptom On the Niri live ISO booting kernel 7, audio shows only HDMI devices and "Dummy Output" in `wpctl status`. Internal speakers and headphone jack do not appear. ## Root Cause The XPS 17 9700 is a Dell SoundWire platform requiring **SOF + SoundWire** for internal audio on modern Linux kernels. The issue is **not** PipeWire misconfiguration. Common causes are: 1. Kernel driver stack selection issue (wrong path selected at boot) 2. Missing or mismatched SOF firmware/topology 3. Missing or mismatched `sof-soundwire` UCM profiles 4. A kernel SoundWire regression ## Diagnostic Steps ### 1. Verify the driver stack is loading Boot into the live ISO and check which driver is active: ```bash # Should show SOF driver for internal audio lsmod | grep -E '^sof|^snd_sof' # Should show the SoundWire machine driver lsmod | grep -E 'sof_sdw|sof.*mach' # Check kernel logs for SoundWire errors sudo dmesg | grep -Ei 'soundwire|sdw|sof.*error|topology.*-22' ``` ### 2. Test explicit SOF driver selection If internal audio is missing, the kernel's auto-detection may have selected the wrong path. At the GRUB/boot menu, edit the kernel command line and add: ``` snd-intel-dspcfg.dsp_driver=3 ``` This explicitly forces SOF (value `3`) for the audio stack. Options are: - `0`: auto (kernel's default) - `1`: legacy HDA - `3`: SOF (correct for this laptop) - `4`: AVS Then boot and re-check: ```bash wpctl status ``` ### 3. Verify package completeness Ensure the live image has the required audio support packages: ```bash xbps-query -l | grep -E '^ii.*sof-firmware|alsa-ucm-conf|alsa-utils' ``` Expected output should include: - `sof-firmware` (Sound Open Firmware binaries and topology) - `alsa-ucm-conf` (Use Case Manager profiles for `sof-soundwire`) - `alsa-utils` (ALSA utilities and initial mixer state) ### 4. Check PipeWire/WirePlumber state Once the kernel exposes the internal audio devices (they should appear in `wpctl status`), verify PipeWire is reading them correctly: ```bash # List all devices seen by PipeWire pw-cli ls Device # Check WirePlumber's ALSA monitor for errors journalctl -u wireplumber.service -n 50 # Manually re-scan if needed pw-cli list-objects Module | grep monitor ``` ## If It Still Fails ### Check for a kernel regression Recent kernel versions 6.9 and 6.10 had SoundWire regressions affecting XPS-series Dell laptops. These were fixed in: - 6.9.x (fixed in 6.9 stable releases) - 6.10.11+ If kernel 7.x shows the same symptoms, check the [SOF upstream issues](https://github.com/thesofproject/linux/issues) for similar reports. ### Compare against a known-good kernel If kernel 7 still fails with `dsp_driver=3`: 1. Boot with the fallback kernel 6 (available in the Niri live ISO GRUB menu) 2. Test audio on kernel 6 3. If audio works on kernel 6 but not kernel 7, there is likely a kernel-7-specific regression Report findings to: - [SOF upstream](https://github.com/thesofproject/linux/issues) - [Void Linux](https://github.com/void-linux/void-packages) ### Manual ALSA routing (for microphone issues) If speakers work but the internal microphone does not, manually set the mic input mux: ```bash amixer --card 1 set 'rt715 ADC 24 Mux' 'DMIC3' ``` Then persist the state: ```bash sudo alsactl store ``` ## References - [ArchWiki: Dell XPS 17 (9700)](https://wiki.archlinux.org/title/Dell_XPS_17_(9700)) - [ArchWiki: Sound Open Firmware](https://wiki.archlinux.org/title/Sound_Open_Firmware) - [SOF upstream issue 4999: 6.8.9→6.9.0 regression](https://github.com/thesofproject/linux/issues/4999) - [Kernel docs: intel-dsp-config](https://github.com/torvalds/linux/blob/master/sound/hda/core/intel-dsp-config.c) - [XPS 9700 Ubuntu fix guide](https://askubuntu.com/questions/1270442/no-sound-on-xps-17-9700) ## Live ISO Packages The mainline-niri Niri live ISO includes: - `sof-firmware`: Intel SOF binary and topology files - `alsa-ucm-conf`: ALSA Use Case Manager profiles, including `sof-soundwire` - `pipewire` and `wireplumber`: Session and policy management - `linux-mainline`: Kernel 7.x with SOF support - `linux`: Kernel 6.x fallback entry in GRUB The build ensures both kernels are available to test audio driver behavior across kernel versions.