Skip to content

Commit e17a682

Browse files
Timur Kristófgregkh
authored andcommitted
drm/amd/pm/ci: Don't disable MCLK DPM on Bonaire 0x6658 (R7 260X)
commit 85371c5 upstream. The old radeon driver has a documented workaround in ci_dpm.c which claims that Bonaire 0x6658 with old memory controller firmware is unstable with MCLK DPM, so as a precaution I disabled MCLK DPM on this ASIC in amdgpu. Note that the old MC firmware is not actually used with amdgpu, but in theory it's possible that the VBIOS sets up the ASIC with an old MC firmware that is already running when amdgpu initializes (in which case amdgpu doesn't load its own firmware). What I expected to happen is that the GPU would simply use its maximum memory clock, and indeed this is what seemed to happen according to amdgpu_pm_info which reads the current MCLK value from the SMU. However, some users reported a huge perf regression and upon a closer look it seems that the GPU seems to not actually use the highest MCLK value, despite the SMU reporting that it does. Let's not disable MCLK DPM on Bonaire 0x6658 (R7 260X). Keep MCLK DPM disabled on R9 M380 in the 2015 iMac because that still hangs if we enable it. Fixes: 9851f29 ("drm/amd/pm/ci: Disable MCLK DPM on problematic CI ASICs") Signed-off-by: Timur Kristóf <timur.kristof@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit d34acad) Cc: stable@vger.kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent 9f6b301 commit e17a682

1 file changed

Lines changed: 2 additions & 5 deletions

File tree

  • drivers/gpu/drm/amd/pm/powerplay/hwmgr

drivers/gpu/drm/amd/pm/powerplay/hwmgr/hwmgr.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -106,11 +106,8 @@ int hwmgr_early_init(struct pp_hwmgr *hwmgr)
106106
hwmgr->od_enabled = false;
107107
switch (hwmgr->chip_id) {
108108
case CHIP_BONAIRE:
109-
/* R9 M380 in iMac 2015: SMU hangs when enabling MCLK DPM
110-
* R7 260X cards with old MC ucode: MCLK DPM is unstable
111-
*/
112-
if (adev->pdev->subsystem_vendor == 0x106B ||
113-
adev->pdev->device == 0x6658) {
109+
/* R9 M380 in iMac 2015: SMU hangs when enabling MCLK DPM */
110+
if (adev->pdev->subsystem_vendor == 0x106B) {
114111
dev_info(adev->dev, "disabling MCLK DPM on quirky ASIC");
115112
adev->pm.pp_feature &= ~PP_MCLK_DPM_MASK;
116113
hwmgr->feature_mask &= ~PP_MCLK_DPM_MASK;

0 commit comments

Comments
 (0)