login
Header Space

 
 

Re: [PATCH] don't suspend/resume 8xx chips

Previous thread: what's the incompatibility between hibernation and hotplug memory by Jeremy Fitzhardinge on Wednesday, March 26, 2008 - 7:17 pm. (9 messages)

Next thread: [PATCH 6/7] omfs: add checksumming routines by Bob Copeland on Wednesday, March 26, 2008 - 8:45 pm. (6 messages)
To: lkml <linux-kernel@...>
Cc: Linus Torvalds <torvalds@...>, Dave Airlie <airlied@...>
Date: Wednesday, March 26, 2008 - 7:28 pm

Recent testing has turned up some bugs in the new Intel suspend/resume code 
for old, 8xx chipsets.  So for 2.6.25 it probably makes sense to apply this 
patch, which should prevent the new code from getting called on those 
chipsets.  We should have this fixed soon, but not in time for 2.6.25 
unfortunately.  Note that this patch (along with the suspend/resume code in 
general) could use more testing.

Signed-off-by:  Jesse Barnes &lt;jesse.barnes@intel.com&gt;

diff --git a/drivers/char/drm/i915_dma.c b/drivers/char/drm/i915_dma.c
index e9d6663..6964a28 100644
--- a/drivers/char/drm/i915_dma.c
+++ b/drivers/char/drm/i915_dma.c
@@ -762,6 +762,11 @@ int i915_driver_load(struct drm_device *dev, unsigned 
long
        unsigned long base, size;
        int ret = 0, mmio_bar = IS_I9XX(dev) ? 0 : 1;

+       if (!IS_I9XX(dev)) {
+               dev-&gt;driver-&gt;suspend = NULL;
+               dev-&gt;driver-&gt;resume = NULL;
+       }
+
        /* i915 has 4 more counters */
        dev-&gt;counters += 4;
        dev-&gt;types[6] = _DRM_STAT_IRQ;
--
To: Jesse Barnes <jesse.barnes@...>
Cc: lkml <linux-kernel@...>, Linus Torvalds <torvalds@...>, Dave Airlie <airlied@...>
Date: Friday, March 28, 2008 - 10:40 am

Are you sure your driver needs no state saving?

Maybe register suspend that printks, returns error?
							Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To: Pavel Machek <pavel@...>
Cc: lkml <linux-kernel@...>, Linus Torvalds <torvalds@...>, Dave Airlie <airlied@...>
Date: Friday, March 28, 2008 - 4:13 pm

No, there's definitely state we'd like to save/restore, but 8xx chips are 
tricky and we won't have them working before 2.6.25-final.  This patch 
preserves old behavior for 8xx chips and allows 9xx chips to properly survive 
suspend/resume events, so I don't think a printk is necessary.

Jesse
--
To: Jesse Barnes <jesse.barnes@...>
Cc: lkml <linux-kernel@...>, Linus Torvalds <torvalds@...>, Dave Airlie <airlied@...>
Date: Thursday, March 27, 2008 - 4:38 am

I've tested this patch on two different laptops: A Uniwill 223 and an
IBM Thinkpad X40. Both have Intel 855 graphics. The former now suspends
and hibernates just fine (it fails without the patch). The latter works
both with and without the patch.

--=20
Soren Hansen               |=20
Virtualisation specialist  | Ubuntu Server Team
Canonical Ltd.             | http://www.ubuntu.com/
To: Soren Hansen <soren@...>
Cc: lkml <linux-kernel@...>
Date: Monday, May 5, 2008 - 6:07 pm

Soren, can you give the current DRM tree a try or apply the patch in 
http://cgit.freedesktop.org/mesa/drm/commit/?id=cb33133ef354b77a8cf06b16ce95a0babbe8bc...?  
I'm hoping it'll fix the one machine that had a problem and not break the 
other. :)  I tested it on my new 855 machine and it fixes things here...

Thanks,
Jesse
--
Previous thread: what's the incompatibility between hibernation and hotplug memory by Jeremy Fitzhardinge on Wednesday, March 26, 2008 - 7:17 pm. (9 messages)

Next thread: [PATCH 6/7] omfs: add checksumming routines by Bob Copeland on Wednesday, March 26, 2008 - 8:45 pm. (6 messages)
speck-geostationary