|
@@ -12727,7 +12727,11 @@ static void i915_disable_vga(struct drm_device *dev)
|
|
|
vga_put(dev->pdev, VGA_RSRC_LEGACY_IO);
|
|
|
udelay(300);
|
|
|
|
|
|
- I915_WRITE(vga_reg, VGA_DISP_DISABLE);
|
|
|
+ /*
|
|
|
+ * Fujitsu-Siemens Lifebook S6010 (830) has problems resuming
|
|
|
+ * from S3 without preserving (some of?) the other bits.
|
|
|
+ */
|
|
|
+ I915_WRITE(vga_reg, dev_priv->bios_vgacntr | VGA_DISP_DISABLE);
|
|
|
POSTING_READ(vga_reg);
|
|
|
}
|
|
|
|
|
@@ -12816,6 +12820,8 @@ void intel_modeset_init(struct drm_device *dev)
|
|
|
|
|
|
intel_shared_dpll_init(dev);
|
|
|
|
|
|
+ /* save the BIOS value before clobbering it */
|
|
|
+ dev_priv->bios_vgacntr = I915_READ(i915_vgacntrl_reg(dev));
|
|
|
/* Just disable it once at startup */
|
|
|
i915_disable_vga(dev);
|
|
|
intel_setup_outputs(dev);
|