Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/amdgpu: adjust default dispclk (v2)

Set the default to 600Mhz if it's not set in the bios,
and bump the default to 600Mhz if it's lower than that.

Port of radeon commit:
9368931db826d57b6b88b3145a00276626b48df0

v2: clean up the code a bit

bug:
https://bugs.freedesktop.org/show_bug.cgi?id=91896

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

+6 -2
+6 -2
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c
··· 672 672 /* disp clock */ 673 673 adev->clock.default_dispclk = 674 674 le32_to_cpu(firmware_info->info_21.ulDefaultDispEngineClkFreq); 675 - if (adev->clock.default_dispclk == 0) 676 - adev->clock.default_dispclk = 54000; /* 540 Mhz */ 675 + /* set a reasonable default for DP */ 676 + if (adev->clock.default_dispclk < 53900) { 677 + DRM_INFO("Changing default dispclk from %dMhz to 600Mhz\n", 678 + adev->clock.default_dispclk / 100); 679 + adev->clock.default_dispclk = 60000; 680 + } 677 681 adev->clock.dp_extclk = 678 682 le16_to_cpu(firmware_info->info_21.usUniphyDPModeExtClkFreq); 679 683 adev->clock.current_dispclk = adev->clock.default_dispclk;