AMD APU Ryzen 5700G iGPU Passthrough on 6.9.2


Recommended Posts

  • 2 weeks later...
On 1/30/2022 at 3:00 AM, domrockt said:

It is a wierd windows Problem, i can use my APU with HDMI Output with an Linux docker, no Problemo but not with windows…

Have you seen the beta Bios for the x300?  https://botflakes.de/asrockwiki/docs/bios/deskmini/

 

Says "It contains a fix for VMWare ESXi". Not sure exactly what that means but could be fixed for virtualisation?

 

According to this it also resolved his Linux gaming issues - 

 

Link to comment

ASRock X300M-STX
American Megatrends International, LLC., Version P1.70B
BIOS dated: Mon 30 Aug 2021 12:00:00 AM CEST

 

 

yes i saw that and installed itin an instant but stilll i cant passtrough the IGPU i have 

 

error 43s 

 

but i see there seems to be a 1.72 Bios in the wild. i need to look at that

 

Edit

quick and diy did not work, next is a new VM with seabios 

Edit

 

okay so far when using Seabios win 10 and passtrough just the GPU and use the here provided VBIOS

i can see the driver in DeviceManager without any Error Code even after reboots BUT i cant use the GPU in windows Display settings i cant use it as an accelerator nor can i get any Picture over HDMI or Displayport.

 

i KNOW that the HDMI is Passtroughable because i can use it with this Steam Headless docker 

Edited by domrockt
Link to comment

I think it's very motherboard specific as to whether you'll have luck getting the onboard GPU working, and whether the motherboard is able to make use of IOMMU groups and being able to override them.

 

I have a Minisforum HX90 running a Ryzen 9 5900HX cpu.

 

I set the PCIe ACS Override to Both and just selected my GPU and HDMI audio device to bind.

Here's a post to my config:

 

I downloaded the Graphics BIOS in that same thread.

 

The other thing you should do is set the multifunction='on' for the GPU and HDMI audio device as per

 

Finally, I had to apply a fix within the VM to ensure that the GPU gets properly released as per

 

 

Link to comment
  • 1 month later...
  • 1 month later...

I was able to get my 5700G to pass through, I'm on a Gigabyte X570 Gaming X

 

I did have to use SeaBios and Q35, along with the bios posted above:

 

image.png.cb8b5a86d6c0eaa539472c1d5a23e0c7.png

 

Here are the IOMMU groups my machine posted with:

 

IOMMU group 0:                [1022:1632] 00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
IOMMU group 1:                [1022:1633] 00:01.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge
IOMMU group 2:                [1022:1634] 00:01.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge
IOMMU group 3:                [1022:1632] 00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
IOMMU group 4:                [1022:1632] 00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
IOMMU group 5:                [1022:1635] 00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
IOMMU group 6:                [1022:1635] 00:08.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
IOMMU group 7:                 [1022:790b] 00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 51)
     [1022:790e] 00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
IOMMU group 8:                [1022:166a] 00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166a
[1022:166b] 00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166b
[1022:166c] 00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166c
[1022:166d] 00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166d
[1022:166e] 00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166e
[1022:166f] 00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 166f
[1022:1670] 00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1670
[1022:1671] 00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Device 1671
IOMMU group 9:                 [10de:10c3] 01:00.0 VGA compatible controller: NVIDIA Corporation GT218 [GeForce 8400 GS Rev. 3] (rev a2)
     [10de:0be3] 01:00.1 Audio device: NVIDIA Corporation High Definition Audio Controller (rev a1)
IOMMU group 10:                [1022:57ad] 02:00.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse Switch Upstream
IOMMU group 11:                [1022:57a3] 03:04.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
IOMMU group 12:                [1022:57a4] 03:08.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
     [1022:1485] 05:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Reserved SPP
     [1022:149c] 05:00.1 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 1c4f:0002 SiGma Micro Keyboard TRACER Gamma Ivory
Bus 001 Device 005: ID 04f2:0939 Chicony Electronics Co., Ltd USB Optical Mouse
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
     [1022:149c] 05:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 048d:8297 Integrated Technology Express, Inc. ITE Device(8595)
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
IOMMU group 13:                [1022:57a4] 03:09.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
     [1022:7901] 06:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 51)
IOMMU group 14:                [1022:57a4] 03:0a.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge
     [1022:7901] 07:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 51)
[5:0:0:0]    disk    ATA      Samsung SSD 840  5B0Q  /dev/sdb    128GB
[9:0:0:0]    disk    ATA      ST18000NM000J-2T SN02  /dev/sdc   18.0TB
[10:0:0:0]   disk    ATA      ST18000NM000J-2T SN02  /dev/sdd   18.0TB
IOMMU group 15:                 [10ec:8168] 04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 16)
IOMMU group 16:                 [1002:1638] 08:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne (rev c8)
IOMMU group 17:                 [1002:1637] 08:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Device 1637
IOMMU group 18:                 [1022:15df] 08:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor
IOMMU group 19:                 [1022:1639] 08:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir USB 3.1
This controller is bound to vfio, connected USB devices are not visible.
IOMMU group 20:                 [1022:1639] 08:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir USB 3.1
Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 008 Device 002: ID 090c:1000 Silicon Motion, Inc. - Taiwan (formerly Feiya Technology Corp.) Flash Drive
IOMMU group 21:                 [1022:15e3] 08:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller
IOMMU group 22:                 [1022:7901] 09:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 81)
IOMMU group 23:                 [1022:7901] 09:00.1 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 81)

 

You can see the APU and Audio device are in their own groups 16/17:

 

IOMMU group 16:                 [1002:1638] 08:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne (rev c8)
IOMMU group 17:                 [1002:1637] 08:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Device 1637

 

I also passed one set of USB 3.1 ports so I can plug whatever I need into those two and get them in the VM.

 

I did have to setup the BIOS to force APU on, as well as set the GPU initialization to use the card in slot 1 instead of built in.  My long term setup will be to use an old 1050ti for unraid, pass that to Plex, and use the APU to run a Windows 10 VM.

 

It appears to be working so far, make sure you install the correct drives from AMD though, as I got the wrong set the first time I was clicking too fast.

 

device_list.thumb.png.4de685e4ca8dea0df71eafe1565476ab.png

 

  • Like 1
Link to comment

I ran into an interesting problem that I cannot seem to figure out.  I passed the AMD audio device, but I cannot get it to pass audio out through HDMI.  This works when its setup bare metal with Windows.  I see the device, I passed it, shows up in device manager, but says disconnected when you look at it.

Link to comment
  • 2 weeks later...

Forgive the absolute newbie questions, but this seems the more relevant thread I found so far...

 

...is it possible to perform video card passthrough with a rig made ONLY by a 5600G and NO video card installed in the PCI slot?

I'm dipping my toes in VM's and trying many things but so far I can only run a VM on VNC...the very moment I start fiddling with video passthrough i think I'm missing some important bits of knowledge and maybe all the tutorials I've found take for granted things that are not that obvious 🙂

 

So, again, the main questions here are

1) can I do GPU passthrough having only the integrated graphic of a 5600G?
2) am i supposed to get the video out of the HDMI? I'm asking because that seems to be taken by the Unraid CLI

3) (or 2bis) - how do i know passthrough is successful, other than the HDMI out at point 2? Can I still use VNC or RDP to get to a machine which had a successful passthrough?

Thanks for your patience

Link to comment
6 hours ago, tampano said:

Forgive the absolute newbie questions, but this seems the more relevant thread I found so far...

 

...is it possible to perform video card passthrough with a rig made ONLY by a 5600G and NO video card installed in the PCI slot?

I'm dipping my toes in VM's and trying many things but so far I can only run a VM on VNC...the very moment I start fiddling with video passthrough i think I'm missing some important bits of knowledge and maybe all the tutorials I've found take for granted things that are not that obvious 🙂

 

So, again, the main questions here are

1) can I do GPU passthrough having only the integrated graphic of a 5600G?
2) am i supposed to get the video out of the HDMI? I'm asking because that seems to be taken by the Unraid CLI

3) (or 2bis) - how do i know passthrough is successful, other than the HDMI out at point 2? Can I still use VNC or RDP to get to a machine which had a successful passthrough?

Thanks for your patience

Yes, just look for threads talking about running unraid headless.  I've done this before, but it can be annoying if you run into issues, as obviously you loose access to the console if something goes wrong enough that SSH is inaccessible.

Link to comment
On 4/26/2022 at 10:13 AM, onyxdrew said:

I was able to get my 5700G to pass through, I'm on a Gigabyte X570 Gaming X

 

I did have to use SeaBios and Q35, along with the bios posted above:

 

 

 

 

Could you list your motherboard BIOS version? I've been trying to replicate. I'm able to get HDMI output (which was more than my old board) but it's really only text output. Once it has to render an OS (Windows Install or Ubuntu live environment) it will fail and I'll get lines or a black screen.

Link to comment
12 hours ago, onyxdrew said:

This board had a pretty new CMOS, but I couldn't get it to post with the new CPU.  I upgraded to the latest:

 

Here you go:

image.png.770d9f6fef95ebdc34cf99b2f34d8702.png

 

 

Would you be able to share your bios profile and possibly your syslinux config? Feel like I'm hitting my head against a wall using the exact same config with the settings you stated. Really wanted to make use of the 5700g apu for a windows environment.

image.thumb.png.9e453056b2db3aaf3930b89e92fe6ade.pngimage.thumb.png.757d83062b2c6c78ddb1711a48fa6c3f.png

Link to comment
Posted (edited)

I didn't have to mess with syslinux, though I tried the acpi flag when trying to get temp sensors to show up, those still don't work, hoping they will with unraid 6.10 and newer kernel.

 

image.png.7f18965438a185cd5c0a024a0e05b6cc.png

 

The bios settings are going to be hard to record, the only thing I know I did for sure was to setup the INIT display to be SLOT 3 (originally SLOT 1) instead of built in GPU, as well as setting to Forced instead of Auto for the APU, as one of the big things I was trying to save PCIE lanes, as the APU only uses 4lanes, and I moved my GPU to SLOT 3 which is also 4lanes.  I am only using it to transcode, so I don't want to waste 16 lanes on it out of 24 total.  I have two NVME drives for cache, 4 each, plus chipset 4, plus APU 4, 10gb fiber card 4, extra GPU 4, 24 total...  Hopefully that's how the CMOS is actually allocating at least, not sure how you check that.  That said, I wasn't seeing the APU port initializing until I set the APU to forced, though that was back when I didn't have anything on the HDMI port when I was booting, as I tested the setup with one monitor, now I have a monitor on both GPUs (I would move monitor back and forth after booting and validating console messages).  I haven't tried disabling that, but also don't see any reason, as I do want that port to come online even if there is no monitor connected.  I will try to remember to look at those settings next time I reboot, but not planning to do that any time soon.

Edited by onyxdrew
Link to comment
3 hours ago, onyxdrew said:

I didn't have to mess with syslinux, though I tried the acpi flag when trying to get temp sensors to show up, those still don't work, hoping they will with unraid 6.10 and newer kernel.

 

image.png.7f18965438a185cd5c0a024a0e05b6cc.png

 

The bios settings are going to be hard to record, the only thing I know I did for sure was to setup the INIT display to be SLOT 3 (originally SLOT 1) instead of built in GPU, as well as setting to Forced instead of Auto for the APU, as one of the big things I was trying to save PCIE lanes, as the APU only uses 4lanes, and I moved my GPU to SLOT 3 which is also 4lanes.  I am only using it to transcode, so I don't want to waste 16 lanes on it out of 24 total.  I have two NVME drives for cache, 4 each, plus chipset 4, plus APU 4, 10gb fiber card 4, extra GPU 4, 24 total...  Hopefully that's how the CMOS is actually allocating at least, not sure how you check that.  That said, I wasn't seeing the APU port initializing until I set the APU to forced, though that was back when I didn't have anything on the HDMI port when I was booting, as I tested the setup with one monitor, now I have a monitor on both GPUs (I would move monitor back and forth after booting and validating console messages).  I haven't tried disabling that, but also don't see any reason, as I do want that port to come online even if there is no monitor connected.  I will try to remember to look at those settings next time I reboot, but not planning to do that any time soon.

 

Completely understand. If you're able, just hit save profile under the save & exit tab to save as a file to a hdd then post here.

Link to comment
Posted (edited)
26 minutes ago, onyxdrew said:

Ah, never used that profile export option... interested to try that.  I'll let you know, I actually will be messing with it next week as I have different GPU to put in there.

Thanks!

 

I'm not sure WHAT my issue is related to because I went back to my old board (Asrock B450M Pro4) and was able to get display output on an ubuntu livecd but with nomodeset kernel flag and it would just produce graphical errors similar to the X570 Gaming X. Display would recognize output was active but no actual image using Win10 install CD or the typical Ubuntu live environment without the nomodeset flag.
 

Still not sure what it is but going to stick to gaming on the hypervisor output for now.

 

I did want to ask if you got your 5700g though direct retail or was it possibly an OEM pull.

Edited by mysticcfx
Link to comment
Posted (edited)

You may want to edit out your serial number.

 

I was able to get the same results (graphical artifacts, but grub output is visible) through BIOS config changes on my B450M Pro4. Are you saying you were able to use the APU for passthrough on the B450M Pro4?

 

The only things I could think I have wrong is the rom (which I'm using the same as Cezanne.rom posted on page 2 of this thread) or my CPU is faulty or has different microcodes.

 

Did you get yours early into the launch or sometime after?

 

Edited by mysticcfx
Link to comment

I never ran any VMs when I was using the B450, I also had a Ryzen 3600 in there.

 

I've only had the 5700G for a short while, bought it 2022-04-18.  The X570 board I've had for a long time, I got that when the 2nd gen Ryzen first came out, had a 2700x in it, then 5800x, now this 5700g (which surprisingly didn't post even tho 5800x worked fine).

Link to comment
On 4/26/2022 at 4:13 PM, onyxdrew said:

I was able to get my 5700G to pass through, I'm on a Gigabyte X570 Gaming X

 

I did have to use SeaBios and Q35, along with the bios posted above:

 

device_list.thumb.png.4de685e4ca8dea0df71eafe1565476ab.png

 

Hi, I have Renoir GPU. Where did you get working BIOS for AMD APU? I am VERY interested. MANY people have problems (actually you are first one who succeeded).

Link to comment

tola5 posted it to onedrive on page2.  I used his, as I also wasn't able to get it exported, even though I've done that in the past for other GPUs.  I might try that again, as I still don't have a way to get audio through HDMI, so I've been using a USB audio controller.  I would really like HDMI audio, since I use a reciever to convert my audio signal to balanced XLR.

Link to comment

FYI, I upgraded to 6.10.0 last night, and my VM no longer boots.  Even without the GPU attached Windows BSOD and says inaccessible boot device.  I'm going to rebuild today on Windows 11 I think and try that.

Link to comment

Maybe there is a step I did before that I'm missing now, but at least with the new release 6.10 I cannot get any config to boot and work with APU.  I tried exactly how I had it with Q35-5.1, I tried the latest Q35.6-2 as well as i440fx-6.2.  I tried Seabios like before, I tried Win 11 with on QVMF-TPM, nothing working now at all, fresh OS load each time.  It's crazy how temperamental this stuff is, good thing I pretty much gave up on this being an actual usable thing, as even when it worked, the performance wasn't good enough.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.