]> 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)
commita8662524ea9058d37e6724a9f15a6b9ed8dc620c
treea0438e133793dcce412879537d49214c29a8fefd
parent1676446e33a0277d47fb7b5c67f496ddcc655f36
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