Adding Vega Control Data to Clover config.plist
Manual Method
1. Mount your EFI partition and make a copy of your current config.plist and save in /EFI/Clover just in case something goes wrong.
2. Open your
active config.plist with a code or text editor and move down the file until you find the "
Devices" section, and then move down to the "
Properties" sub section.
3. Highlight all of the following code and Copy/Paste it into your config.plst after the <dict> (below the
Properties key) to create a new Key for the PCI path of the Vega GPU:
Code:
<key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)</key>
<dict>
</dict>
Note-1: I have attached a stripped out config.plist as an example with the above code from Step 3 already in place:
The result should look something like this ....
View attachment 373691
Although i'm sure that the PCI device path for your Vega GPU will be the same for most users you should check that it is correct for your system by using GFXUTIL (attached to this post), this will also ensure that the device has the correct GFX0 ACPI identity. Unzip the archive and open Terminal, change the current path (CD) to the folder you extracted GFXUTIL in and execute the following command:
GFXUTIL should return with the device path of your Vega GPU :-
Code:
MonkeyMac-Pro-2018:~ Jay$ cd /Users/Jay/Downloads/gfxutil-1.76b
MonkeyMac-Pro-2018:gfxutil-1.76b Jay$ ./gfxutil -f GFX0
DevicePath = PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)
MonkeyMac-Pro-2018:gfxutil-1.76b Jay$
If the PCI Device Path for your Vega is different to the key value in the code you inserted in Step 3 then simply copy the PCI Device Path from the terminal output of GFXUTIL and paste it into your config.plist, over-writing the value from the example code above.
Note-2: If you get an error such as "GFX0 device not found" or "unsupported registry entry" then your Vega GPU most likely does not have the
GFX0 ACPI identity which is critical for correct operation, installing Lilu + WhatEverGreen will correct this issue for you (see
this guide for more info).
If you decide
not to install WhatEverGreen and you still get the error "GFX0 device not found" or "unsupported registry entry" then try using 'display' in place of GFX0 with GFXUTIL:-
Note-3: Both myself and others have found that having the Clover ACPI Fix/Rename "Change PEG0 to GFX0" enabled in your config.plist will cause problems ... if you have this fix in your config.plist then you should remove it, reboot and try GFXUTIL again. As Detailed in
Note-2 above, WhatEverGreen will take care of the
GFX0 ACPI identity for the Vega GPU but in a more specific way rather than the generic/global rename method employed by Clover.
4. Now right click on the VGTab_XXXX.kext on the desktop and select
Show Package Contents, expand the
Contents folder and open the
info.plist with your code or text editor, move all the way to the bottom of the file where you see the key "
aty_properties" that includes a large 'data' value for the property
PP_PhmSoftPowerPlayTable.
5. Highlight all the code between <dict> and </dict> (below the "
aty_properties" key) as shown below :-
View attachment 373694
6. Copy/Paste the high-lighted code into your config.plist between the <dict> and </dict> below the new key value you created in Step 3, the result should look something like this :-
View attachment 373695
7. Check your work carefully, ensure that you keep the code structure correct, if all looks good then save your config.plist.
8. A quick and easy way to check that there are no syntax errors in your config.plist is to open it with Clover Configurator, Click on the
Devices section, then on
Properties on the lower tab bar, select the new PCI key you created in Step 3, you should see all of the property values that you inserted in Step 6, you can also use Xcode or PlistEdit Pro to check that the edits are correct:-
View attachment 373696 View attachment 373697
If you get a formatting or syntax error then you've made a mistake, recheck you code, if in doubt start you should start again using a copy of the backup you made in Step 1.
9. If everything looks ok then your good to go, if you have previously installed the
VGTab kext in /L/E or /EFI/Clover/Kexts/Other then remove it and rebuild the kext caches if necessary ( I use
Kext Utility).
10. Finally reboot.
__________________________________________________________
Automated Method
User
@corporatenewt has written a python script called
VGTabMerge that automates the above manual process. Full details of how to download, install and use the script can be found at his Git-Hub Repository :-
https://github.com/corpnewt/VGTabMerge
Before running the script I recommend that you create a backup of your current config.plist as detailed in Step 1 of the manual method.
Important: The Automated method will always assume that the PCI Device Path for the Vega card is :-
Code:
PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)
Before running the automated script you may want to first check that this is correct for your system using the method detailed in Step 3 of the manual method. If it does not match then you will have to manually alter it after the script has completed or use the manual method instead.