From: Greg Kroah-Hartman Date: Tue, 20 Jan 2015 08:42:50 +0000 (+0800) Subject: 3.18-stable patches X-Git-Tag: v3.10.66~39 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=75c6895151a3ce4d81e4f7d816bea7c76ddbd4e2;p=thirdparty%2Fkernel%2Fstable-queue.git 3.18-stable patches added patches: revert-drm-i915-preserve-vgacntr-bits-from-the-bios.patch --- diff --git a/queue-3.18/revert-drm-i915-preserve-vgacntr-bits-from-the-bios.patch b/queue-3.18/revert-drm-i915-preserve-vgacntr-bits-from-the-bios.patch new file mode 100644 index 00000000000..69ea3230489 --- /dev/null +++ b/queue-3.18/revert-drm-i915-preserve-vgacntr-bits-from-the-bios.patch @@ -0,0 +1,78 @@ +From 01f5a6261cea395f72877aeb7c2fe2d42e1b1e00 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= +Date: Tue, 16 Dec 2014 18:38:37 +0200 +Subject: Revert "drm/i915: Preserve VGACNTR bits from the BIOS" +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= + +commit 01f5a6261cea395f72877aeb7c2fe2d42e1b1e00 upstream. + +The VGA_2X_MODE bit apparently affects the display even when the VGA +plane is disabled. The bit will set by the BIOS when the panel width +is at least 1280 pixels. So by preserving the bit from the BIOS we +end up with corrupted display on machines with such high res panels. +I only have 1024x768 panels on my gen2 machines so never ran into +this problem. + +The original reason for preserving the VGACNTR register was to make +my 830 survive S3 with acpi_sleep=s3_bios option. However after +further 830 fixes that option is no longer needed to make S3 work +and preserving VGACNTR doesn't seem to be necessary without it, +so we can just revert the entire patch. + +This reverts +commit 69769f9a422bfc62e17399da3590c5e31ac37f24 +Author: Ville Syrjälä +Date: Fri Aug 15 01:22:08 2014 +0300 + + drm/i915: Preserve VGACNTR bits from the BIOS + +Cc: Bruno Prémont +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=87171 +Signed-off-by: Ville Syrjälä +Signed-off-by: Jani Nikula +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/i915/i915_drv.h | 2 -- + drivers/gpu/drm/i915/intel_display.c | 8 +------- + 2 files changed, 1 insertion(+), 9 deletions(-) + +--- a/drivers/gpu/drm/i915/i915_drv.h ++++ b/drivers/gpu/drm/i915/i915_drv.h +@@ -1666,8 +1666,6 @@ struct drm_i915_private { + */ + struct workqueue_struct *dp_wq; + +- uint32_t bios_vgacntr; +- + /* Old dri1 support infrastructure, beware the dragons ya fools entering + * here! */ + struct i915_dri1_state dri1; +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -12933,11 +12933,7 @@ static void i915_disable_vga(struct drm_ + vga_put(dev->pdev, VGA_RSRC_LEGACY_IO); + udelay(300); + +- /* +- * 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); ++ I915_WRITE(vga_reg, VGA_DISP_DISABLE); + POSTING_READ(vga_reg); + } + +@@ -13026,8 +13022,6 @@ void intel_modeset_init(struct drm_devic + + 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); diff --git a/queue-3.18/series b/queue-3.18/series index 490e9f29412..108a067eeee 100644 --- a/queue-3.18/series +++ b/queue-3.18/series @@ -77,3 +77,4 @@ iser-target-fix-implicit-termination-of-connections.patch iser-target-allocate-pi-contexts-dynamically.patch iser-target-fix-null-dereference-in-sw-mode-dif.patch iscsi-iser-target-expose-supported-protection-ops-according-to-t10_pi.patch +revert-drm-i915-preserve-vgacntr-bits-from-the-bios.patch