colix Posted December 9, 2020 Share Posted December 9, 2020 (edited) 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: Attachment: SSDT-GPU-BIOS-1.dsl SSDT for GPU vBIOS injection Edited December 15, 2020 by colix Quote Link to comment Share on other sites More sharing options...
colix Posted December 15, 2020 Author Share Posted December 15, 2020 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 Quote Link to comment Share on other sites More sharing options...
Mysy Posted December 20, 2020 Share Posted December 20, 2020 I'm plan use esxi and create macos VM, with through AMD RX550. My ESXI use HPE server, intel E3 CPU. Doesn't finish to those GPU setting step yet. Quote Link to comment Share on other sites More sharing options...
ghosthuntor Posted January 21, 2021 Share Posted January 21, 2021 Can you share your installing experience , the macosx setup img, vmdk, or EFI ? Quote Link to comment Share on other sites More sharing options...
ashtoni Posted January 23, 2021 Share Posted January 23, 2021 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: Quote Link to comment Share on other sites More sharing options...
hejiajin Posted May 15, 2023 Share Posted May 15, 2023 (edited) Hi there, I recently found the answer, here. I have already solved it, use opencore to guide, and then use the vbiso to load the graphics card to drive the graphics card. hope this helps https://www.insanelymac.com/forum/topic/345301-esxi-6770-amd-gpu-passhtrough/?do=findComment&comment=2780618 Edited May 15, 2023 by hejiajin Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.