summaryrefslogtreecommitdiff
path: root/drivers/char/drm/i915_drv.c
diff options
context:
space:
mode:
authorJesse Barnes <jesse.barnes@intel.com>2008-02-21 17:44:35 -0800
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2008-02-22 16:50:29 -0800
commit39273b58a409cd6d65c9732bdca00bacd1626672 (patch)
tree81163f10afceabb73b4a2a219f14b2313dd1b1d5 /drivers/char/drm/i915_drv.c
parent2f93d797ea92113a73c72728c475455cb1409fb3 (diff)
i915: fix AR register restore.
Make sure the restoration correctly restores the AR registers by flipping the ARX register into index mode before doing anything. Without this, some people have had the text mode restore all green. Signed-off-by: Jesse Barnes <jesse.barnes@intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/char/drm/i915_drv.c')
-rw-r--r--drivers/char/drm/i915_drv.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/char/drm/i915_drv.c b/drivers/char/drm/i915_drv.c
index 4048f39b7eed..b2b451dc4460 100644
--- a/drivers/char/drm/i915_drv.c
+++ b/drivers/char/drm/i915_drv.c
@@ -222,6 +222,7 @@ static void i915_restore_vga(struct drm_device *dev)
dev_priv->saveGR[0x18]);
/* Attribute controller registers */
+ inb(st01);
for (i = 0; i < 20; i++)
i915_write_ar(st01, i, dev_priv->saveAR[i], 0);
inb(st01); /* switch back to index mode */