From patchwork Mon Nov 21 19:39:05 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [Oneiric, SRU] UBUNTU: SAUCE: drm/i915: add multi-threaded forcewake support Date: Mon, 21 Nov 2011 09:39:05 -0000 From: Manoj Iyer X-Patchwork-Id: 126910 Message-Id: <1321904345-7466-1-git-send-email-manoj.iyer@canonical.com> To: kernel-team@lists.ubuntu.com Please consider this Sauce patch for Oneiric. SRU JUSTIFICATION ================ ISSUE ===== Ivybridge system fails to resume from S3/S4 with recent BIOS. On system resume causes kernel oops in i915 driver. FIX === Upstream fixed the issue by adding multi-threaded forcewake support. On IVB C0+ with newer BIOSes, the forcewake handshake has changed. There's now a bitfield for different driver components to keep the GT powered on. On Linux, we centralize forcewake handling in one place, so we still just need a single bit, but we need to use the new registers if MT forcewake is enabled. TEST ===== This patch was tested on Ivybridge system with the kernel posted at http://kernel.ubuntu.com/~sarvatt/fdo42923/ and the test results are noted in comment #3 in this bug, and also reported the same to https://bugs.freedesktop.org/show_bug.cgi?id=42923 The following changes since commit b81353472fcf931e4e0812b5cb42674d029d5ffc: drm/i915: add multi-threaded forcewake support (2011-11-21 13:32:38 -0600) are available in the git repository at: git://kernel.ubuntu.com/manjo/ubuntu-oneiric.git lp891270v2 Keith Packard (1): drm/i915: add multi-threaded forcewake support drivers/gpu/drm/i915/i915_drv.c | 30 ++++++++++++++++++++++++++---- drivers/gpu/drm/i915/i915_drv.h | 8 ++++++++ drivers/gpu/drm/i915/i915_reg.h | 4 ++++ drivers/gpu/drm/i915/intel_display.c | 22 ++++++++++++++++++++++ 4 files changed, 60 insertions(+), 4 deletions(-)