public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [stable] please consider drm radeon kms agp release
@ 2010-05-31 14:42 Martin Steigerwald
  2010-05-31 17:02 ` Greg KH
  0 siblings, 1 reply; 5+ messages in thread
From: Martin Steigerwald @ 2010-05-31 14:42 UTC (permalink / raw)
  To: stable; +Cc: Jérôme Glisse, Alex Deucher, linux-kernel


[-- Attachment #1.1: Type: Text/Plain, Size: 512 bytes --]


Hi Greg, hi stable kernel team,

Please consider the attached patch from Jérôme Glisse. It fixes drm radeon 
KMS after coming out from a snapshot cycle [1] - no matter whether I use 
userspace software suspend or TuxOnIce.

Verified on my notebook ThinkPad T42 and by cedric, the reporter of above 
bug.

Thanks.

[1] https://bugzilla.kernel.org/show_bug.cgi?id=15969#c14

Ciao,
-- 
Martin 'Helios' Steigerwald - http://www.Lichtvoll.de
GPG: 03B0 0D6C 0040 0710 4AFA  B82F 991B EAAC A599 84C7

[-- Attachment #1.2: 0001-drm-radeon-kms-release-AGP-bridge-at-suspend.patch --]
[-- Type: text/x-patch, Size: 2043 bytes --]

From bc19ff2e0bff31523af06bc089b71b4f46478837 Mon Sep 17 00:00:00 2001
From: Jerome Glisse <jglisse@redhat.com>
Date: Fri, 21 May 2010 14:19:07 +0200
Subject: [PATCH] drm/radeon/kms: release AGP bridge at suspend

I think it's good to release the AGP bridge at suspend
and reacquire it at resume. Also fix :
https://bugzilla.kernel.org/show_bug.cgi?id=15969

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
---
 drivers/gpu/drm/radeon/radeon.h        |    1 +
 drivers/gpu/drm/radeon/radeon_agp.c    |    5 +++++
 drivers/gpu/drm/radeon/radeon_device.c |    2 ++
 3 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
index 034218c..4c7204a 100644
--- a/drivers/gpu/drm/radeon/radeon.h
+++ b/drivers/gpu/drm/radeon/radeon.h
@@ -566,6 +566,7 @@ typedef int (*radeon_packet3_check_t)(struct radeon_cs_parser *p,
  */
 int radeon_agp_init(struct radeon_device *rdev);
 void radeon_agp_resume(struct radeon_device *rdev);
+void radeon_agp_suspend(struct radeon_device *rdev);
 void radeon_agp_fini(struct radeon_device *rdev);
 
 
diff --git a/drivers/gpu/drm/radeon/radeon_agp.c b/drivers/gpu/drm/radeon/radeon_agp.c
index 28e473f..f40dfb7 100644
--- a/drivers/gpu/drm/radeon/radeon_agp.c
+++ b/drivers/gpu/drm/radeon/radeon_agp.c
@@ -270,3 +270,8 @@ void radeon_agp_fini(struct radeon_device *rdev)
 	}
 #endif
 }
+
+void radeon_agp_suspend(struct radeon_device *rdev)
+{
+	radeon_agp_fini(rdev);
+}
diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c
index 7b629e3..ed6a724 100644
--- a/drivers/gpu/drm/radeon/radeon_device.c
+++ b/drivers/gpu/drm/radeon/radeon_device.c
@@ -748,6 +748,8 @@ int radeon_suspend_kms(struct drm_device *dev, pm_message_t state)
 	/* evict remaining vram memory */
 	radeon_bo_evict_vram(rdev);
 
+	radeon_agp_suspend(rdev);
+
 	pci_save_state(dev->pdev);
 	if (state.event == PM_EVENT_SUSPEND) {
 		/* Shut down the device */
-- 
1.7.0.1


[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-06-23 20:38 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-05-31 14:42 [stable] please consider drm radeon kms agp release Martin Steigerwald
2010-05-31 17:02 ` Greg KH
2010-05-31 19:38   ` Jerome Glisse
2010-05-31 21:56     ` Martin Steigerwald
2010-06-23 20:28       ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox