Is it like with the sound card in dom0, just more secure?
Is the control in the task bar (sorry, I don’t remember the official name) still usable?
Is mic0 managed from dom0 or from sys-audio?
I am trying to set up one and I followed up the community guide. It does not work.
What is surprising me is that the sound card PCI 0000:80:1f.3 seems to be initialised in dom0 before being passthroughed to the sys-audio VM. In sys-audio, there is no real initialisation, not the same dmesg messages.
In dom0 I have:
[ 3.412767] pci 0000:80:1f.3: [8086:7f50] type 00 class 0x040100 conventional PCI endpoint
[ 3.412996] pci 0000:80:1f.3: BAR 0 [mem 0x4002b10000-0x4002b13fff 64bit]
[ 3.413020] pci 0000:80:1f.3: BAR 4 [mem 0x4000000000-0x40001fffff 64bit]
[ 3.413233] pci 0000:80:1f.3: PME# supported from D3hot D3cold
[ 61.041005] sof-audio-pci-intel-mtl 0000:80:1f.3: SoundWire enabled on CannonLake+ platform, using SOF driver
[ 61.041025] sof-audio-pci-intel-mtl 0000:80:1f.3: enabling device (0000 -> 0002)
[ 61.041601] sof-audio-pci-intel-mtl 0000:80:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
[ 61.041683] sof-audio-pci-intel-mtl 0000:80:1f.3: bound 0000:00:02.0 (ops intel_audio_component_bind_ops [i915])
[ 61.049133] sof-audio-pci-intel-mtl 0000:80:1f.3: use msi interrupt mode
[ 61.077124] sof-audio-pci-intel-mtl 0000:80:1f.3: hda codecs found, mask 4
[ 61.077128] sof-audio-pci-intel-mtl 0000:80:1f.3: NHLT device BT(0) detected, ssp_mask 0x4
[ 61.077129] sof-audio-pci-intel-mtl 0000:80:1f.3: BT link detected in NHLT tables: 0x4
[ 61.077133] sof-audio-pci-intel-mtl 0000:80:1f.3: DMICs detected in NHLT tables: 2
[ 61.125155] sof-audio-pci-intel-mtl 0000:80:1f.3: SOF firmware and/or topology file not found.
[ 61.125160] sof-audio-pci-intel-mtl 0000:80:1f.3: Supported default profiles
[ 61.125161] sof-audio-pci-intel-mtl 0000:80:1f.3: - ipc type 1 (Requested):
[ 61.125162] sof-audio-pci-intel-mtl 0000:80:1f.3: Firmware file: intel/sof-ipc4/arl-s/sof-arl-s.ri
[ 61.125162] sof-audio-pci-intel-mtl 0000:80:1f.3: Topology file: intel/sof-ace-tplg/sof-arl-cs42l43-l0-cs35l56-l2-2ch.tplg
[ 61.125163] sof-audio-pci-intel-mtl 0000:80:1f.3: Check if you have 'sof-firmware' package installed.
[ 61.125164] sof-audio-pci-intel-mtl 0000:80:1f.3: Optionally it can be manually downloaded from:
[ 61.125164] sof-audio-pci-intel-mtl 0000:80:1f.3: https://github.com/thesofproject/sof-bin/
[ 61.126957] sof-audio-pci-intel-mtl 0000:80:1f.3: error: sof_probe_work failed err: -2
After I launch sys-audio, I have those added lines:
[ 322.340153] pciback 0000:80:1f.3: xen_pciback: vpci: assign to virtual slot 0
[ 322.340214] pciback 0000:80:1f.3: registering for 11
And in sys-audio, I have:
[ 0.146480] pci 0000:00:07.0: [8086:7f50] type 00 class 0x040100 conventional PCI endpoint
[ 0.146480] pci 0000:00:07.0: BAR 0 [mem 0x40f2210000-0x40f2213fff 64bit]
[ 0.146480] pci 0000:00:07.0: BAR 4 [mem 0x40f2000000-0x40f21fffff 64bit]
[ 0.146480] pci 0000:00:07.0: BAR 0 [mem 0x40f2210000-0x40f2213fff 64bit]: can't claim; no compatible bridge window
[ 0.146480] pci 0000:00:07.0: BAR 4 [mem 0x40f2000000-0x40f21fffff 64bit]: can't claim; no compatible bridge window
[ 0.146480] pci 0000:00:07.0: BAR 4 [mem 0xf2000000-0xf21fffff 64bit]: assigned
[ 0.146480] pci 0000:00:07.0: BAR 0 [mem 0xf2200000-0xf2203fff 64bit]: assigned
[ 3.306122] snd_hda_intel 0000:00:07.0: Cannot probe codecs, giving up
The audio card is not working in dom0 as dom0 is fedora41 and my card works only starting with fedora43. Which is the reason why i try to build up a sys-audio…
Looks like this device isn’t really compatible with sys-audio So, the best approach is to make it work in dom0.
Looks like this file is available in alsa-sof-firmware package version 2025.05.1, but dom0 in R4.3 has 2025.05 - so, just one version before… I’ll see about uploading the update.
Back to your initial questions:
Yes, that’s how it should work.
There is separate volumeicon from sys-audio, instead of dom0 one.
The interface still shows mic as “dom0:mic”, but it’s redirected to sys-audio.
I tried to progress on that subject (which is using my audio card on a Lenovo P16 Gen3, either in dom0, either in sys-audio).
I installed the rpmalsa-sof-firmware-2025.12.1-1.fc43 in dom0. Since in this rpm, there is no dependency to Fedora 43, the installation works. The messages from dmesg look way better:
However, it’s still not working
This installation does not help my sys-audio to work (same message as before in dmesg).
Even when the device stays in dom0 before launching _sys-audio, I don’t have any sound.
I will look more to see which part of dom0 has to be updated to make the sound working there.
Thanks a lot and if you have any idea, I’ll be very happy to test and report back
Bertrand
One important point is that this sound card is known to work on Fedora 43.
I did install the Fedora 43 version of alsa-sof-firmware, alsa-lib, alsa-ucm and alsa-utils. No sound.
I did also add cirrus-audio-firmware and linux-firmware-whence. For those two, I had to force the installation as it told me that I was downgrading… I don’t understand why. Still no sound card visible from alsa.
So my question is: do you have an idea of when a kernel 6.18 could be usable as kernel-latest? The one from current-testing does not boot on my laptop.
My understanding is the the fedora version of dom0 will only been upgraded in R4.4, which I assume will be in more than one year from now. Am I right?
This is about fixing audio in dom0, not sys-audio. Based on your messages, making this device working with sys-audio would be significantly more complex. So, I’d recommend un-do changes you made for sys-audio (especially hidding audio device from0 dom0) and see if it works then.
It’s what I just did, by reinstalling Qubes R4.3.0.
After re-installation, I updated with alsa-sof-firmware, alsa-lib, alsa-ucm and alsa-utils with the Fedora 43 version without success.
I also updated cirrus-audio-firmware and linux-firmware-whence (which was a dependency of cirrus-audio-firmware) still without success.
I do not see any audio device (for example in pavucontrol) and aplay -l in dom0 says aplay: device_list:279: no soundcards found...
I still don’t understand why PCI passthroughing the device to a VM does not work. If you can point me some reference allowing me to understand, I would love it, for my understanding.
Some news.
I eventually succeeded in having sound from dom0.
For that, I installed linux-firmware with qubes-dom-update; it is young enough. I have also to install a recent version of alsa-sof-firmware. The one in R4.3.0 Fedora 41dom0 is too old, so I installed the one from Fedora-43, with rpm -Uvh --nodeps.
I have now sound in dom0, thank you so much @marmarek.