]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Check VBIOS value for determining LVDS dual channel mode, too
authorTakashi Iwai <tiwai@suse.de>
Tue, 20 Mar 2012 12:07:05 +0000 (13:07 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 22 Mar 2012 22:23:45 +0000 (23:23 +0100)
commit5814b10fb21735a60a84854f52280db0e4f7f981
tree3866fde96f20c80b2632ec2227ce618a7d7b0d57
parenta4dc6f733dc90e06892a2581e9d424ca4246402b
drm/i915: Check VBIOS value for determining LVDS dual channel mode, too

Currently i915 driver checks [PCH_]LVDS register bits to decide
whether to set up the dual-link or the single-link mode.  This relies
implicitly on that BIOS initializes the register properly at boot.
However, BIOS doesn't initialize it always.  When the machine is
booted with the closed lid, BIOS skips the LVDS reg initialization.
This ends up in blank output on a machine with a dual-link LVDS when
you open the lid after the boot.

This patch adds a workaround for that problem by checking the initial
LVDS register value in VBT.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=37742
Tested-By: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/intel_bios.c
drivers/gpu/drm/i915/intel_display.c