]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: properly restore the ppgtt page directory on resume
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 21 Mar 2012 23:14:43 +0000 (00:14 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Sun, 1 Apr 2012 10:25:29 +0000 (12:25 +0200)
commitb99fc7bf9f2de8aea5fa381b01280b14a9d28ee6
treea0438e133793dcce412879537d49214c29a8fefd
parente74c82a4a1ed3e29cf787c636e7db7432ba1e64c
drm/i915: properly restore the ppgtt page directory on resume

The ppgtt page directory lives in a snatched part of the gtt pte
range. Which naturally gets cleared on hibernate when we pull the
power. Suspend to ram (which is what I've tested) works because
despite the fact that this is a mmio region, it is actually back by
system ram.

Fix this by moving the page directory setup code to the ppgtt init
code (which gets called on resume).

This fixes hibernate on my ivb and snb.

Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_gem.c
drivers/gpu/drm/i915/i915_gem_gtt.c