Contribute
Register

RX 6600 XT: Henbury framebuffer and Zero RPM in Monterey 12.3

Joined
Dec 10, 2010
Messages
1,377
Motherboard
Gigabyte Z390 Aorus Elite
CPU
i9-9900K
Graphics
RX 6600 XT
Mobile Phone
  1. iOS
Note: this post is about a way to disable Zero RPM feature in a RX 6600 XT graphic card and and his relationship with the graphic issues seen in 5000 and 6000 AMD GPUs after updating to Monterey 12.3.

Zero RPM

By default, fans of the RX 6600 XT (like other AMD cards) are stopped below 60º, it is what is known as Zero RPM. This has as main advantage the absence of noise except when there is a high graphic requirement.
Users who have this card in a Hackintosh with dual boot have observed that temperature, at idle system, is usually 10-15º lower in Windows than in macOS (35-40º vs 50º). In both systems Zero RPM keeps fans stopped until 60º is reached.

On Windows it is easy to enable/disable Zero RPM from the Radeon software that has this option in custom settings. But on macOS there is no such possibility. So far, existing option to disable Zero RPM in macOS is the creation on Windows, from the AMD card ROM, of a SoftPowerPlayTable (sPPT) (contains the graphics card settings in the form of a hexadecimal value) that OpenCore can load into DeviceProperties. If the sPPT is saved in Windows after disabling Zero RPM, macOS when loading the sPPT also works with Zero RPM disabled. But it is a complex task that requires specific programs and is not within the reach of the inexperienced user.

AMD 5000 and 6000 in Monterey 12.3

As you can read in this and other forums, the release of macOS Monterey 12.3 has broken the operation of Radeon 5000 and 6000 families, not in all cases but in quite a few of them judging by comments posted on the forums. This problem has also happened on real Macs but it seems to be more much more frequent on Hackintosh. 5500, 5700, 6800 and 6900 models (XT and non XT) have been most affected. 6600 models (XT and non XT) seem to be free of the issue that manifests itself in a very evident drop in graphic performance after updating to 12.3, in some cases the system becomes unusable and in other cases a big part of the graphic power is simply lost.

My GPU is RX 6600 XT so it has not been affected by this issue.

Solutions have been proposed to fix this. The simplest is to add in DeviceProperties of config.plist some properties that set Henbury framebuffer for each of the 4 ports of this GPU. By default Radeon framebuffer(ATY,Radeon) is loaded. But, in AMDRadeonX6000Framebuffer.kext >> Contents >> Info.plist, AMDRadeonNavi23Controller has "ATY,Henbury" and 6600 series are Navi 23. This is why this framebuffer is specifically proposed.

The patch is added in this way (thanks @tedyun and others before him):
XML:
<key>DeviceProperties</key>
    <dict>
        <key>Add</key>
        <dict>
            <key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)</key>
            <dict>
                <key>@0,name</key>
                <string>ATY,Henbury</string>
                <key>@1,name</key>
                <string>ATY,Henbury</string>
                <key>@2,name</key>
                <string>ATY,Henbury</string>
                <key>@3,name</key>
                <string>ATY,Henbury</string>
            </dict>
        </dict>
        <key>Delete</key>
        <dict/>
    </dict>

Note: PCI path to the GPU may be the same on your system but it is convenient to check it with Hackintool (app) or gfxutil (Terminal utility).

Patch and Zero RPM

Although my GPU has not been affected by this Monterey 12.3 issue, I have tried the patch motivated by curiosity to check if the card works differently (better or worse).

When booting with the patch, it gets my attention that the GPU temperature is, at idle system, 10-15º below the usual 50º. The cause of this is in the deactivation of the Zero RPM feature: fans spin all the time with a small drawback that is the noise generated (very low volume, almost imperceptible except in quiet environment).

Graphics performance is good with the patch. GeekBench 5 metal scores are lower but in other benchmarks such as Unigine Valley or GFXBench M they are almost identical. Maximum temperature when forcing the GPU has not changed, about 80-82º, the same as without the patch. But basic temperature at iddle system ranges from 35 to 40º. Sensations when performing common tasks on macOS are the same (excellent) with or without patch.

Unexpectedly, I have seen a new way to disable Zero RPM in macOS, it is easier to implement than creating sPPT in Windows and its subsequent transfer to macOS.

It's up to you to choose what you prefer.
  • Without patch: base temperature is around 50º, fans are usually stopped and GeekBench 5 score is higher.
  • With patch: base temperature is below 40º, fans are always running although the noise produced is very low and GeekBench 5 score is lower.
Framebuffers

This patch can be applied to the other Radeon models affected by the Monterey 12.3 issue to fix that bad behaviour and not only to disable Zero RPM.
 
Last edited:
Framebuffers available in AMDRadeonX6000Framebuffer.kext >> Contents >> Info.plist.
  • 5700 - Navi 10
    AMDRadeonNavi10Controller
    device-id: 0x73101002 0x73121002 0x73181002 0x73191002 0x731A1002 0x731B1002 0x731F1002 0x73BF1002
    framebuffer: ATY,Adder / ATY,Ikaheka
  • 5600 - Navi 12
    AMDRadeonNavi12Controller
    device-id: 0x73601002 0x73621002
    framebuffer: ATY,Sunbeam

  • 5500 - Navi 14
    AMDRadeonNavi14Controller
    device-id: 0x73401002 0x73411002 0x73431002 0x73471002 0x734F1002
    framebuffer: ATY,Python / ATY,Keelback / ATY,Boa

  • 6800 and 6900 - Navi 21
    AMDRadeonNavi21Controller
    device-id: 0x73A01002 0x73A21002 0x73A31002 0x73AB1002 0x73AE1002 0x73AF1002 0x73BF1002
    framebuffer: ATY,Belknap / ATY,Carswell / ATY,Deepbay

  • 6600 - Navi 23
    AMDRadeonNavi23Controller
    device-id: 0x73E31002 0x73FF1002 0x73E01002
    framebuffer: ATY,Henbury
 
Last edited:
Temperature before and after the patch.

temps.png
 
Awesome and informative post! Thank you!
 
@TurbineSeaplane
You are welcome!
This post was born in our comments of the other thread :)
 
Note: this post is about a way to disable Zero RPM feature in a RX 6600 XT graphic card and and his relationship with the graphic issues seen in 5000 and 6000 AMD GPUs after updating to Monterey 12.3.

Zero RPM

By default, fans of the RX 6600 XT (like other AMD cards) are stopped below 60º, it is what is known as Zero RPM. This has as main advantage the absence of noise except when there is a high graphic requirement.
Users who have this card in a Hackintosh with dual boot have observed that temperature, at idle system, is usually 10-15º lower in Windows than in macOS (35-40º vs 50º). In both systems Zero RPM keeps fans stopped until 60º is reached.

On Windows it is easy to enable/disable Zero RPM from the Radeon software that has this option in custom settings. But on macOS there is no such possibility. So far, existing option to disable Zero RPM in macOS is the creation on Windows, from the AMD card ROM, of a SoftPowerPlayTable (sPPT) (contains the graphics card settings in the form of a hexadecimal value) that OpenCore can load into DeviceProperties. If the sPPT is saved in Windows after disabling Zero RPM, macOS when loading the sPPT also works with Zero RPM disabled. But it is a complex task that requires specific programs and is not within the reach of the inexperienced user.

AMD 5000 and 6000 in Monterey 12.3

As you can read in this and other forums, the release of macOS Monterey 12.3 has broken the operation of Radeon 5000 and 6000 families, not in all cases but in quite a few of them judging by comments posted on the forums. This problem has also happened on real Macs but it seems to be more much more frequent on Hackintosh. 5500, 5700, 6800 and 6900 models (XT and non XT) have been most affected. 6600 models (XT and non XT) seem to be free of the issue that manifests itself in a very evident drop in graphic performance after updating to 12.3, in some cases the system becomes unusable and in other cases a big part of the graphic power is simply lost.

My GPU is RX 6600 XT so it has not been affected by this issue.

Solutions have been proposed to fix this. The simplest is to add in DeviceProperties of config.plist some properties that set Henbury framebuffer for each of the 4 ports of this GPU. By default Radeon framebuffer(ATY,Radeon) is loaded. But, in AMDRadeonX6000Framebuffer.kext >> Contents >> Info.plist, AMDRadeonNavi23Controller has "ATY,Henbury" and 6600 series are Navi 23. This is why this framebuffer is specifically proposed.

The patch is added in this way (thanks @tedyun and others before him):
XML:
<key>DeviceProperties</key>
    <dict>
        <key>Add</key>
        <dict>
            <key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)</key>
            <dict>
                <key>@0,name</key>
                <string>ATY,Henbury</string>
                <key>@1,name</key>
                <string>ATY,Henbury</string>
                <key>@2,name</key>
                <string>ATY,Henbury</string>
                <key>@3,name</key>
                <string>ATY,Henbury</string>
            </dict>
        </dict>
        <key>Delete</key>
        <dict/>
    </dict>

Note: PCI path to the GPU may be the same on your system but it is convenient to check it with Hackintool (app) or gfxutil (Terminal utility).

Patch and Zero RPM

Although my GPU has not been affected by this Monterey 12.3 issue, I have tried the patch motivated by curiosity to check if the card works differently (better or worse).

When booting with the patch, it gets my attention that the GPU temperature is, at idle system, 10-15º below the usual 50º. The cause of this is in the deactivation of the Zero RPM feature: fans spin all the time with a small drawback that is the noise generated (very low volume, almost imperceptible except in quiet environment).

Graphics performance is good with the patch. GeekBench 5 metal scores are lower but in other benchmarks such as Unigine Valley they are identical in both cases. Maximum temperature when forcing the GPU has not changed, about 80-82º, the same as without the patch. But basic temperature at iddle system ranges from 35 to 40º. Sensations when performing common tasks on macOS are the same (excellent) with or without patch.

Unexpectedly, I have seen a new way to disable Zero RPM in macOS, it is easier to implement than creating sPPT in Windows and its subsequent transfer to macOS.

It's up to you to choose what you prefer.
  • Without patch: base temperature is around 50º, fans are usually stopped and GeekBench 5 score is higher.
  • With patch: base temperature is below 40º, fans are always running although the noise produced is very low and GeekBench 5 score is lower.
Framebuffers

This patch can be applied to the other Radeon models affected by the Monterey 12.3 issue to fix that bad behaviour and not only to disable Zero RPM.
Confirmed 6600XT at 10-15º C lower and no perfomance loss in Monterey 12.3
Thanks!
 
6800 and 6900 - Navi 21
AMDRadeonNavi21Controller
device-id: 0x73A01002 0x73A21002 0x73A31002 0x73AB1002 0x73AE1002 0x73AF1002 0x73BF1002
framebuffer: ATY,Belknap / ATY,Carswell / ATY,Deepbay

For a Reference 6800, which framebuffer should be chosen here?
 
As mentioned in the main thread, Belknap is for 6800/6900, Carswell for the dual 6800 MPX module (but some reportedly use it successfully with 6900) and Deepbay would be for headless accelerators.
 
Don't we only need to have this set for the @0 interface?
 
Don't we only need to have this set for the @0 interface?
If you are talking about the patch, there are 4 properties (@x,name) each of them for each of the 4 ports available in the GPU. So all of them are required, to set the framebuffer for all ports.
 
Back
Top