linux/drivers/gpu/drm/i915
Oscar Mateo ec3e9963a6 drm/i915/bdw: Deferred creation of user-created LRCs
The backing objects and ringbuffers for contexts created via open
fd are actually empty until the user starts sending execbuffers to
them. At that point, we allocate & populate them. We do this because,
at create time, we really don't know which engine is going to be used
with the context later on (and we don't want to waste memory on
objects that we might never use).

v2: As contexts created via ioctl can only be used with the render
ring, we have enough information to allocate & populate them right
away.

v3: Defer the creation always, even with ioctl-created contexts, as
requested by Daniel Vetter.

Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-08-11 16:25:58 +02:00
..
Kconfig drm/i915: Ditch UMS config option 2014-07-24 10:59:53 +02:00
Makefile drm/i915/bdw: New source and header file for LRs, LRCs and Execlists 2014-08-11 16:00:07 +02:00
dvo.h
dvo_ch7xxx.c drm/i915: Remove spurious semicolons 2014-04-09 21:54:33 +02:00
dvo_ch7017.c
dvo_ivch.c drm/i915: Remove spurious semicolons 2014-04-09 21:54:33 +02:00
dvo_ns2501.c drm/i915: Remove spurious semicolons 2014-04-09 21:54:33 +02:00
dvo_sil164.c drm/i915: Remove spurious semicolons 2014-04-09 21:54:33 +02:00
dvo_tfp410.c drm/i915: Remove spurious semicolons 2014-04-09 21:54:33 +02:00
i915_cmd_parser.c drm/i915: Add some L3 registers to the parser whitelist 2014-06-18 00:48:35 +02:00
i915_debugfs.c drm/i915: fix i915_interrupt_info on BDW 2014-08-09 10:57:18 +02:00
i915_dma.c drm/i915: Agnostic INTEL_INFO 2014-08-11 13:44:48 +02:00
i915_drv.c Revert "drm/i915: Enable semaphores on BDW" 2014-08-08 16:22:19 +02:00
i915_drv.h drm/i915/bdw: Allocate ringbuffers for Logical Ring Contexts 2014-08-11 16:10:58 +02:00
i915_gem.c drm/i915/bdw: Macro for LRCs and module option for Execlists 2014-08-11 16:00:27 +02:00
i915_gem_context.c drm/i915/bdw: Deferred creation of user-created LRCs 2014-08-11 16:25:58 +02:00
i915_gem_debug.c drm/i915: prefer struct drm_i915_private to drm_i915_private_t 2014-03-31 15:34:21 +02:00
i915_gem_dmabuf.c drm/i915: Introduce mapping of user pages into video memory (userptr) ioctl 2014-05-16 19:31:29 +02:00
i915_gem_evict.c drm/i915: Prevent negative relocation deltas from wrapping 2014-05-27 11:18:40 +03:00
i915_gem_execbuffer.c drm/i915/bdw: Deferred creation of user-created LRCs 2014-08-11 16:25:58 +02:00
i915_gem_gtt.c drm/i915: clean up PPGTT checking logic 2014-08-08 17:43:58 +02:00
i915_gem_gtt.h drm/i915: clean up PPGTT checking logic 2014-08-08 17:43:58 +02:00
i915_gem_render_state.c drm/i915: fix freeze with blank screen booting highmem 2014-07-22 08:10:36 +02:00
i915_gem_stolen.c Linux 3.16 2014-08-05 09:04:59 +10:00
i915_gem_tiling.c drm/i915: Remove fenced_gpu_access and pending_fenced_gpu_access 2014-08-11 12:20:25 +02:00
i915_gem_userptr.c drm/i915/userptr: Keep spin_lock/unlock in the same block 2014-07-25 09:39:03 +02:00
i915_gpu_error.c drm/i915: Fix DEIER and GTIER collecting for BDW. 2014-08-07 14:04:08 +02:00
i915_ioc32.c drm: Remove DRM_ARRAY_SIZE() for ARRAY_SIZE() 2014-06-10 09:36:17 +10:00
i915_irq.c drm/i915: Fix erroneous conversion to u8 2014-08-08 20:52:31 +02:00
i915_params.c drm/i915/bdw: Macro for LRCs and module option for Execlists 2014-08-11 16:00:27 +02:00
i915_reg.h drm/i915/bdw: Populate LR contexts (somewhat) 2014-08-11 16:21:53 +02:00
i915_suspend.c drm/i915: disable GT power saving early during system suspend 2014-05-22 21:53:27 +02:00
i915_sysfs.c drm/i915/chv: calculate rc6 residency correctly 2014-07-12 11:13:47 +02:00
i915_trace.h drm/i915: s/intel_ring_buffer/intel_engine_cs 2014-05-22 23:01:05 +02:00
i915_trace_points.c
i915_ums.c drm/i915: Only restore backlight combination mode reg for ums 2014-01-24 17:22:45 +01:00
intel_acpi.c Merge branch 'acpi-dsm' 2014-01-12 23:45:52 +01:00
intel_bios.c drm/i915: Gather the HDMI level shifter logic into one place 2014-08-08 17:43:46 +02:00
intel_bios.h drm/i915: Add support for Video Burst Mode for MIPI DSI 2014-08-08 17:43:45 +02:00
intel_crt.c Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next 2014-07-29 20:49:36 +02:00
intel_ddi.c drm/i915: Fix wrong number of HDMI translation entries 2014-08-11 11:29:29 +02:00
intel_display.c drm/i915: Make intel_disable_shared_dpll() static 2014-08-11 13:27:26 +02:00
intel_dp.c drm/i915: Demote the DRRS messages to debug messages 2014-08-08 17:43:49 +02:00
intel_dp_mst.c drm/i915: fix build without fbdev. 2014-07-22 20:11:29 +10:00
intel_drv.h drm/i915: Free pending page flip events at .preclose() 2014-08-08 17:43:58 +02:00
intel_dsi.c drm/i915: Align intel_dsi*.c files a bit 2014-08-08 17:43:45 +02:00
intel_dsi.h drm/i915: Add support for Video Burst Mode for MIPI DSI 2014-08-08 17:43:45 +02:00
intel_dsi_cmd.c drm/i915: Align intel_dsi*.c files a bit 2014-08-08 17:43:45 +02:00
intel_dsi_cmd.h drm/i915: wait for all DSI FIFOs to be empty 2014-08-07 11:07:15 +02:00
intel_dsi_panel_vbt.c drm/i915: Add support for Video Burst Mode for MIPI DSI 2014-08-08 17:43:45 +02:00
intel_dsi_pll.c drm/i915: Align intel_dsi*.c files a bit 2014-08-08 17:43:45 +02:00
intel_dvo.c Merge tag 'drm-intel-next-2014-06-20' of git://anongit.freedesktop.org/drm-intel into drm-next 2014-07-09 10:38:42 +10:00
intel_fbdev.c drm/i915: fix initial fbdev setup warnings 2014-07-24 10:27:42 +10:00
intel_hdmi.c drm/i915: Introduce a for_each_intel_encoder() macro 2014-08-08 17:43:50 +02:00
intel_i2c.c drm/i915: Kill duplicated cdclk readout code from i2c 2014-07-07 11:27:52 +02:00
intel_lrc.c drm/i915/bdw: Populate LR contexts (somewhat) 2014-08-11 16:21:53 +02:00
intel_lrc.h drm/i915/bdw: Initialization for Logical Ring Contexts 2014-08-11 16:04:11 +02:00
intel_lvds.c drm/i915: Introduce a for_each_intel_encoder() macro 2014-08-08 17:43:50 +02:00
intel_modes.c
intel_opregion.c Linux 3.16 2014-08-05 09:04:59 +10:00
intel_overlay.c drm/i915: use helpers 2014-07-18 14:25:15 +10:00
intel_panel.c Linux 3.16 2014-08-05 09:04:59 +10:00
intel_pm.c drm/i915: Remove set but unused 'gt_perf_status' 2014-08-11 13:27:34 +02:00
intel_renderstate.h drm/i915: Simplify processing of the golden render context state 2014-06-16 19:53:09 +02:00
intel_renderstate_gen6.c drm/i915: Simplify processing of the golden render context state 2014-06-16 19:53:09 +02:00
intel_renderstate_gen7.c drm/i915: Simplify processing of the golden render context state 2014-06-16 19:53:09 +02:00
intel_renderstate_gen8.c drm/i915: Simplify processing of the golden render context state 2014-06-16 19:53:09 +02:00
intel_ringbuffer.c drm/i915/bdw: Add a context and an engine pointers to the ringbuffer 2014-08-11 16:18:17 +02:00
intel_ringbuffer.h drm/i915/bdw: Add a context and an engine pointers to the ringbuffer 2014-08-11 16:18:17 +02:00
intel_sdvo.c Merge tag 'topic/core-stuff-2014-06-30' of git://anongit.freedesktop.org/drm-intel into drm-next 2014-07-08 11:04:35 +10:00
intel_sdvo_regs.h
intel_sideband.c drm/i915: vlv/chv: fix DSI sideband register accessing 2014-05-19 17:50:14 +02:00
intel_sprite.c drm/i915: Add rotation property for sprites 2014-08-08 17:43:53 +02:00
intel_tv.c drm: add register and unregister functions for connectors 2014-06-19 08:55:28 +02:00
intel_uncore.c drm/i915: BDW can also detect unclaimed registers 2014-07-23 07:05:37 +02:00