Jump to content

ESXi macOS 10.15.7/11.0.1 - AMD GPU Passthrough no signal/output


colix
 Share

6 posts in this topic

Recommended Posts

Hi there,

 

i've managed to get macOS 10.15.7 / 11.0.1 working as virtual machines on VMware ESXi Hypervisor.
Wifi and BT (both passthrough), NIC and the SVGA display adapter ESXi provides do work properly on both machines, but i'm having a hard time on passing through an AMD Radeon R9 270 / 7850 GPU to the guest system's. i know this card does not work OOB but other users seem to have similar problems with OOB ones. The GPU is getting recognized and titled correctly if using Whatevergreen kext, but there is never any output from the DVI, HDMI or DP connectors.

 

Hardware:

  • Mainboard: Supermicro H11SSL-NC
  • CPU: AMD EPYC 7251 8-Core Processor
  • Hypervisor: ESXi-7.0b-16324942-standard
  • GPU: AMD Radeon R9 270 / 7850 2GB (vendor id: 1002, device id: 6819)

 

i tried a few things:

  •     Whatevergreen Kext Off:
    • dGPU is listed as "display" on  mac->system report
    • dGPU acpi-path: _SB_.PCI0.PE60.SF10
  •     Whatevergreen Kext On:
    • dGPU is listed with correct name "AMD Radeon R9 270" on mac->system report
    • dGPU acpi-path: _SB_.PCI0.PE60.GFX0
  •     Custom SSDT for injecting GPU vBIOS as mentioned by User "shantur" in virtualization section on this forum.
    • macOS seems not to be able to read the vBIOS from the GPU itself because of the way esxi generates/populates the acpi-path to "xxxn.xxnn.SF10"
    • as far as i can tell from the log entries, the injection seems to work and is only failing shortly after on "AMDFramebuffer".

 

log command:

log show --last boot | -i -E "amd|radeon|sf10|gfx0"

which gives me following output:

user@MacPro ~ % log show --last boot | grep -i -E "amd|radeon|sf10|gfx0"
2020-12-09 22:00:13.490190+0100 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) SSDT 0x000000000DF7E000 010135 (v02 ACDT   AMDGPU   00001000 INTL 20200528)
2020-12-09 22:00:13.490191+0100 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) SSDT 0x000000000DF7E000 010135 (v02 ACDT   AMDGPU   00001000 INTL 20200528)
2020-12-09 22:00:13.510154+0100 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) [SF10]
2020-12-09 22:00:13.510155+0100 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) [SF10]
2020-12-09 22:00:13.510347+0100 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) (SSDT:  AMDGPU) while loading table
2020-12-09 22:00:13.510348+0100 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) (SSDT:  AMDGPU) while loading table
2020-12-09 22:00:53.446592+0100 0x6e4      Default     0x0                  0      0    kernel: (AMDRadeonX4000) Got debug policy value 0x0
gpu 0xb572        pci 0x100000198 IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PE60@17/IOPP/GFX0@0
gpu 0xb572       gpuc 0x1000003fc     /AMD7000ControllerWrangler
2020-12-09 22:00:58.729794+0100 0x6f8      Default     0x0                  78     0    kernelmanagerd: Received kext load notification: com.apple.kext.AMDSupport
2020-12-09 22:00:58.729811+0100 0x6f8      Default     0x0                  78     0    kernelmanagerd: Received kext load notification: com.apple.kext.AMD7000Controller
2020-12-09 22:00:58.730143+0100 0x6f8      Default     0x0                  78     0    kernelmanagerd: Received kext load notification: com.apple.kext.AMDRadeonX4000HWServices
2020-12-09 22:00:58.730148+0100 0x6f8      Default     0x0                  78     0    kernelmanagerd: Received kext load notification: com.apple.kext.AMDRadeonServiceManager
2020-12-09 22:00:58.730157+0100 0x6f8      Default     0x0                  78     0    kernelmanagerd: Received kext load notification: com.apple.kext.AMDRadeonX4000
2020-12-09 22:00:58.730162+0100 0x6f8      Default     0x0                  78     0    kernelmanagerd: Received kext load notification: com.apple.kext.AMDRadeonX4030HWLibs
2020-12-09 22:01:58.891208+0100 0x6f6      Default     0x0                  78     0    kernelmanagerd: Received kext unload notification: com.apple.kext.AMDRadeonX4000
Can't get value for key 'AMDFramebuffer'
IOResources: IOAFTriage-GFX0 = 010203
2020-12-09 22:02:25.339410+0100 0x1124     Default     0x0                  0      0    kernel: (AppleGraphicsDeviceControl) AGDCC: Unauthorized client 'PerfPowerService' (IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PE60@17/IOPP/GFX0@0/AMD7000ControllerWrangler)

 

Does someone know how to resolve this error?

 

 

 

Screenshots of the system:

 

1083825835_Bildschirmfoto2020-12-09um23_10_49.png.8893b2b7ebd83f38fde8bce960f64929.pngimageproxy.php?img=&key=c17464ef1b1b51c7

 

1542532244_Bildschirmfoto2020-12-09um22_13_31.png.39d7b82ff8f5738e93f198c828ca9b74.png

 

Bildschirmfoto 2020-12-09 um 22.14.50.png

 

1408117930_Bildschirmfoto2020-12-09um22_15_00.thumb.png.8bf2c55ca7a415738b68ead00d66c10c.png

 

1177247138_Bildschirmfoto2020-12-09um22_17_52.thumb.png.cbb1f0e28c25bfadc57be0b702e99ce9.png

 

1975430644_Bildschirmfoto2020-12-09um22_18_36.thumb.png.ab89975fea2a81592b4aa0654013854a.png

 

1253585098_Bildschirmfoto2020-12-09um22_21_43.thumb.png.3c7cd08b2ae0c25f3539a1f748af98f6.png

 

 

 

Attachment: SSDT-GPU-BIOS-1.dsl

SSDT for GPU vBIOS injection

 

 

Edited by colix
Link to comment
Share on other sites

Reaching out to the people who also were confronted with similar problems.

@shantur Did you ever had the same error while injecting vBIOS? what about the error message that mentions "AGDCC: Unauthorized client 'PerfPowerService'?

 

@kokozaurs Have you made any progress with your virtual hackintosh and AMD GPU passthrough?

 

Thanks in advance :)

Link to comment
Share on other sites

  • 1 month later...

I recently did this on i9900k + vega. Downloaded esxi 7.01c and vmtools (vmug). I used etcher to burn esxi to usb. Installed it on itself. Remote into web ui, enable ssh, sftp or scp the unlocker to the box, ssh'd into the box, ran the command per repo instructions, then run the /sbin/auto-backup.sh  to save the changes. Restarted it, copied unlocker back over and ran the verification to make sure it works. Used standard create a hackintosh install iso guide for catalina copied that over to esxi, setup a vm on nvme data store with apfs. Was able to install it and interact with it via esxi web ui no problem, I added the latest vmtools into the vmtools directory on the esxi  usb drive to enable the "install vm tools" button in the web ui. Tried with big sur couldn't get it to work. 

 

I can't get gpu passthrough to work though and I get the invalid ram config notification. I currently only have one graphics card, esxi wouldn't let it go so I ran `run esxcli system settings kernel set -s vga -v FALSE ` which seemed to help but not fully as there was still text on the screen (see screenshot). In profiler It also seems like the vm sees the pcie card but can't line it up with a device. I think it just needs whatevergreen but I haven't figured out how to install that individually or use open core with vmware. I haven't tried yet as I just updated the native hack on it from clover. 

 

Also important to note, there is a bug with usb sticks not persisting data and gpu passthrough requiring a restart but never saving the data in v7 pre 7.01c. I think its close to working.

 

Here some screen shots: 

 

localhost.ashlab.dev - VMware ESXi 2021-01-17 02-52-06.png

localhost.ashlab.dev - VMware ESXi 2021-01-17 02-51-25.png

localhost.ashlab.dev - VMware ESXi 2021-01-17 02-50-52.png

localhost.ashlab.dev - VMware ESXi 2021-01-17 02-50-24.png

localhost.ashlab.dev - VMware ESXi 2021-01-17 02-49-54.png

localhost.ashlab.dev - VMware ESXi 2021-01-17 02-48-56.png

localhost.ashlab.dev - VMware ESXi 2021-01-17 02-48-37.png

localhost.ashlab.dev - VMware ESXi 2021-01-17 02-48-05.png

localhost.ashlab.dev - VMware ESXi 2021-01-16 15-47-02.png

localhost.ashlab.dev - VMware ESXi 2021-01-16 15-46-31.png

IMG_20210117_030630.jpg

Link to comment
Share on other sites

  • 2 years later...

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
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  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.

 Share

×
×
  • Create New...