summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/i915_dma.c
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2010-10-07 09:20:12 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2010-10-07 10:00:18 +0100
commitc2873e9633fe908dccd36dbb1d370e9c59a1ca62 (patch)
tree6650c29aa136a05ec5b0a2d86c9fab3bf530822a /drivers/gpu/drm/i915/i915_dma.c
parent26bf62e47261142d528a6109fdd671a2e280b4ea (diff)
drm/i915: Free hardware status page on unload when physically mapped
A physically mapped hardware status page is allocated at driver load time but was never freed. Call the existing code to free this page at driver unload time on hardware which uses this kind. Signed-off-by: Keith Packard <keithp@keithp.com> [ickle: call before tearing down registers on KMS-only path, as pointed out by Dave Airlie] Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: stable@kernel.org
Diffstat (limited to 'drivers/gpu/drm/i915/i915_dma.c')
-rw-r--r--drivers/gpu/drm/i915/i915_dma.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
index 726c3736082..3bbe72352cd 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
@@ -2150,6 +2150,9 @@ int i915_driver_unload(struct drm_device *dev)
drm_mm_takedown(&dev_priv->mm.vram);
intel_cleanup_overlay(dev);
+
+ if (!I915_NEED_GFX_HWS(dev))
+ i915_free_hws(dev);
}
intel_teardown_gmbus(dev);