- Installed Operating Systems: Catalina 11.6.1
- CPU: Ryzen 5 3600
- Motherboard: Gigabyte B450I Aorus Pro WiFi
- RAM: 16GB DDR4 3200MHz
- Graphics: Asus Radeon R7 240
- HDD: KINGSTON SA400S37240G 240GB - CT500P1SSD8 500GB
- LAN: Intel I211
- Wireless: Intel(R) Dual Band Wireless-AC 9260
- Sound: Onboard
- Other: USB Wireless Mouse and Keyboard
- Bootloader: OpenCore 0.7.5
- BIOS Version: F51D
The GPU R7 240 is not natively supported by Big Sur, I followed the guide at here to fake id the GPU, but the original guide did not work for this GPU, I found another solution to change the ID of the GPU. The steps are similar to the mentioned guide on Opencore, I am going to explain what have been change to make it work.
- Finding a suitable PCI ID:
- I found the list of natively supported AMD GPU on this page. The list is for Mac OS Catalina but you have a general idea what is looking for. According to the list, my GPU "R7 240" is not supported, but the "R7 250X" is. >
* pci device: 683d - Cape Verde XT [Radeon HD 7770/8760 / R7 250X]
- My GPU "R7 240" has the device-id 0x6613 and I had to change the device-id into 0x683d.
- I found the list of natively supported AMD GPU on this page. The list is for Mac OS Catalina but you have a general idea what is looking for. According to the list, my GPU "R7 240" is not supported, but the "R7 250X" is. >
- Finding the ACPI Path of the GPU:
- Follow the steps in the guide, I found the ACPI Path for my GPU is "\SB.PCI0.GPP8". I triple checked this value in Windows, Linux and Mac OS.
- Making the SSDT:
- I compiled the SSDT, put it into EFI/OC/ACPI/ and changed the config.plist, but it did not work, I attached the file SSDT-GPU-SPOOF.dsl.txt
In MacOS, by using the application Hackintool, I saw that my there are two devices that have the same ACPI path:
The differences are the suffixes: GFX0 and HDAU. I have tried to use the ACPI Path "\SB.PCI0.GPP8.GFX0" in SSDT but it also did not work.
I found another topic here. @rich4653 suggested to create an GFX0 using SSDT and change the device-id through DeviceProperties, I followed his approach and did two steps:
- I used the following SSDT, compiled and put it into EFI/OC/ACPI and update the config.plist.
Code:
DefinitionBlock ("", "SSDT", 2, "DRTNIA", "AMDGPU", 0x00001000)
{
External (_SB_.PCI0.GPP8, DeviceObj)
Scope (\_SB.PCI0.GPP8)
{
Device (GFX0)
{
Name (_ADR, Zero) // _ADR: Address
}
}
}
- The following entry has been added into DeviceProperties of config.plist:
And it works, the device id has been changed and Mac OS Big Sur can recognise the GPU, but hardware acceleration does not work.