linux/drivers/gpu/drm/i915
Takashi Iwai b03543857f 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>
2012-03-22 23:23:45 +01:00
..
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_sil164.c
dvo_tfp410.c
dvo.h
i915_debugfs.c drm/i915: [dinq] shut up six instances of -Warray-bounds 2012-03-22 17:45:06 +01:00
i915_dma.c drm/i915: add HAS_ALIASING_PPGTT parameter for userspace 2012-03-20 21:55:40 +01:00
i915_drv.c i915: Add option to bypass vbt table. 2012-03-01 23:22:30 +01:00
i915_drv.h drm/i915: Check VBIOS value for determining LVDS dual channel mode, too 2012-03-22 23:23:45 +01:00
i915_gem_debug.c
i915_gem_evict.c drm/i915: No need to search again after retiring requests 2012-02-27 17:37:13 +01:00
i915_gem_execbuffer.c drm/i915: implement SNB workaround for lazy global gtt 2012-03-20 21:53:55 +01:00
i915_gem_gtt.c drm/i915: bind objects to the global gtt only when needed 2012-03-20 21:52:01 +01:00
i915_gem_tiling.c drm/i915: swizzling support for snb/ivb 2012-02-08 23:16:24 +01:00
i915_gem.c drm/i915: [dinq] shut up two instances -Wunitialized 2012-03-22 17:44:09 +01:00
i915_ioc32.c
i915_irq.c drm/i915: bind objects to the global gtt only when needed 2012-03-20 21:52:01 +01:00
i915_reg.h drm/i915: add missing SDVO bits for interlaced modes on ILK 2012-02-14 20:32:29 +01:00
i915_suspend.c drm/i915: Re-enable gen7 RC6 and GPU turbo after resume. 2012-01-24 13:25:10 -08:00
i915_trace_points.c
i915_trace.h
intel_acpi.c drm/i915: remove ACPI related DRM_ERRORs 2012-03-02 19:23:44 +01:00
intel_bios.c drm/i915: Check VBIOS value for determining LVDS dual channel mode, too 2012-03-22 23:23:45 +01:00
intel_bios.h
intel_crt.c drm/i915: don't allow interlaced pipeconf on gen2 2012-02-10 17:28:45 +01:00
intel_display.c drm/i915: Check VBIOS value for determining LVDS dual channel mode, too 2012-03-22 23:23:45 +01:00
intel_dp.c drm/i915: use the new hdmi_force_audio enum more 2012-02-27 17:45:36 +01:00
intel_drv.h drm/i915: Separate fence pin counting from normal bind pin counting 2012-01-29 18:23:37 +01:00
intel_dvo.c drm/i915: fixup interlaced vertical timings confusion, part 1 2012-02-10 17:24:06 +01:00
intel_fb.c drm: do not set fb_info->pixmap fields 2012-02-09 10:34:43 +00:00
intel_hdmi.c drm/i915: add a "force-dvi" HDMI audio mode 2012-02-14 10:03:18 +01:00
intel_i2c.c drm/i915: reenable gmbus on gen3+ again 2012-02-29 20:54:14 +01:00
intel_lvds.c drm/i915: Ignore LVDS on hp t5745 and hp st5747 thin client 2012-02-27 11:12:38 +01:00
intel_modes.c Merge remote-tracking branch 'airlied/drm-next' into for-airlied 2012-02-23 14:56:11 +01:00
intel_opregion.c i915: Add and use pr_fmt and pr_<level> 2012-03-18 21:50:21 +01:00
intel_overlay.c Revert "drivers/gpu/drm/i915/intel_overlay.c needs seq_file.h" 2012-02-16 10:31:23 +01:00
intel_panel.c i915: Add and use pr_fmt and pr_<level> 2012-03-18 21:50:21 +01:00
intel_ringbuffer.c drm/i915: Add wait_for in init_ring_common 2012-03-18 19:10:06 +01:00
intel_ringbuffer.h drm/i915: Record the tail at each request and use it to estimate the head 2012-02-15 14:26:03 +01:00
intel_sdvo_regs.h
intel_sdvo.c drm/i915: use the new hdmi_force_audio enum more 2012-02-27 17:45:36 +01:00
intel_sprite.c Merge tag 'drm-intel-next-2012-02-07' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next 2012-02-14 14:16:00 +00:00
intel_tv.c drm/i915: fixup interlaced vertical timings confusion, part 1 2012-02-10 17:24:06 +01:00
Makefile drm/i915: kill i915_mem.c 2012-01-17 20:01:01 +01:00