RX 7900XT clock speed does not go above ~100 MHz on Fedora 38/ Pop!_OS 22.04 LTS

Recently I swapped out my RTX 3060 Ti for an RX 7900XT. I have this unusual problem on Fedora 38 and Pop!_OS where the clock speeds appear to not be able to ramp up beyond ~5% of what they are capable of. My stress test has been Minecraft using complementary shaders (an OpenGL game). It gets about 4 fps. If I attempt to manually increase the clock speed or the fan speed in corectrl, it gets ignored. Something is locking these settings. I have installed corectrl to monitor it and the clock speed appears stuck in the range 50-100 MHz. I figured that with this card being out for about 8 months that most of the rough edges would have been smoothed out by now, but I guess I was wrong. I even tried it on fresh installs of these two distros. Does anyone else have this problem? Weirdly, it works flawlessly on OpenSUSE. I tried testing it on Manjaro but it would not boot after applying the initial updates. I will be testing it on Debian 12 shortly.

Let me know if there any command line outputs that would be useful for troubleshooting this. I am at a loss. The fact that it works on openSUSE proves that the driver and firmware support is there, but I don’t know why it refuses to work on Pop!_OS and Fedora. I tried installing the proprietary AMD drivers, but that seemed to break my fresh Fedora install. All I get is a white screen with a computer with a sad face that says “Oh no! Something has gone wrong. A problem has occurred and the system can’t recover. Please log out and try again.”

Basic machine specs:

GPU: RX 7900XT Sapphire pulse
CPU: Ryzen 9 7950X
RAM: 4x G.Skill Ripjaws 32GB
Motherboard: Gigabyte X670E Aorus Master (Bios F12)
power supply: Corsair HX1000i

update:

While trying this on Debian 12 (which also has this problem) I noticed this on the screen while it was booting into the OS:

It looks to me like it is not loading the firmware properly for some reason.

Hello, curiously i have the same problem when I set my screen at 144Hz
No problem at all if i set refresh rate to 120Hz
Someone should write a bug report for this

It might be related to this bug:

I have been researching getting a newer Radeon card, and came across
this bug. It appears that it might be related to a firmware blob in the newest amdgpu driver.

Older kernel versions would have the memory clock stuck at max caused by incorrect vertical-blank timings for the display(s).

This one is also related to v-blank timings, but it’s a bit more complicated I believe.

There’s also this fix, which may or may not work (I haven’t tested it).

Thank you for that reference, I will look through it shortly. What puzzles me is why openSUSE appears to be an exception to this rule, despite the fact that it is running the same amdgpu version and kernel as Fedora. It also happens on Debian 12, which is using kernel 6.1. I guess for now I boot openSUSE and just never update it until this gets resolved, but I would prefer to not be limited to one distro if this never gets resolved.

I can also confirm Kubuntu 23.04 also works fine. (I assume Ubuntu 23.04 would also work.)