]> git.baikalelectronics.ru Git - kernel.git/commit
i915: fix intel graphics suspend breakage due to resume/lid event confusion
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 2 Nov 2009 17:29:55 +0000 (09:29 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 2 Nov 2009 17:29:55 +0000 (09:29 -0800)
commit0b8c4478828c4e364db97a22c2cdc702f5fcb85f
treeb51e70799226546e0efd494cfdbf64237dbd2265
parent2b1d70a06ba6678b3a741d5707538c5d9ba67b2b
i915: fix intel graphics suspend breakage due to resume/lid event confusion

In commit b67e986c0dc3f4e812ad1b326be338aa25ac2119 ("drm/i915: force
mode set at lid open time") the intel graphics driver was taught to
restore the LVDS mode on lid open.

That caused problems with interaction with the suspend/resume code,
which commonly runs at the same time (suspend is often caused by the lid
close event, while lid open is commonly a resume event), which was
worked around with in commit ec8529be8cde0e6f205e0f470e2a9908a452f1c6
("drm/i915: fix suspend/resume breakage in lid notifier").

However, in the meantime the lid event code had also grown a user event
notifier (commit 921fd1c07f06bdfd8342085916304216f5931594: "drm/i915:
generate a KMS uevent at lid open/close time"), and now _that_ causes
problems with suspend/resume and some versions of Xorg reacting to those
uevents by setting the mode.

So this effectively reverts that commit 921fd1c07f, and makes the lid
open protection logic against suspend/resume more explicit.  This fixes
at least one laptop. See

http://bugzilla.kernel.org/show_bug.cgi?id=14484

for more details.

Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Cc: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
Cc: Eric Anholt <eric@anholt.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/gpu/drm/i915/i915_drv.c
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/intel_lvds.c