linux/drivers/gpu/drm/i915
Chris Wilson e04c735029 drm/i915: Wait for the clocks to stabilise before updating PLLs
When initialising the PLL registers we may have to clear existing state
from the BIOS - that is the PLL may already be enabled. So we need to
disable it, wait for the clocks to settle and then rewrite it.

The issue came to light when Ben tested

commit 88ca4bb7974277793e602d88739d4e8f56b89e64
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Fri Apr 20 17:11:53 2012 +0100

    drm/i915: manage PCH PLLs separately from pipes

and found that booting into a VGA monitor was no longer working. Closer
inspection suggests that it was a pre-existing bug now being hit by the
rearranged code. Perhaps Ben was not even the first person to stumble
upon this bug, https://bugs.freedesktop.org/show_bug.cgi?id=37029.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reported-and-Tested-by: Ben Widawsky <ben@bwidawsk.net>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-05-03 11:18:32 +02:00
..
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_sil164.c
dvo_tfp410.c
dvo.h
i915_debugfs.c drm/i915: Only enable IPS polling for gen5 2012-05-03 11:18:24 +02:00
i915_dma.c drm/i915: move pnv|ilk_gem_mem_freq to intel_pm.c 2012-05-03 11:18:31 +02:00
i915_drv.c drm/i915: create macros to handle masked bits 2012-05-03 11:18:08 +02:00
i915_drv.h drm/i915: rework legacy GFX HWS handling 2012-05-03 11:18:30 +02:00
i915_gem_debug.c drm/i915: Remove the list of pinned inactive objects 2012-05-03 11:18:11 +02:00
i915_gem_evict.c drm/i915: remove do_retire from i915_wait_request 2012-05-03 11:18:20 +02:00
i915_gem_execbuffer.c drm/i915: disallow clip rects on gen5+ 2012-05-03 11:18:29 +02:00
i915_gem_gtt.c drm/i915: remove do_retire from i915_wait_request 2012-05-03 11:18:20 +02:00
i915_gem_stolen.c drm/i915: Split the stolen handling for GEM out of i915_dma.c 2012-05-03 11:18:11 +02:00
i915_gem_tiling.c drm/i915: Only the zap the VMA after updating the tiling parameters 2012-05-03 11:18:07 +02:00
i915_gem.c drm/i915: extract some common olr+wedge code 2012-05-03 11:18:32 +02:00
i915_ioc32.c drm/i915: [sparse] trivial sparse fixes 2012-04-18 10:34:49 +02:00
i915_irq.c drm/i915: extract dri1 breadcrumb update from irq handler 2012-05-03 11:18:28 +02:00
i915_reg.h drm/i915: use the new masked bit macro some more 2012-05-03 11:18:20 +02:00
i915_suspend.c drm/i915: manage PCH PLLs separately from pipes 2012-05-03 11:18:08 +02:00
i915_sysfs.c drm/i915: rc6 residency (fix the fix) 2012-04-23 09:30:14 +02:00
i915_trace_points.c drm/i915: [sparse] trivial sparse fixes 2012-04-18 10:34:49 +02:00
i915_trace.h
intel_acpi.c drm/i915: [sparse] trivial sparse fixes 2012-04-18 10:34:49 +02:00
intel_bios.c Merge branch 'drm-intel-next' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next 2012-04-12 10:27:01 +01:00
intel_bios.h
intel_crt.c drm/i915: IBX+ doesn't have separate vsync/hsync controls on the VGA DAC 2012-04-18 10:34:49 +02:00
intel_display.c drm/i915: Wait for the clocks to stabilise before updating PLLs 2012-05-03 11:18:32 +02:00
intel_dp.c drm/i915: manage PCH PLLs separately from pipes 2012-05-03 11:18:08 +02:00
intel_drv.h drm/i915: move rps/emon function declarations 2012-05-03 11:18:30 +02:00
intel_dvo.c drm/i915/intel_i2c: refactor using intel_gmbus_get_adapter 2012-03-28 14:40:44 +02:00
intel_fb.c drm/i915: [sparse] trivial sparse fixes 2012-04-18 10:34:49 +02:00
intel_hdmi.c drm/i915: Enable HDMI on ValleyView 2012-03-29 00:00:09 +02:00
intel_i2c.c drm/i915/intel_i2c: reduce verbosity of some messages 2012-04-13 15:03:00 +02:00
intel_lvds.c Merge branch 'drm-intel-next' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next 2012-04-12 10:27:01 +01:00
intel_modes.c Merge branch 'drm-intel-next' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next 2012-04-12 10:27:01 +01:00
intel_opregion.c drm/i915: [sparse] __iomem fixes for opregion 2012-05-03 11:18:00 +02:00
intel_overlay.c drm/i915: remove LP_RING&friends from modeset code 2012-05-03 11:18:26 +02:00
intel_panel.c
intel_pm.c drm/i915: move pnv|ilk_gem_mem_freq to intel_pm.c 2012-05-03 11:18:31 +02:00
intel_ringbuffer.c drm/i915: fixup __iomem mixups in ringbuffer.c 2012-05-03 11:18:31 +02:00
intel_ringbuffer.h drm/i915: fixup __iomem mixups in ringbuffer.c 2012-05-03 11:18:31 +02:00
intel_sdvo_regs.h
intel_sdvo.c drm/i915: [sparse] don't use variable size arrays 2012-04-18 10:34:50 +02:00
intel_sprite.c drm/i915: properly check for MODESET for kms driver ioctls 2012-05-03 11:18:13 +02:00
intel_tv.c drm/i915: fixup tv load-detect on enabled but not active crtc 2012-05-03 11:18:02 +02:00
Makefile drm/i915: Split the stolen handling for GEM out of i915_dma.c 2012-05-03 11:18:11 +02:00