linux/drivers/gpu/drm/i915
Chris Wilson c004a90b72 drm/i915: Restore nonblocking awaits for modesetting
After combining the dma-buf reservation object and the GEM reservation
object, we lost the ability to do a nonblocking wait on the i915 request
(as we blocked upon the reservation object during prepare_fb). We can
instead convert the reservation object into a fence upon which we can
asynchronously wait (including a forced timeout in case the DMA fence is
never signaled).

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20161028125858.23563-22-chris@chris-wilson.co.uk
2016-10-28 20:53:51 +01:00
..
gvt drm/i915: Rearrange i915_wait_request() accounting with callers 2016-10-28 20:53:43 +01:00
Kconfig Merge tag 'gvt-next-2016-10-27' of https://github.com/01org/gvt-linux into drm-intel-next-queued 2016-10-27 10:33:17 +02:00
Kconfig.debug
Makefile drm/i915: Introduce an internal allocator for disposable private objects 2016-10-28 20:53:44 +01:00
dvo.h
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_ns2501.c
dvo_sil164.c
dvo_tfp410.c
i915_cmd_parser.c drm/i915: Refactor object page API 2016-10-28 20:53:46 +01:00
i915_debugfs.c drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_drv.c drm/i915: Use lockless object free 2016-10-28 20:53:50 +01:00
i915_drv.h drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_gem.c drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_gem.h
i915_gem_batch_pool.c drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_gem_batch_pool.h drm/i915: Double check the active status on the batch pool 2016-08-04 20:19:50 +01:00
i915_gem_context.c drm/i915: Defer active reference until required 2016-10-28 20:53:43 +01:00
i915_gem_dmabuf.c drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_gem_evict.c drm/i915: Markup GEM API with lockdep asserts 2016-10-28 20:53:45 +01:00
i915_gem_execbuffer.c drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_gem_fence.c drm/i915: Pass around sg_table to get_pages/put_pages backend 2016-10-28 20:53:47 +01:00
i915_gem_gtt.c drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_gem_gtt.h drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_gem_internal.c drm/i915: Pass around sg_table to get_pages/put_pages backend 2016-10-28 20:53:47 +01:00
i915_gem_render_state.c drm/i915: Refactor object page API 2016-10-28 20:53:46 +01:00
i915_gem_render_state.h drm/i915: Reuse the active golden render state batch 2016-10-28 20:53:44 +01:00
i915_gem_request.c drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_gem_request.h drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_gem_shrinker.c drm/i915: Move object release to a freelist + worker 2016-10-28 20:53:49 +01:00
i915_gem_stolen.c drm/i915: Pass around sg_table to get_pages/put_pages backend 2016-10-28 20:53:47 +01:00
i915_gem_tiling.c drm/i915: Use lockless object free 2016-10-28 20:53:50 +01:00
i915_gem_userptr.c drm/i915: Use lockless object free 2016-10-28 20:53:50 +01:00
i915_gpu_error.c drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
i915_guc_reg.h drm/i915/guc: general tidying up (loader) 2016-09-15 10:56:02 +01:00
i915_guc_submission.c drm/i915/guc: WA to address the Ringbuffer coherency issue 2016-10-25 21:00:29 +01:00
i915_ioc32.c
i915_irq.c drm/i915: Correct pipe fault reporting string 2016-10-27 15:08:43 +01:00
i915_memcpy.c drm/i915: Mark the static key for movntqda as static 2016-08-17 12:36:07 +01:00
i915_mm.c drm/i915: Use remap_io_mapping() to prefault all PTE in a single pass 2016-08-19 17:13:36 +01:00
i915_params.c drm/i915: Allow disabling error capture 2016-10-12 12:00:32 +01:00
i915_params.h drm/i915: Allow disabling error capture 2016-10-12 12:00:32 +01:00
i915_pci.c drm/i915: keep declarations in i915_drv.h 2016-09-22 14:53:29 +03:00
i915_pvinfo.h
i915_reg.h drm/i915: Address broxton phy registers based on phy and channel number 2016-10-28 12:25:24 +03:00
i915_suspend.c drm/i915: Make IS_GEN macros only take dev_priv 2016-10-14 12:23:22 +01:00
i915_sw_fence.c drm/i915: Allow i915_sw_fence_await_sw_fence() to allocate 2016-10-28 20:53:42 +01:00
i915_sw_fence.h drm/i915: Allow i915_sw_fence_await_sw_fence() to allocate 2016-10-28 20:53:42 +01:00
i915_sysfs.c drm/i915: Allow disabling error capture 2016-10-12 12:00:32 +01:00
i915_trace.h dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
i915_trace_points.c
i915_vgpu.c Merge tag 'drm-intel-next-2016-09-19' of git://anongit.freedesktop.org/drm-intel into drm-next 2016-09-20 06:23:22 +10:00
i915_vgpu.h
intel_acpi.c
intel_atomic.c
intel_atomic_plane.c drm/i915: Move GEM activity tracking into a common struct reservation_object 2016-10-28 20:53:50 +01:00
intel_audio.c drm/i915/audio: set proper N/M in modeset 2016-10-26 12:36:30 +03:00
intel_bios.c drm/i915: Clean up DDI DDC/AUX CH sanitation 2016-10-21 15:43:40 +03:00
intel_bios.h
intel_breadcrumbs.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
intel_color.c drm/i915: Make IS_CHERRYVIEW only take dev_priv 2016-10-14 12:23:19 +01:00
intel_crt.c drm/i915: Make IS_GEN macros only take dev_priv 2016-10-14 12:23:22 +01:00
intel_csr.c drm/i915/DMC/KBL: Load DMC on KBL using the no_stepping_info array 2016-10-26 14:20:53 -07:00
intel_ddi.c drm/i915: Move broxton vswing sequence to intel_dpio_phy.c 2016-10-28 12:24:45 +03:00
intel_device_info.c drm/i915: Reduce trickery in DEV_INFO_FOR_EACH_FLAG 2016-10-05 15:24:54 +03:00
intel_display.c drm/i915: Restore nonblocking awaits for modesetting 2016-10-28 20:53:51 +01:00
intel_dp.c drm/i915: Change the placement of some static functions in intel_dp.c 2016-10-28 15:06:31 +03:00
intel_dp_aux_backlight.c
intel_dp_link_training.c drm/i915/skl: drop workarounds for A0 and B0 revisions 2016-09-26 12:08:22 +03:00
intel_dp_mst.c Revert "drm/i915: start adding dp mst audio" 2016-09-29 11:02:41 +03:00
intel_dpio_phy.c drm/i915: Address broxton phy registers based on phy and channel number 2016-10-28 12:25:24 +03:00
intel_dpll_mgr.c drm/i915: Address broxton phy registers based on phy and channel number 2016-10-28 12:25:24 +03:00
intel_dpll_mgr.h drm/i915/dp: Add a standalone function to obtain shared dpll for HSW/BDW/SKL/BXT 2016-09-09 14:53:18 -07:00
intel_drv.h drm/i915: Restore nonblocking awaits for modesetting 2016-10-28 20:53:51 +01:00
intel_dsi.c drm/i915: Make IS_CHERRYVIEW only take dev_priv 2016-10-14 12:23:19 +01:00
intel_dsi.h
intel_dsi_dcs_backlight.c
intel_dsi_panel_vbt.c drm/i915/dsi: double check element parsing against size if present 2016-09-19 18:38:11 +03:00
intel_dsi_pll.c drm/i915: Make IS_BROXTON only take dev_priv 2016-10-14 12:23:19 +01:00
intel_dvo.c drm/i915: Store port enum in intel_encoder 2016-09-21 09:32:00 -07:00
intel_engine_cs.c drm/i915: Reuse the active golden render state batch 2016-10-28 20:53:44 +01:00
intel_fbc.c Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued 2016-10-25 08:57:53 +02:00
intel_fbdev.c drm/i915: pdev cleanup 2016-08-22 12:19:52 +01:00
intel_fifo_underrun.c drm/i915: Make IS_GEN macros only take dev_priv 2016-10-14 12:23:22 +01:00
intel_frontbuffer.c drm/i915: Use dev_priv consistently through the intel_frontbuffer interface 2016-08-04 20:20:03 +01:00
intel_frontbuffer.h drm/i915: Use dev_priv consistently through the intel_frontbuffer interface 2016-08-04 20:20:03 +01:00
intel_guc.h drm/i915: Debugfs support for GuC logging control 2016-10-25 09:34:23 +01:00
intel_guc_fwif.h drm/i915: Increase GuC log buffer size to reduce flush interrupts 2016-10-25 09:34:23 +01:00
intel_guc_loader.c drm/i915: Support for GuC interrupts 2016-10-25 09:34:06 +01:00
intel_gvt.c Documentation/gpu: Add section for Intel GVT-g host support 2016-10-20 17:18:39 +08:00
intel_gvt.h drm/i915/gvt: clean up intel_gvt.h as interface for i915 core 2016-10-20 17:18:30 +08:00
intel_hdmi.c drm/i915: Respect alternate_ddc_pin for all DDI ports 2016-10-21 15:43:40 +03:00
intel_hotplug.c drm/i915: Mark i915_hpd_poll_init_work as static 2016-08-17 12:36:15 +01:00
intel_i2c.c drm/i915: GMBUS don't need no forcewake 2016-10-17 14:26:42 +03:00
intel_lrc.c drm/i915: Refactor object page API 2016-10-28 20:53:46 +01:00
intel_lrc.h drm/i915: Update reset path to fix incomplete requests 2016-09-09 14:23:05 +01:00
intel_lspcon.c drm/i915/lspcon: Add workaround for resuming in PCON mode 2016-10-26 12:41:01 +03:00
intel_lvds.c drm/i915: Make IS_GEN macros only take dev_priv 2016-10-14 12:23:22 +01:00
intel_mocs.c drm/i915: Rename struct intel_ringbuffer to struct intel_ring 2016-08-02 22:58:16 +01:00
intel_mocs.h drm/i915: rename 'ring' where it refers to an engine or engine_id 2016-07-21 09:59:41 +01:00
intel_modes.c drm: Remove superflous linux/fb.h includes 2016-08-12 10:41:39 +02:00
intel_opregion.c drm/i915: Ignore OpRegion panel type except on select machines 2016-09-14 11:25:05 +03:00
intel_overlay.c drm/i915: Use lockless object free 2016-10-28 20:53:50 +01:00
intel_panel.c drm/i915/backlight: setup backlight pwm alternate increment on backlight enable 2016-10-10 16:05:52 +03:00
intel_pm.c drm/i915: Use lockless object free 2016-10-28 20:53:50 +01:00
intel_psr.c drm/i915: Make IS_CHERRYVIEW only take dev_priv 2016-10-14 12:23:19 +01:00
intel_renderstate.h drm/i915: Remove duplicate golden render state init from execlists 2016-08-02 22:58:30 +01:00
intel_renderstate_gen6.c
intel_renderstate_gen7.c
intel_renderstate_gen8.c
intel_renderstate_gen9.c
intel_ringbuffer.c drm/i915: Reuse the active golden render state batch 2016-10-28 20:53:44 +01:00
intel_ringbuffer.h drm/i915: Reuse the active golden render state batch 2016-10-28 20:53:44 +01:00
intel_runtime_pm.c drm/i915: Add location of the Rcomp resistor to bxt_ddi_phy_info 2016-10-28 12:25:03 +03:00
intel_sdvo.c drm/i915: Make INTEL_DEVID only take dev_priv 2016-10-14 12:23:19 +01:00
intel_sdvo_regs.h
intel_sideband.c
intel_sprite.c Merge tag 'drm-intel-next-2016-10-24' of git://anongit.freedesktop.org/drm-intel into drm-next 2016-10-25 16:39:43 +10:00
intel_tv.c drm/i915: Make INTEL_DEVID only take dev_priv 2016-10-14 12:23:19 +01:00
intel_uncore.c drm/i915: Just clear the mmiodebug before a register access 2016-10-10 16:06:41 +03:00
intel_vbt_defs.h