]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit - drivers/gpu/drm/i915/intel_display.c
drm/i915: Sanitize the output registers after resume
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 12 Apr 2011 17:06:51 +0000 (18:06 +0100)
committerKeith Packard <keithp@keithp.com>
Tue, 12 Apr 2011 20:08:33 +0000 (13:08 -0700)
commitf6e5b1603b8bb7131b6778d0d4e2e5dda120a379
tree1c795016a3ac7f76242766227374005ad24088a2
parentccacfec6cc22157971bd970486fd3fd4972b8e2e
drm/i915: Sanitize the output registers after resume

Similar to booting, we need to inspect the state left by the BIOS and
remove any conflicting bits before we take over. The example reported by
Seth Forshee is very similar to the bug we encountered with the state left
by grub2, that the crtc pipe<->planning mapping was reversed from our
expectations and so we failed to turn off the outputs when booting or,
in this case, resuming. This may be in fact the same bug, but triggered
at resume time.

This patch rearranges the code we already have to clear up the
conflicting state upon init and calls it from reset (which is called
after we have lost control of the hardware, i.e. along both the boot and
resume paths) instead.

Reported-and-tested-by: Seth Forshee <seth.forshee@canonical.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35796
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: stable@kernel.org
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
drivers/gpu/drm/i915/intel_display.c