From mboxrd@z Thu Jan 1 00:00:00 1970
From: bugzilla-daemon@bugzilla.kernel.org
Subject: [Bug 60523] Radeon DPM not working with 2 monitors attached to
Radeon HD5770 (Juniper)
Date: Thu, 15 Aug 2013 21:08:51 +0000
Message-ID:
References:
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Return-path:
Received: from mail.kernel.org (mail.kernel.org [198.145.19.201])
by gabe.freedesktop.org (Postfix) with ESMTP id 25808E5CD5
for ;
Thu, 15 Aug 2013 14:08:54 -0700 (PDT)
Received: from mail.kernel.org (localhost [127.0.0.1])
by mail.kernel.org (Postfix) with ESMTP id 53ED920343
for ;
Thu, 15 Aug 2013 21:08:53 +0000 (UTC)
Received: from bugzilla1.web.kernel.org (bugzilla1.web.kernel.org
[172.20.200.51])
by mail.kernel.org (Postfix) with ESMTP id C66DB20317
for ;
Thu, 15 Aug 2013 21:08:51 +0000 (UTC)
In-Reply-To:
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org
Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org
To: dri-devel@lists.freedesktop.org
List-Id: dri-devel@lists.freedesktop.org
https://bugzilla.kernel.org/show_bug.cgi?id=60523
--- Comment #23 from Alex Deucher ---
Ah, you have a system with gddr5 memory. The blanking period is probably too
short on your monitor to support mclk switching. Something like this will tell
you for sure:
diff --git a/drivers/gpu/drm/radeon/cypress_dpm.c
b/drivers/gpu/drm/radeon/cypress_dpm.c
index 95a66db..cfe8313 100644
--- a/drivers/gpu/drm/radeon/cypress_dpm.c
+++ b/drivers/gpu/drm/radeon/cypress_dpm.c
@@ -2169,6 +2169,8 @@ bool cypress_dpm_vblank_too_short(struct radeon_device
*rdev)
/* we never hit the non-gddr5 limit so disable it */
u32 switch_limit = pi->mem_gddr5 ? 450 : 0;
+ DRM_ERROR("vblank_time: %d switch_limit: %d", vblank_time,
switch_limit);
+
if (vblank_time < switch_limit)
return true;
else
diff --git a/drivers/gpu/drm/radeon/radeon_pm.c
b/drivers/gpu/drm/radeon/radeon_pm.c
index a44ae9a..7b4c9db 100644
--- a/drivers/gpu/drm/radeon/radeon_pm.c
+++ b/drivers/gpu/drm/radeon/radeon_pm.c
@@ -648,10 +648,15 @@ static struct radeon_ps
*radeon_dpm_pick_power_state(struct radeon_device *rdev,
/* check if the vblank period is too short to adjust the mclk */
if (single_display && rdev->asic->dpm.vblank_too_short) {
- if (radeon_dpm_vblank_too_short(rdev))
+ if (radeon_dpm_vblank_too_short(rdev)) {
+ DRM_ERROR("vblank too short\n");
single_display = false;
+ }
}
+ DRM_ERROR("single display = %d crtcs: %d", single_display,
+ rdev->pm.dpm.new_active_crtc_count);
+
/* certain older asics have a separare 3D performance state,
* so try that first if the user selected performance
*/
--
You are receiving this mail because:
You are watching the assignee of the bug.