Bug 98004

Summary: RX470 doesn't reclock memory if a second display has been plugged in at some point
Product: DRI Reporter: Jonathan Moerman <jonathanmoerman>
Component: DRM/AMDgpuAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: minor    
Priority: medium    
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Log from Linux 4.4 + amdgpu-pro kernel module none

Description Jonathan Moerman 2016-10-01 14:31:01 UTC
If a second display has been plugged in the memory clock gets stuck at the highest frequency, even if the display is disabled (using xrandr) or unplugged again.

How to reproduce: plug in a second display and either disable it or unplug it again, the memory will continue to be clocked at its maximal frequency (Here: 1750Mhz).

Kernels used for testing: Linux 4.4 (amdgpu-pro kernel driver), 4.7, 4.8rc5

The hardware is perfectly capable of clocking back to its lowest frequency if only one display is actually enabled. (It works as expected in Windows)

This issue doesn't cause any problems other than using more watts than necessary.

I'm not currently using the system with the RX470 GPU, I'll upload a dmesg log in a few minutes.

I'm sorry if this isn't the correct place to post this bug, I'm new here.
Comment 1 Jonathan Moerman 2016-10-01 14:47:43 UTC
Created attachment 126947 [details]
Log from Linux 4.4 + amdgpu-pro kernel module
Comment 3 Jonathan Moerman 2016-10-03 06:53:27 UTC
Ah, so it is fixed in drm next. I should have some time to test it today.
Comment 4 Jonathan Moerman 2016-10-03 16:09:00 UTC
I can confirm that it is fixed in drm-next-4.9.
(On first boot eventually the clocks got stuck at the minimum frequencies (both memory and gpu), and the system hung when trying to shut down, but that's something for another bug report. (No errors in the dmesg log.) Right now it works fine.)

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.