Graphic chip passthrough on NUC

Chillkroete

New Member
Jul 14, 2023
4
0
1
Hi everybody,

I am operating an Intel NUC7i3BNK with Intel HD Graphics 620 chipset.
Now I would like to use the HDMI port to display the output of one virtuel machine (Porteus Kiosk).

I have been reading about PCIe passthrough, but this is only experimental and even more importent I doubt I can use this, as the Graphics chipset is not connected via PCIe.

So do you have any idea how to use the HDMI port?

Thanks and kindest regards,
Chillkroete
 
Any indication if PCIe passthrough is a feasible way or any alternative ideas?
Every thought is appreciated!
 
Every thought is appreciated!
You cannot use just a single display output for a VM and another for something else; it's the whole iGPU or nothing. Or maybe you can pass parts of the GPU to VMs but they won't be able to use the physical outputs.
I have been reading about PCIe passthrough, but this is only experimental and even more importent I doubt I can use this, as the Graphics chipset is not connected via PCIe.
You iGPU is probably connected via PCI(e). It's not in a PCIe slot but the internal connections on the CPU also use PCIe.

Search this forum (and the internet) for other people using the a similar CPU and the same GPU and using PCIe passthrough. It's not always possible but if someone succeeded, then you can probably do this on Proxmox too.
 
If a device is listed in lspci, it generally can be passed through to a VM.

But it shouldn't be used by the host already, because that fight never ends well.

And getting Linux not to use the first frame buffer device it finds, isn't easy. Although historically there were things like serial console and traces of this are still in many PCs and in Linux.

I've tried a serial console with a NUC when I had with my NUC11 running Xcp-ng and was trying to debug what was going on... it came down to soldering and thankfully they found and fixed the bug before I had to resort to that.

Generally giving your primary interface to a VM makes managing the box a bit difficult, because there is no dynamic switching or partitioning between the two: once the VM has the GPU, it won't give it up and you're left with SSH or similar to manage the system. Eventually something will go wrong and you'll be in the blind.

I've done that sort of thing with KVM on a system which only had an AMD GPU a long time ago, and it worked as a tech demo, but not as a practical solution for standard operations. At the time I wanted to run a Windows VM and give it the GPU for gaming fun, but virtualize storage and network.

Still an ideal combination in my mind, but rarely when I try to put it into practice.
 
Hi There, I was busy in other stuff and the challenge has not been solved yet - sorry for delay.

I understood passing through the GPU is not possible, as in my case I have only one internal GPU.
I read using a USB to HDMI adapter and pass through USB instead seems to come with less issues.

This is what I tried. I am using a USB-C to HDMI adapter to display Porteus Kiosk. Regular installed version (w/o Proxmox) works fine with the USB-adapter (on monitor PD-2). Virtualizing with Proxmox does not display any image.

I tried various approaches: Passing through USB port as well as PCIe passthrough of the entire Thunderbolt 3 port. lspci or lsusb do show the device, but xrandr does only show one virtual screen. Details see in code below.
dmesg|grep -i "error\|warn\|fail" shoots the error [ 0.285437] acpi PNP0A03:00: fail to add MMCONFIG information, can't access extended PCI configuration space under this bridge.

Adding to kernel cmd line is supposed to help, but adding GRUB_CMDLINE_LINUX="memmap=64M$0xf0000000" to grub crashed my entire Proxmox installation, why I assume I need to perform a reinstallation.

Any advice where to tacke this issue and bring image to HDMI? I am quite lost and about to stop this project. Many thanks!

Code:
###### PCIe passthrough of Thunderbold 3 device
root@kiosk:~# xrandr
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 8192 x 8192
Virtual-1 connected primary 1280x800+0+0 (normal left inverted right x axis y axis) 325mm x 203mm
   1280x800      74.99*+
   1920x1080     60.00    50.00
   1600x1200     60.00
   1680x1050     59.95
   1400x1050     59.98
   1280x1024     60.02
   1440x900      59.89
   1280x960      60.00
   1360x768      60.02
   1280x768      59.87
   1024x768      60.00
   800x600       60.32
   640x480       60.00    59.94
root@kiosk:~# lspci
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.2 USB controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] (rev 01)
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Device 1234:1111 (rev 02)
00:03.0 Unclassified device [00ff]: Red Hat, Inc. Virtio memory balloon
00:05.0 PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge
00:12.0 Ethernet controller: Red Hat, Inc. Virtio network device
00:1e.0 PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge
00:1f.0 PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge
01:01.0 SCSI storage controller: Red Hat, Inc. Virtio SCSI
02:1b.0 USB controller: Red Hat, Inc. QEMU XHCI Host Controller (rev 01)
root@kiosk:~# lsusb
Bus 003 Device 001: ID 1d6b:0003 Linux 6.1.20-kiosk xhci-hcd xHCI Host Controller
Bus 002 Device 003: ID 2575:0402 Weida Hi-Tech                CoolTouchR System
Bus 002 Device 002: ID 343c:0000 xxxxxxxx USB Type-C Digital AV Adapter
Bus 002 Device 001: ID 1d6b:0002 Linux 6.1.20-kiosk xhci-hcd xHCI Host Controller
Bus 001 Device 002: ID 0627:0001 QEMU QEMU USB Tablet
Bus 001 Device 001: ID 1d6b:0001 Linux 6.1.20-kiosk uhci_hcd UHCI Host Controller
root@kiosk:~# dmesg|grep -i "error\|warn\|fail"
[    0.285437] acpi PNP0A03:00: fail to add MMCONFIG information, can't access extended PCI configuration space under this bridge.
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!