| From 8097d94116d0c17e774ba4c8256e774018dc2a46 Mon Sep 17 00:00:00 2001 |
| From: Alex Deucher <alexander.deucher@amd.com> |
| Date: Tue, 7 Jan 2014 13:51:51 -0500 |
| Subject: drm/radeon/dpm: disable mclk switching on desktop RV770 |
| |
| From: Alex Deucher <alexander.deucher@amd.com> |
| |
| commit 8097d94116d0c17e774ba4c8256e774018dc2a46 upstream. |
| |
| Mclk switching doesn't seem to work reliably on these |
| cards. Most RV770 boards specify the same mclk for all |
| performance levels anyway so in most cases, this has |
| no affect. |
| |
| Bug: |
| https://bugs.freedesktop.org/show_bug.cgi?id=73067 |
| |
| Signed-off-by: Alex Deucher <alexander.deucher@amd.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/gpu/drm/radeon/rv770_dpm.c | 6 ++++++ |
| 1 file changed, 6 insertions(+) |
| |
| --- a/drivers/gpu/drm/radeon/rv770_dpm.c |
| +++ b/drivers/gpu/drm/radeon/rv770_dpm.c |
| @@ -2531,6 +2531,12 @@ bool rv770_dpm_vblank_too_short(struct r |
| (rdev->pdev->subsystem_device == 0x1c42)) |
| switch_limit = 200; |
| |
| + /* RV770 */ |
| + /* mclk switching doesn't seem to work reliably on desktop RV770s */ |
| + if ((rdev->family == CHIP_RV770) && |
| + !(rdev->flags & RADEON_IS_MOBILITY)) |
| + switch_limit = 0xffffffff; /* disable mclk switching */ |
| + |
| if (vblank_time < switch_limit) |
| return true; |
| else |