OpenCloudOS-Kernel/drivers/gpu/drm/i915
Chris Wilson a4e57f9031 drm/i915: Teach execbuffer to take the engine wakeref not GT
In the next patch, we would like to couple into the engine wakeref to
free the batch pool on idling. The caveat here is that we therefore want
to track the engine wakeref more precisely and to hold it instead of the
broader GT wakeref as we process the ioctl.

v2: Avoid introducing odd semantics for a shortlived timeline->mutex
acquisition interface.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190804124826.30272-1-chris@chris-wilson.co.uk
2019-08-04 14:31:17 +01:00
..
display drm/i915: Add i915 to i915_inject_probe_failure 2019-08-02 21:14:29 +01:00
gem drm/i915: Teach execbuffer to take the engine wakeref not GT 2019-08-04 14:31:17 +01:00
gt drm/i915: Hide unshrinkable context objects from the shrinker 2019-08-02 23:39:46 +01:00
gvt drm/i915: Remove lrc default desc from GEM context 2019-08-01 17:37:02 +01:00
oa drm/i915/oa: update the generated files 2019-08-02 15:09:52 +03:00
selftests drm/i915: Allow sharing the idle-barrier from other kernel requests 2019-08-02 11:53:04 +01:00
Kconfig drm/i915: add force_probe module parameter to replace alpha_support 2019-05-31 16:20:30 +03:00
Kconfig.debug drm/i915: use upstream version of header tests 2019-07-30 12:11:57 +03:00
Kconfig.profile drm/i915: Add a label for config DRM_I915_SPIN_REQUEST 2019-06-12 11:18:55 +01:00
Makefile drm/i915: use upstream version of header tests 2019-07-30 12:11:57 +03:00
i915_active.c drm/i915: Allow sharing the idle-barrier from other kernel requests 2019-08-02 11:53:04 +01:00
i915_active.h drm/i915: Allow sharing the idle-barrier from other kernel requests 2019-08-02 11:53:04 +01:00
i915_active_types.h drm/i915: Allow sharing the idle-barrier from other kernel requests 2019-08-02 11:53:04 +01:00
i915_cmd_parser.c drm/i915: Move GEM object domain management from struct_mutex to local 2019-05-28 12:45:29 +01:00
i915_debugfs.c drm/i915: Hide unshrinkable context objects from the shrinker 2019-08-02 23:39:46 +01:00
i915_debugfs.h
i915_drv.c drm/i915: Flush the freed object list on file close 2019-08-02 23:39:48 +01:00
i915_drv.h drm/i915: Flush the freed object list on file close 2019-08-02 23:39:48 +01:00
i915_fixed.h drm/i915: make i915_fixed.h self-contained 2019-06-27 10:50:24 +03:00
i915_gem.c drm/i915: Flush the freed object list on file close 2019-08-02 23:39:48 +01:00
i915_gem.h drm/i915: Load balancing across a virtual engine 2019-05-22 08:40:38 +01:00
i915_gem_batch_pool.c drm/i915: Throw away the active object retirement complexity 2019-06-21 19:47:51 +01:00
i915_gem_batch_pool.h drm/i915: Split GEM object type definition to its own header 2019-05-28 12:45:29 +01:00
i915_gem_evict.c drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
i915_gem_fence_reg.c drm/i915: Use intel_uncore_rmw in intel_gt_init_swizzling 2019-06-21 13:48:24 +01:00
i915_gem_fence_reg.h drm/i915: Convert i915_gem_init_swizzling to intel_gt 2019-06-21 13:48:22 +01:00
i915_gem_gtt.c drm/i915: Move aliasing_ppgtt underneath its i915_ggtt 2019-07-30 16:09:32 +01:00
i915_gem_gtt.h drm/i915: Move aliasing_ppgtt underneath its i915_ggtt 2019-07-30 16:09:32 +01:00
i915_globals.c drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
i915_globals.h drm/i915: make i915_globals.h self-contained 2019-06-27 10:50:32 +03:00
i915_gpu_error.c drm/i915/tgl: stop using ERROR_GEN6 and DONE_REG 2019-07-31 07:40:31 -07:00
i915_gpu_error.h drm/i915: Rely on spinlock protection for GPU error capture 2019-07-23 00:22:20 +01:00
i915_ioc32.c
i915_irq.c drm/i915/ehl: Don't forget to handle port C's hotplug interrupts 2019-08-01 08:02:30 -07:00
i915_irq.h drm/i915/guc: move guc irq functions to intel_guc parameter 2019-07-13 19:56:01 +01:00
i915_memcpy.c
i915_mm.c mm/pgtable: drop pgtable_t variable from pte_fn_t functions 2019-07-12 11:05:46 -07:00
i915_params.c Revert "drm/i915: Update description of i915.enable_guc modparam" 2019-07-19 15:36:21 +01:00
i915_params.h Revert "drm/i915/guc: Turn on GuC/HuC auto mode" 2019-07-19 15:35:58 +01:00
i915_pci.c drm/i915: Add i915 to i915_inject_probe_failure 2019-08-02 21:14:29 +01:00
i915_perf.c drm/i915: Avoid ce->gem_context->i915 2019-07-31 07:43:42 +01:00
i915_pmu.c drm/i915/pmu: Atomically acquire the gt_pm wakeref 2019-08-02 08:08:20 +01:00
i915_pmu.h
i915_priolist_types.h drm/i915: add infrastructure to hold off preemption on a request 2019-07-09 21:26:40 +01:00
i915_pvinfo.h drm/i915: make i915_pvinfo.h self-contained 2019-06-27 10:50:35 +03:00
i915_query.c Revert "drm/i915: Expand subslice mask" 2019-05-29 17:18:18 +03:00
i915_query.h
i915_reg.h drm/i915/tgl: Add and use new DC5 and DC6 residency counter registers 2019-08-01 14:36:54 -07:00
i915_request.c drm/i915/gt: Use intel_gt as the primary object for handling resets 2019-07-12 21:06:56 +01:00
i915_request.h drm/i915: add infrastructure to hold off preemption on a request 2019-07-09 21:26:40 +01:00
i915_scatterlist.c drm/i915: Pull scatterlist utils out of i915_gem.h 2019-05-28 12:45:29 +01:00
i915_scatterlist.h drm/i915: Pull scatterlist utils out of i915_gem.h 2019-05-28 12:45:29 +01:00
i915_scheduler.c drm/i915/execlists: Minimalistic timeslicing 2019-06-20 16:52:36 +01:00
i915_scheduler.h
i915_scheduler_types.h drm/i915/execlists: Minimalistic timeslicing 2019-06-20 16:52:36 +01:00
i915_selftest.h drm/i915: make i915_selftest.h self-contained 2019-07-30 13:41:35 -07:00
i915_suspend.c drm/i915: move modesetting core code under display/ 2019-06-17 11:48:32 +03:00
i915_sw_fence.c
i915_sw_fence.h
i915_syncmap.c
i915_syncmap.h
i915_sysfs.c drm/i915: update with_intel_runtime_pm to use the rpm structure 2019-06-14 15:58:33 +01:00
i915_trace.h drm/i915: Copy name string into ring buffer for intel_update/disable_plane tracepoints 2019-07-11 22:53:20 +03:00
i915_trace_points.c
i915_user_extensions.c
i915_user_extensions.h
i915_utils.h drm/i915/execlists: Preempt-to-busy 2019-06-20 16:52:36 +01:00
i915_vgpu.c drm/i915/gt: Fixup kerneldoc parameters 2019-06-21 16:04:09 +01:00
i915_vgpu.h drm/i915: make i915_vgpu.h self-contained 2019-06-27 10:50:38 +03:00
i915_vma.c drm/i915: Hide unshrinkable context objects from the shrinker 2019-08-02 23:39:46 +01:00
i915_vma.h drm/i915: Hide unshrinkable context objects from the shrinker 2019-08-02 23:39:46 +01:00
intel_csr.c Linux 5.2-rc5 2019-06-19 12:07:29 +02:00
intel_csr.h
intel_device_info.c drm/i915/tgl: Check if pipe D is fused 2019-07-11 16:31:03 -07:00
intel_device_info.h drm/i915/tgl: Tigerlake only has global MOCS registers 2019-07-31 07:40:32 -07:00
intel_drv.h drm/i915: Add support for retrying hotplug 2019-07-15 12:13:34 -07:00
intel_gvt.c drm/i915: Add i915 to i915_inject_probe_failure 2019-08-02 21:14:29 +01:00
intel_gvt.h drm/i915: Propagate "_remove" function name suffix down 2019-07-12 13:05:08 +01:00
intel_pm.c drm/i915/uc: Unify uC platform check 2019-07-25 07:30:41 +01:00
intel_pm.h drm/i915: Convert most of atomic commit to take more intel state 2019-07-01 10:32:14 +02:00
intel_runtime_pm.c drm/i915: Propagate "_release" function name suffix down 2019-07-12 13:05:05 +01:00
intel_runtime_pm.h Merge drm/drm-next into drm-intel-next-queued 2019-07-29 08:51:48 -07:00
intel_sideband.c drm/i915: Make sandybridge_pcode_read() deal with the second data register 2019-05-27 20:51:48 +03:00
intel_sideband.h drm/i915: Make sandybridge_pcode_read() deal with the second data register 2019-05-27 20:51:48 +03:00
intel_uncore.c drm/i915: Add i915 to i915_inject_probe_failure 2019-08-02 21:14:29 +01:00
intel_uncore.h drm/i915/uc: Move uC WOPCM setup in uc_init_hw 2019-07-31 10:19:28 +01:00
intel_wakeref.c drm/i915: Local debug BUG_ON for intel_wakeref 2019-06-21 19:48:00 +01:00
intel_wakeref.h drm/i915: Add a wakeref getter for iff the wakeref is already active 2019-06-26 18:01:01 +01:00
intel_wopcm.c drm/i915/wopcm: Don't fail on WOPCM partitioning failure 2019-08-02 21:14:32 +01:00
intel_wopcm.h drm/i915/wopcm: Don't fail on WOPCM partitioning failure 2019-08-02 21:14:32 +01:00