aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2010-10-10 18:54:08 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2010-10-19 09:16:35 +0100
commit701394cc534a4a7883ddc4f8f82fb438b3d664ff (patch)
tree249ba3988a902be66e701f4acc9cf1a1f5ba8a55 /drivers
parent939fe4d7d6e2c92370ca5d1fb70e81043f5ff8d9 (diff)
downloadkernel_samsung_smdk4412-701394cc534a4a7883ddc4f8f82fb438b3d664ff.zip
kernel_samsung_smdk4412-701394cc534a4a7883ddc4f8f82fb438b3d664ff.tar.gz
kernel_samsung_smdk4412-701394cc534a4a7883ddc4f8f82fb438b3d664ff.tar.bz2
drm/i915: Fix oops on HWS unload
Freeing the Hardware Status Page was writing to the HWS register in order to disable the GPU writing to the HWS page. Unfortunately, we were writing to the mmio register after unmapping the register space, hence the oops. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/i915/i915_dma.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
index f451af6..2caf43d 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
@@ -2133,9 +2133,6 @@ int i915_driver_unload(struct drm_device *dev)
if (dev->pdev->msi_enabled)
pci_disable_msi(dev->pdev);
- if (dev_priv->regs != NULL)
- iounmap(dev_priv->regs);
-
intel_opregion_fini(dev);
if (drm_core_check_feature(dev, DRIVER_MODESET)) {
@@ -2157,6 +2154,9 @@ int i915_driver_unload(struct drm_device *dev)
i915_free_hws(dev);
}
+ if (dev_priv->regs != NULL)
+ iounmap(dev_priv->regs);
+
intel_teardown_gmbus(dev);
intel_teardown_mchbar(dev);