aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Barnes <jesse.barnes@intel.com>2008-02-21 20:44:35 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2008-02-22 19:50:29 -0500
commit39273b58a409cd6d65c9732bdca00bacd1626672 (patch)
tree81163f10afceabb73b4a2a219f14b2313dd1b1d5
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>
-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)
222 dev_priv->saveGR[0x18]); 222 dev_priv->saveGR[0x18]);
223 223
224 /* Attribute controller registers */ 224 /* Attribute controller registers */
225 inb(st01);
225 for (i = 0; i < 20; i++) 226 for (i = 0; i < 20; i++)
226 i915_write_ar(st01, i, dev_priv->saveAR[i], 0); 227 i915_write_ar(st01, i, dev_priv->saveAR[i], 0);
227 inb(st01); /* switch back to index mode */ 228 inb(st01); /* switch back to index mode */