Audio Passtrough

WHYYTEwtf

New Member
Aug 13, 2022
9
1
3
Hallo,


Ist mein Vorhaben so möglich?

Proxmox Server mit Windows VM und GPU Passtrough.
Da ich die Kiste nebenbei als Streaming-PC verwenden möchte, brauche ich Line in, Mic und Audio Out.
Habe es bislang nicht geschafft, den Onboard Chip ans laufen bekommen. GEht das überhaupt? Oder muss ich wohl ooder Übel auf ein USB/PCIE Gerät umsteigen?
 
das kann schon gehen, wenn die onboard soundkarte in einer eigenen iommu gruppe ist, wie sehen denn deine gruppen aus?
Habe es bislang nicht geschafft, den Onboard Chip ans laufen bekommen.
was geht denn konkret nicht?
 
Vor dem Kauf einer USB Soundkarte auch bedenken, dass USB passthrough nicht toll für sowas ist, weil voll emuliert und daher nicht gut für Latenzen oder Duchsatz. Dann endest du vielleicht in der Situation, dass du dir eine PCIe-USB-Controller-Karte kaufen musst, du die dann per PCI Passthrough durchreichst, damit du die USB Soundkarte zuverlässig in die VM bekommst.

Wegen IOMMU Gruppen am besten mal den Output von dem hier posten:
Code:
for a in /sys/kernel/iommu_groups/*; do find $a -type l; done | sort --version-sort

for d in /sys/kernel/iommu_groups/*/devices/*; do n=${d#*/iommu_groups/*}; n=${n%%/*}; printf 'IOMMU Group %s ' "$n"; lspci -nns "${d##*/}"; done;
 
Last edited:
Hallo,
Entschuldige die späte Antwort, aber ich hatte in der zwischenzeit einen Unfall und war nicht in der Nähe.
Nun ist aber wieder alles super, die GPU läuft auch 1A. Nur die Onboard Soundkarte möchte nicht. Immer wenn ich diese einbinde bekomme ich:
vm: vfio: Unable to power on device, stuck in D3 kvm: vfio: Unable to power on device, stuck in D3 kvm: vfio: Unable to power on device, stuck in D3 TASK ERROR: start failed: command '/usr/bin/kvm -id 100 -name 'Windows-GPU,debug-threads=on' -no-shutdown -chardev 'socket,id=qmp,path=/var/run/qemu-server/100.qmp,server=on,wait=off' -mon 'chardev=qmp,mode=control' -chardev 'socket,id=qmp-event,path=/var/run/qmeventd.sock,reconnect=5' -mon 'chardev=qmp-event,mode=control' -pidfile /var/run/qemu-server/100.pid -daemonize -smbios 'type=1,uuid=52fbd494-d1af-4416-9189-67bb5378dde5' -drive 'if=pflash,unit=0,format=raw,readonly=on,file=/usr/share/pve-edk2-firmware//OVMF_CODE_4M.secboot.fd' -drive 'if=pflash,unit=1,format=raw,id=drive-efidisk0,size=540672,file=/dev/pve/vm-100-disk-0' -smp '12,sockets=1,cores=12,maxcpus=12' -nodefaults -boot 'menu=on,strict=on,reboot-timeout=1000,splash=/usr/share/qemu-server/bootsplash.jpg' -vnc 'unix:/var/run/qemu-server/100.vnc,password=on' -no-hpet -cpu 'IvyBridge,enforce,hv_ipi,hv_relaxed,hv_reset,hv_runtime,hv_spinlocks=0x1fff,hv_stimer,hv_synic,hv_time,hv_vapic,hv_vendor_id=proxmox,hv_vpindex,kvm=off,+kvm_pv_eoi,+kvm_pv_unhalt,+pcid,vendor=GenuineIntel' -m 8192 -object 'memory-backend-ram,id=ram-node0,size=8192M' -numa 'node,nodeid=0,cpus=0-11,memdev=ram-node0' -object 'iothread,id=iothread-virtioscsi0' -readconfig /usr/share/qemu-server/pve-q35-4.0.cfg -device 'vmgenid,guid=ef968eca-63a9-4fff-95ca-213361d2ab4e' -device 'qemu-xhci,p2=15,p3=15,id=xhci,bus=pci.1,addr=0x1b' -device 'usb-tablet,id=tablet,bus=ehci.0,port=1' -device 'vfio-pci,host=0000:14:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on' -device 'vfio-pci,host=0000:14:00.1,id=hostpci0.1,bus=ich9-pcie-port-1,addr=0x0.1' -device 'vfio-pci,host=0000:14:00.2,id=hostpci0.2,bus=ich9-pcie-port-1,addr=0x0.2' -device 'vfio-pci,host=0000:14:00.3,id=hostpci0.3,bus=ich9-pcie-port-1,addr=0x0.3' -device 'vfio-pci,host=0000:16:00.0,id=hostpci1.0,bus=ich9-pcie-port-2,addr=0x0.0,multifunction=on' -device 'vfio-pci,host=0000:16:00.1,id=hostpci1.1,bus=ich9-pcie-port-2,addr=0x0.1' -device 'vfio-pci,host=0000:16:00.3,id=hostpci1.2,bus=ich9-pcie-port-2,addr=0x0.2' -device 'vfio-pci,host=0000:16:00.4,id=hostpci1.3,bus=ich9-pcie-port-2,addr=0x0.3' -device 'usb-host,bus=xhci.0,port=1,vendorid=0x07ca,productid=0x0553,id=usb0' -device 'usb-host,bus=xhci.0,port=2,vendorid=0x04d9,productid=0x1603,id=usb1' -chardev 'socket,id=tpmchar,path=/var/run/qemu-server/100.swtpm' -tpmdev 'emulator,id=tpmdev,chardev=tpmchar' -device 'tpm-tis,tpmdev=tpmdev' -device 'virtio-vga,id=vga,bus=pcie.0,addr=0x1' -device 'virtio-serial,id=spice,bus=pci.0,addr=0x9' -chardev 'spicevmc,id=vdagent,name=vdagent' -device 'virtserialport,chardev=vdagent,name=com.redhat.spice.0' -spice 'tls-port=61000,addr=127.0.0.1,tls-ciphers=HIGH,seamless-migration=on' -device 'virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3,free-page-reporting=on' -iscsi 'initiator-name=iqn.1993-08.org.debian:01:e6b710dcaf26' -device 'virtio-scsi-pci,id=virtioscsi0,bus=pci.3,addr=0x1,iothread=iothread-virtioscsi0' -drive 'file=/dev/pve/vm-100-disk-1,if=none,id=drive-scsi0,cache=writeback,format=raw,aio=io_uring,detect-zeroes=on' -device 'scsi-hd,bus=virtioscsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0,id=scsi0,rotation_rate=1,bootindex=100' -device 'virtio-scsi-pci,id=virtioscsi2,bus=pci.3,addr=0x3' -drive 'file=/var/lib/vz/template/iso/virtio-win.iso,if=none,id=drive-scsi2,media=cdrom,aio=io_uring' -device 'scsi-cd,bus=virtioscsi2.0,channel=0,scsi-id=0,lun=2,drive=drive-scsi2,id=scsi2,bootindex=102' -device 'ahci,id=ahci0,multifunction=on,bus=pci.0,addr=0x7' -drive 'file=/var/lib/vz/template/iso/virtio-win.iso,if=none,id=drive-sata0,media=cdrom,aio=io_uring' -device 'ide-cd,bus=ahci0.0,drive=drive-sata0,id=sata0,bootindex=103' -netdev 'type=tap,id=net0,ifname=tap100i0,script=/var/lib/qemu-server/pve-bridge,downscript=/var/lib/qemu-server/pve-bridgedown' -device 'e1000,mac=DA:76:6A:7E:A1:1B,netdev=net0,bus=pci.0,addr=0x12,id=net0,bootindex=101' -rtc 'driftfix=slew,base=localtime' -machine 'type=pc-q35-7.1+pve0' -global 'kvm-pit.lost_tick_policy=discard' -cpu 'host,+kvm_pv_unhalt,+kvm_pv_eoi,hv_vendor_id=NV43FIX,kvm=off'' failed: got timeout


Code:
/sys/kernel/iommu_groups/0/devices/0000:00:01.0
/sys/kernel/iommu_groups/1/devices/0000:00:01.1
/sys/kernel/iommu_groups/2/devices/0000:00:01.3
/sys/kernel/iommu_groups/3/devices/0000:00:02.0
/sys/kernel/iommu_groups/4/devices/0000:00:03.0
/sys/kernel/iommu_groups/5/devices/0000:00:03.1
/sys/kernel/iommu_groups/6/devices/0000:00:03.2
/sys/kernel/iommu_groups/7/devices/0000:00:04.0
/sys/kernel/iommu_groups/8/devices/0000:00:05.0
/sys/kernel/iommu_groups/9/devices/0000:00:07.0
/sys/kernel/iommu_groups/10/devices/0000:00:07.1
/sys/kernel/iommu_groups/11/devices/0000:00:08.0
/sys/kernel/iommu_groups/12/devices/0000:00:08.1
/sys/kernel/iommu_groups/13/devices/0000:00:14.0
/sys/kernel/iommu_groups/13/devices/0000:00:14.3
/sys/kernel/iommu_groups/14/devices/0000:00:18.0
/sys/kernel/iommu_groups/14/devices/0000:00:18.1
/sys/kernel/iommu_groups/14/devices/0000:00:18.2
/sys/kernel/iommu_groups/14/devices/0000:00:18.3
/sys/kernel/iommu_groups/14/devices/0000:00:18.4
/sys/kernel/iommu_groups/14/devices/0000:00:18.5
/sys/kernel/iommu_groups/14/devices/0000:00:18.6
/sys/kernel/iommu_groups/14/devices/0000:00:18.7
/sys/kernel/iommu_groups/15/devices/0000:01:00.0
/sys/kernel/iommu_groups/16/devices/0000:0a:00.0
/sys/kernel/iommu_groups/17/devices/0000:0a:00.1
/sys/kernel/iommu_groups/18/devices/0000:0a:00.2
/sys/kernel/iommu_groups/19/devices/0000:0b:00.0
/sys/kernel/iommu_groups/20/devices/0000:0b:02.0
/sys/kernel/iommu_groups/21/devices/0000:0b:03.0
/sys/kernel/iommu_groups/22/devices/0000:0b:04.0
/sys/kernel/iommu_groups/23/devices/0000:0b:05.0
/sys/kernel/iommu_groups/24/devices/0000:0b:06.0
/sys/kernel/iommu_groups/25/devices/0000:0b:07.0
/sys/kernel/iommu_groups/26/devices/0000:0c:00.0
/sys/kernel/iommu_groups/27/devices/0000:0d:00.0
/sys/kernel/iommu_groups/28/devices/0000:13:00.0
/sys/kernel/iommu_groups/29/devices/0000:14:00.0
/sys/kernel/iommu_groups/30/devices/0000:14:00.1
/sys/kernel/iommu_groups/31/devices/0000:14:00.2
/sys/kernel/iommu_groups/32/devices/0000:14:00.3
/sys/kernel/iommu_groups/33/devices/0000:15:00.0
/sys/kernel/iommu_groups/34/devices/0000:16:00.0
/sys/kernel/iommu_groups/35/devices/0000:16:00.1
/sys/kernel/iommu_groups/36/devices/0000:16:00.3
/sys/kernel/iommu_groups/37/devices/0000:16:00.4


Code:
IOMMU Group 0 00:01.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge [1022:1482]
IOMMU Group 10 00:07.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Internal PCIe GPP Bridge 0 to bus[E:B] [1022:1484]
IOMMU Group 11 00:08.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge [1022:1482]
IOMMU Group 12 00:08.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Internal PCIe GPP Bridge 0 to bus[E:B] [1022:1484]
IOMMU Group 13 00:14.0 SMBus [0c05]: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller [1022:790b] (rev 61)
IOMMU Group 13 00:14.3 ISA bridge [0601]: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge [1022:790e] (rev 51)
IOMMU Group 14 00:18.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Matisse Device 24: Function 0 [1022:1440]
IOMMU Group 14 00:18.1 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Matisse Device 24: Function 1 [1022:1441]
IOMMU Group 14 00:18.2 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Matisse Device 24: Function 2 [1022:1442]
IOMMU Group 14 00:18.3 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Matisse Device 24: Function 3 [1022:1443]
IOMMU Group 14 00:18.4 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Matisse Device 24: Function 4 [1022:1444]
IOMMU Group 14 00:18.5 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Matisse Device 24: Function 5 [1022:1445]
IOMMU Group 14 00:18.6 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Matisse Device 24: Function 6 [1022:1446]
IOMMU Group 14 00:18.7 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Matisse Device 24: Function 7 [1022:1447]
IOMMU Group 15 01:00.0 Non-Volatile memory controller [0108]: Toshiba Corporation XG6 NVMe SSD Controller [1179:011a]
IOMMU Group 16 0a:00.0 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] X370 Series Chipset USB 3.1 xHCI Controller [1022:43b9] (rev 02)
IOMMU Group 17 0a:00.1 SATA controller [0106]: Advanced Micro Devices, Inc. [AMD] X370 Series Chipset SATA Controller [1022:43b5] (rev 02)
IOMMU Group 18 0a:00.2 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] X370 Series Chipset PCIe Upstream Port [1022:43b0] (rev 02)
IOMMU Group 19 0b:00.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
IOMMU Group 1 00:01.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse GPP Bridge [1022:1483]
IOMMU Group 20 0b:02.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
IOMMU Group 21 0b:03.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
IOMMU Group 22 0b:04.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
IOMMU Group 23 0b:05.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
IOMMU Group 24 0b:06.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
IOMMU Group 25 0b:07.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
IOMMU Group 26 0c:00.0 USB controller [0c03]: ASMedia Technology Inc. ASM1143 USB 3.1 Host Controller [1b21:1343]
IOMMU Group 27 0d:00.0 Ethernet controller [0200]: Intel Corporation I211 Gigabit Network Connection [8086:1539] (rev 03)
IOMMU Group 28 13:00.0 VGA compatible controller [0300]: NVIDIA Corporation NV44 [GeForce 6200 TurboCache] [10de:0161] (rev a1)
IOMMU Group 29 14:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU116 [GeForce GTX 1650 SUPER] [10de:2187] (rev a1)
IOMMU Group 2 00:01.3 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse GPP Bridge [1022:1483]
IOMMU Group 30 14:00.1 Audio device [0403]: NVIDIA Corporation TU116 High Definition Audio Controller [10de:1aeb] (rev a1)
IOMMU Group 31 14:00.2 USB controller [0c03]: NVIDIA Corporation TU116 USB 3.1 Host Controller [10de:1aec] (rev a1)
IOMMU Group 32 14:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU116 USB Type-C UCSI Controller [10de:1aed] (rev a1)
IOMMU Group 33 15:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Function [1022:148a]
IOMMU Group 34 16:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Reserved SPP [1022:1485]
IOMMU Group 35 16:00.1 Encryption controller [1080]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Cryptographic Coprocessor PSPCPP [1022:1486]
IOMMU Group 36 16:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller [1022:149c]
IOMMU Group 37 16:00.4 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse HD Audio Controller [1022:1487]
IOMMU Group 3 00:02.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge [1022:1482]
IOMMU Group 4 00:03.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge [1022:1482]
IOMMU Group 5 00:03.1 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse GPP Bridge [1022:1483]
IOMMU Group 6 00:03.2 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse GPP Bridge [1022:1483]
IOMMU Group 7 00:04.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge [1022:1482]
IOMMU Group 8 00:05.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge [1022:1482]
IOMMU Group 9 00:07.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse PCIe Dummy Host Bridge [1022:1482]
Mache ich was falsch oder möchte die Soka einfach nicht?

ne PCIE Karte zu kaufen, wäre nicht das Drama.
 
Hat das Board überhaupt eine eigene onboard Soundkarte? Ich sehe da nur die beiden Audio Devices der iGPU und dedizierten Grafikkarte und die sind ja meistens ehrr dafür da, dass man auch Ton über HDMI und Co ausgeben kann. Hätte da jetzt eigentlich einen Realtek-Chip oder so erwartet. Was ist das denn für ein Mainboard-Modell?
 
Theoretisch sollte 16:00.4 die Soundkarte sein.


x370 crosshair vi hero mit Ryzen 3700x also keine iGPU vorhanden.
 
Last edited:
also vom task log output schileße ich dass du 'hostpciX: 16:00' statt 'hostpciX: 16:00.4' angegeben hast, das führt dazu dass *alle* devices in 16:00 versucht werden durchzureichen
(auch 'all functions' in der gui genannt)

kannst du mal die config posten? (qm config ID)
 
also vom task log output schileße ich dass du 'hostpciX: 16:00' statt 'hostpciX: 16:00.4' angegeben hast, das führt dazu dass *alle* devices in 16:00 versucht werden durchzureichen
(auch 'all functions' in der gui genannt)

kannst du mal die config posten? (qm config ID)
tatsächlich hatte ich immer "all Functions" an.
Jetzt klappt es auf anhieb!

Nach über 6 Monaten probieren und versuchen läuft es endlich genauso wie gewünscht.