Radeon 5700XT - Memory clock (MCLK) locked at 875MHZ (Max)
Brief summary of the problem:
After upgrading to a 144HZ monitor, MCLK (/sys/class/drm/card0/device/pp_dpm_mclk) gets locked at maximum frequency, even if I change the frequency to 60 or 75HZ.
I belive that the KMS pick from the edid the default resolution and refresh frequency, and apply it. After login to gnome, it changes it back to 75HZ, but MCLK gets locked at 875MHZ. With this frequency, my memory modules goes to 60C, and idle power consumption gets 34w.
If after change my refresh rate to 75HZ, and perform a Suspent to RAM, then, when system wakes, MCLK can be changed again. I always use power_dpm_force_performance_level on "auto", and it works very well after suspending my system to RAM.
If I put back my old 75HZ, I dont have this problem, so I belive that once used a 144HZ refresh rate, I will need to shutdown the card (like suspending to ram) to make it lower down the MCLK using a slower refresh rate.
Hardware description:
- CPU: AMD Ryzen 3700x
- GPU: PowerColor RedDevil 5700XT
- System Memory: 32GB 3200Mhz
- Display(s): Single LG 34GL750 (Ultrawide 2560x1080p resolution at 144MHZ maximum)
- Type of Diplay Connection: DisplayPort (tested with two different cables)
System infomration:
- Distro name and Version: Gentoo Linux (Base 2.7)
- Kernel version: 5.8.10
- Custom kernel: Gentoo-Sources 5.8.10
- AMD package version: No Package
- Mesa: 20.1.7
How to reproduce the issue:
- Boot the system with a monitor with native and default resolution like 2560x1080 at 144HZ refresh rate. After that, MCLK get stucked at 875MHZ, even setting /sys/class/drm/card0/device/power_dpm_force_performance_level to "low" or auto. If you suspend the system to RAM, MCLK is changed by power_dpm_force_performance_level as expected.
Attached files:
- dmesg_afterboot.txt (Dmesg log right after booting and starting a gnome session)
- dmesg_aftter_suspent_to_ram.txt (Dmesg log after suspending and wake from ram)
- Xorg.0.log (Xorg log after suspending and wake from ram)