linux/drivers/gpu/drm/i915
Jesse Barnes b1b87f6b65 drm/i915: untangle page flip completion
When a new page flip is requested, we need to both queue an unpin for
the current framebuffer, and also increment the flip pending count on
the newly submitted buffer.

At flip finish time, we need to unpin the old fb and decrement the flip
pending count on the new buffer.

The old code was conflating the two, and led to hangs when new direct
rendered apps were started, replacing the existing frame buffer.  This
patch splits out the buffers and prevents the hangs.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Eric Anholt <eric@anholt.net>
2010-02-10 14:33:04 -08:00
..
dvo_ch7xxx.c drm/i915: Replace DRM_DEBUG with DRM_DEBUG_KMS in DVO output code. 2009-11-05 14:47:12 -08:00
dvo_ch7017.c drm/i915: Replace DRM_DEBUG with DRM_DEBUG_KMS in DVO output code. 2009-11-05 14:47:12 -08:00
dvo_ivch.c drm/i915: Replace DRM_DEBUG with DRM_DEBUG_KMS in DVO output code. 2009-11-05 14:47:12 -08:00
dvo_sil164.c drm/i915: Replace DRM_DEBUG with DRM_DEBUG_KMS in DVO output code. 2009-11-05 14:47:12 -08:00
dvo_tfp410.c drm/i915: Replace DRM_DEBUG with DRM_DEBUG_KMS in DVO output code. 2009-11-05 14:47:12 -08:00
dvo.h drm/i915: Change I2C api to pass around i2c_adapters 2009-06-18 15:53:57 -07:00
i915_debugfs.c drm/i915: Selectively enable self-reclaim 2010-01-27 09:26:43 -08:00
i915_dma.c drm/i915: enable 36bit physical address for hardware status page 2010-01-15 14:50:14 -08:00
i915_drv.c drm/i915: Fix the device info of Pineview 2010-01-25 09:23:13 -08:00
i915_drv.h drm/i915: Update write_domains on active list after flush. 2010-02-10 13:31:45 -08:00
i915_gem_debug.c drm/i915: Catch up to obj_priv->page_list rename in disabled debug code. 2009-06-22 20:19:39 -07:00
i915_gem_tiling.c drm/i915: execbuf2 support 2010-01-06 09:39:39 -08:00
i915_gem.c drm/i915: Update write_domains on active list after flush. 2010-02-10 13:31:45 -08:00
i915_ioc32.c drm: convert drm_ioctl to unlocked_ioctl 2009-12-18 11:22:31 +10:00
i915_irq.c drm/i915: page flip support for Ironlake 2010-01-29 15:29:47 -08:00
i915_mem.c drm: Remove memory debugging infrastructure. 2009-06-18 13:00:33 -07:00
i915_opregion.c drm/i915: Fix product names and #defines 2009-12-07 14:55:56 -08:00
i915_reg.h drm/i915: handle FBC and self-refresh better 2010-02-10 14:27:13 -08:00
i915_suspend.c drm/i915: Fix RC6 suspend/resume 2010-01-06 09:39:53 -08:00
i915_trace_points.c drm/i915: Add tracepoints 2009-09-23 01:05:21 +01:00
i915_trace.h drm/i915: Enable irq to trace batch buffer completion. 2009-09-29 03:15:25 +01:00
intel_bios.c drm/i915: parse eDP panel color depth from VBT block 2010-01-15 14:12:47 -08:00
intel_bios.h drm/i915: parse eDP panel color depth from VBT block 2010-01-15 14:12:47 -08:00
intel_crt.c drm/i915: disable hotplug detect before Ironlake CRT detect 2010-01-25 08:52:54 -08:00
intel_display.c drm/i915: untangle page flip completion 2010-02-10 14:33:04 -08:00
intel_dp.c drm/i915: fix eDP pipe mask 2010-01-15 14:13:18 -08:00
intel_drv.h drm/i915: restore render clock gating on resume 2009-12-08 06:32:51 -08:00
intel_dvo.c drm/i915: Set crtc/clone mask in different output devices 2009-08-24 17:01:33 -07:00
intel_fb.c drm/i915: Increase fb alignment to 64k 2010-02-10 13:41:29 -08:00
intel_hdmi.c drm/i915: Don't use the child device parsed from VBT to setup HDMI/DP 2010-01-12 14:40:03 -08:00
intel_i2c.c drm/i915: Fix product names and #defines 2009-12-07 14:55:56 -08:00
intel_lvds.c drm/i915: slow acpi_lid_open() causes flickering - V2 2010-02-04 08:36:45 -08:00
intel_modes.c drm/i915: Change I2C api to pass around i2c_adapters 2009-06-18 15:53:57 -07:00
intel_overlay.c drm/i915: Fix product names and #defines 2009-12-07 14:55:56 -08:00
intel_sdvo_regs.h drm/i915: enable sdvo lvds scaling function. 2009-07-01 11:44:45 -07:00
intel_sdvo.c drm/i915: Add support for SDVO composite TV 2010-01-29 14:35:32 -08:00
intel_tv.c drm/i915: disable TV hotplug status check 2010-01-07 10:00:39 -08:00
Makefile Merge remote branch 'anholt/drm-intel-next' into drm-linus 2009-12-08 14:03:47 +10:00