@PessimistTech Let's try to see if we have errors in the logs.
Run ls /boot/xen* and note the name of the xen file that ends with -d.gz
Then, can you reboot and , while in the grub menu, edit the XCP-ng menu entry (the first one) and make the following modifications:
modify the Xen ELF loaded by multiboot2 to load the debug Xen build by specifying the file that ends with -d.gz instead of /boot/xen.gz
on the same line, at the end, add iommu=debug
Then boot (by doing ctrl+X) and once booted and the VM with PCI passthrough started, please issue xl dmesg command in dom0 shell and report the content here.
Also please paste the result of dom0 dmesg.
then also an lspci -vvv -nn -s SBDF from both dom0 and the VM
replace SBDF with the segment bus device function address of the device (beware it won't be the same in dom0 and inside the VM).
Regards,
Yann