1
0
Fork 0
alistair23-linux/drivers/gpu/drm/i915
Chris Wilson 6d06779e86 drm/i915: Load balancing across a virtual engine
Having allowed the user to define a set of engines that they will want
to only use, we go one step further and allow them to bind those engines
into a single virtual instance. Submitting a batch to the virtual engine
will then forward it to any one of the set in a manner as best to
distribute load.  The virtual engine has a single timeline across all
engines (it operates as a single queue), so it is not able to concurrently
run batches across multiple engines by itself; that is left up to the user
to submit multiple concurrent batches to multiple queues. Multiple users
will be load balanced across the system.

The mechanism used for load balancing in this patch is a late greedy
balancer. When a request is ready for execution, it is added to each
engine's queue, and when an engine is ready for its next request it
claims it from the virtual engine. The first engine to do so, wins, i.e.
the request is executed at the earliest opportunity (idle moment) in the
system.

As not all HW is created equal, the user is still able to skip the
virtual engine and execute the batch on a specific engine, all within the
same queue. It will then be executed in order on the correct engine,
with execution on other virtual engines being moved away due to the load
detection.

A couple of areas for potential improvement left!

- The virtual engine always take priority over equal-priority tasks.
Mostly broken up by applying FQ_CODEL rules for prioritising new clients,
and hopefully the virtual and real engines are not then congested (i.e.
all work is via virtual engines, or all work is to the real engine).

- We require the breadcrumb irq around every virtual engine request. For
normal engines, we eliminate the need for the slow round trip via
interrupt by using the submit fence and queueing in order. For virtual
engines, we have to allow any job to transfer to a new ring, and cannot
coalesce the submissions, so require the completion fence instead,
forcing the persistent use of interrupts.

- We only drip feed single requests through each virtual engine and onto
the physical engines, even if there was enough work to fill all ELSP,
leaving small stalls with an idle CS event at the end of every request.
Could we be greedy and fill both slots? Being lazy is virtuous for load
distribution on less-than-full workloads though.

Other areas of improvement are more general, such as reducing lock
contention, reducing dispatch overhead, looking at direct submission
rather than bouncing around tasklets etc.

sseu: Lift the restriction to allow sseu to be reconfigured on virtual
engines composed of RENDER_CLASS (rcs).

v2: macroize check_user_mbz()
v3: Cancel virtual engines on wedging
v4: Commence commenting
v5: Replace 64b sibling_mask with a list of class:instance
v6: Drop the one-element array in the uabi
v7: Assert it is an virtual engine in to_virtual_engine()
v8: Skip over holes in [class][inst] so we can selftest with (vcs0, vcs2)

Link: https://github.com/intel/media-driver/pull/283
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190521211134.16117-6-chris@chris-wilson.co.uk
2019-05-22 08:40:38 +01:00
..
gt drm/i915: Load balancing across a virtual engine 2019-05-22 08:40:38 +01:00
gvt drm/i915: Switch back to an array of logical per-engine HW contexts 2019-04-26 18:32:11 +01:00
selftests drm/i915/selftests: Add live vma selftest 2019-05-20 18:04:47 +03:00
.gitignore drm/i915: add Makefile magic for testing headers are self-contained 2019-04-04 19:49:42 +03:00
Kconfig drm/i915: Expose the busyspin durations for i915_wait_request 2019-04-19 20:33:38 +01:00
Kconfig.debug drm/i915: Track all held rpm wakerefs 2019-01-14 16:17:50 +00:00
Kconfig.profile drm/i915: Expose the busyspin durations for i915_wait_request 2019-04-19 20:33:38 +01:00
Makefile drm/i915: extract intel_gmbus.h from i915_drv.h and rename intel_i2c.c 2019-05-03 10:06:55 +03:00
Makefile.header-test drm/i915: extract intel_gmbus.h from i915_drv.h and rename intel_i2c.c 2019-05-03 10:06:55 +03:00
dvo_ch7xxx.c drm/i915/dvo: rename dvo.h to intel_dvo_dev.h and make self-contained 2019-04-30 14:29:41 +03:00
dvo_ch7017.c drm/i915/dvo: rename dvo.h to intel_dvo_dev.h and make self-contained 2019-04-30 14:29:41 +03:00
dvo_ivch.c drm/i915/dvo: rename dvo.h to intel_dvo_dev.h and make self-contained 2019-04-30 14:29:41 +03:00
dvo_ns2501.c drm/i915/dvo: rename dvo.h to intel_dvo_dev.h and make self-contained 2019-04-30 14:29:41 +03:00
dvo_sil164.c drm/i915/dvo: rename dvo.h to intel_dvo_dev.h and make self-contained 2019-04-30 14:29:41 +03:00
dvo_tfp410.c drm/i915/dvo: rename dvo.h to intel_dvo_dev.h and make self-contained 2019-04-30 14:29:41 +03:00
i915_active.c drm/i915: Protect i915_active iterators from the shrinker 2019-03-08 09:52:29 -08:00
i915_active.h drm/i915: Remove has-kernel-context 2019-03-08 10:57:12 +00:00
i915_active_types.h drm/i915: Pull i915_gem_active into the i915_active family 2019-02-05 17:20:11 +00:00
i915_cmd_parser.c drm/i915: Move GraphicsTechnology files under gt/ 2019-04-24 21:01:46 +01:00
i915_debugfs.c drm/i915: Add a new "remapped" gtt_view 2019-05-20 18:04:47 +03:00
i915_debugfs.h drm/i915: extract i915_debugfs.h from i915_drv.h 2019-05-03 10:06:40 +03:00
i915_drv.c drm/i915: Restore control over ppgtt for context creation ABI 2019-05-22 08:40:29 +01:00
i915_drv.h drm/i915: Add a new "remapped" gtt_view 2019-05-20 18:04:47 +03:00
i915_fixed.h drm/i915: Use mul_u32_u32() more 2019-05-03 20:09:51 +03:00
i915_gem.c drm/i915: Align dumb buffer stride to 4k to allow for gtt remapping 2019-05-20 18:04:48 +03: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
i915_gem_batch_pool.h
i915_gem_clflush.c drm/i915: Remove unecessary dma_fence_ops 2018-08-17 11:22:15 +02:00
i915_gem_clflush.h
i915_gem_context.c drm/i915: Load balancing across a virtual engine 2019-05-22 08:40:38 +01:00
i915_gem_context.h drm/i915: Allow a context to define its set of engines 2019-05-22 08:40:31 +01:00
i915_gem_context_types.h drm/i915: Allow a context to define its set of engines 2019-05-22 08:40:31 +01:00
i915_gem_dmabuf.c drm/i915: Flush pages on acquisition 2019-03-21 17:28:12 +00:00
i915_gem_evict.c drm/i915: Invert the GEM wakeref hierarchy 2019-04-24 22:26:49 +01:00
i915_gem_execbuffer.c drm/i915: Allow a context to define its set of engines 2019-05-22 08:40:31 +01:00
i915_gem_fence_reg.c drm/i915: Switch to bitmap_zalloc() 2019-03-20 17:50:35 +00:00
i915_gem_fence_reg.h drm/i915: Remove GPU reset dependence on struct_mutex 2019-01-25 14:27:22 +00:00
i915_gem_gtt.c drm/i915: Add a new "remapped" gtt_view 2019-05-20 18:04:47 +03:00
i915_gem_gtt.h drm/i915: Add a new "remapped" gtt_view 2019-05-20 18:04:47 +03:00
i915_gem_internal.c drm/i915: Make object/vma allocation caches global 2019-02-28 11:08:02 +00:00
i915_gem_object.c drm/i915: Use i915_global_register() 2019-03-06 10:00:50 +00:00
i915_gem_object.h drm/i915: Check domains for userptr on release 2019-03-31 12:46:52 +01:00
i915_gem_pm.c drm/i915: Cancel retire_worker on parking 2019-05-07 17:40:19 +01:00
i915_gem_pm.h drm/i915: Invert the GEM wakeref hierarchy 2019-04-24 22:26:49 +01:00
i915_gem_render_state.c drm/i915: Flush pages on acquisition 2019-03-21 17:28:12 +00:00
i915_gem_render_state.h
i915_gem_shrinker.c drm/i915: Start writeback from the shrinker 2019-04-20 15:06:31 +01:00
i915_gem_stolen.c drm/i915: Make object/vma allocation caches global 2019-02-28 11:08:02 +00:00
i915_gem_tiling.c drm/i915: Switch to bitmap_zalloc() 2019-03-20 17:50:35 +00:00
i915_gem_userptr.c drm/i915: Check domains for userptr on release 2019-03-31 12:46:52 +01:00
i915_gemfs.c
i915_gemfs.h
i915_globals.c drm/i915: Use static allocation for i915_globals_park() 2019-04-08 17:04:01 +01:00
i915_globals.h drm/i915: Move over to intel_context_lookup() 2019-03-08 13:59:52 +00:00
i915_gpu_error.c drm/i915/csr: move CSR version macros to intel_csr.h 2019-05-03 10:06:25 +03:00
i915_gpu_error.h drm/i915: Invert the GEM wakeref hierarchy 2019-04-24 22:26:49 +01:00
i915_ioc32.c drm: Split out drm_probe_helper.h 2019-01-24 13:20:42 +01:00
i915_irq.c drm/i915: extract intel_lpe_audio.h from i915_drv.h 2019-05-03 10:06:32 +03:00
i915_irq.h drm/i915: extract i915_irq.h from intel_drv.h and i915_drv.h 2019-04-30 14:30:05 +03:00
i915_memcpy.c
i915_mm.c
i915_oa_bdw.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_bdw.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_bxt.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_bxt.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cflgt2.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cflgt2.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cflgt3.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cflgt3.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_chv.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_chv.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cnl.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_cnl.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_glk.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_glk.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_hsw.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_hsw.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_icl.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_icl.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_kblgt2.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_kblgt2.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_kblgt3.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_kblgt3.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt2.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt2.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt3.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt3.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt4.c drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_oa_sklgt4.h drm/i915/perf: update generated files headers 2018-10-23 15:09:16 +01:00
i915_params.c drm/i915: Enable fastboot by default on Skylake and newer 2019-01-29 10:41:58 +01:00
i915_params.h drm/i915: Enable fastboot by default on Skylake and newer 2019-01-29 10:41:58 +01:00
i915_pci.c drm/i915: Move w/a 0477/WaDisableIPC:skl into intel_init_ipc() 2019-05-06 17:53:28 +03:00
i915_perf.c drm/i915: Switch back to an array of logical per-engine HW contexts 2019-04-26 18:32:11 +01:00
i915_pmu.c drm/i915: move some leftovers to intel_pm.h from i915_drv.h 2019-04-30 15:05:03 +03:00
i915_pmu.h Merge back earlier PM core material for v5.1. 2019-02-24 21:20:27 +01:00
i915_priolist_types.h drm/i915: Downgrade NEWCLIENT to non-preemptive 2019-05-17 16:04:56 +01:00
i915_pvinfo.h drm/i915: Mark up vGPU support for full-ppgtt 2019-03-15 09:04:54 +00:00
i915_query.c drm/i915/query: Split out query item checks 2019-02-26 10:32:57 +00:00
i915_query.h
i915_reg.h drm/i915/icl: Factor out combo PHY lane power setup helper 2019-05-02 17:15:09 +03:00
i915_request.c drm/i915: Downgrade NEWCLIENT to non-preemptive 2019-05-17 16:04:56 +01:00
i915_request.h drm/i915: Move i915_request_alloc into selftests/ 2019-04-26 18:32:20 +01:00
i915_scheduler.c drm/i915: Load balancing across a virtual engine 2019-05-22 08:40:38 +01:00
i915_scheduler.h drm/i915: Only reschedule the submission tasklet if preemption is possible 2019-05-07 17:40:20 +01:00
i915_scheduler_types.h drm/i915: Bump signaler priority on adding a waiter 2019-05-17 16:04:46 +01:00
i915_selftest.h drm/i915/selftests: Apply a subtest filter 2019-01-29 19:59:57 +00:00
i915_suspend.c drm/i915: extract intel_gmbus.h from i915_drv.h and rename intel_i2c.c 2019-05-03 10:06:55 +03:00
i915_sw_fence.c drm/i915: Allow contexts to share a single timeline across all engines 2019-03-22 13:12:38 +00:00
i915_sw_fence.h drm/i915: Allow contexts to share a single timeline across all engines 2019-03-22 13:12:38 +00:00
i915_syncmap.c drm/i915: Convert to BITS_PER_TYPE 2018-09-26 13:32:03 +01:00
i915_syncmap.h
i915_sysfs.c drm/i915: move some leftovers to intel_pm.h from i915_drv.h 2019-04-30 15:05:03 +03:00
i915_timeline.c drm/i915: Consolidate the timeline->barrier 2019-04-08 17:04:12 +01:00
i915_timeline.h drm/i915: Consolidate the timeline->barrier 2019-04-08 17:04:12 +01:00
i915_timeline_types.h drm/i915: Load balancing across a virtual engine 2019-05-22 08:40:38 +01:00
i915_trace.h drm/i915: extract i915_irq.h from intel_drv.h and i915_drv.h 2019-04-30 14:30:05 +03:00
i915_trace_points.c
i915_user_extensions.c drm/i915: Introduce the i915_user_extension_method 2019-03-22 13:12:30 +00:00
i915_user_extensions.h drm/i915: Introduce the i915_user_extension_method 2019-03-22 13:12:30 +00:00
i915_utils.h drm/i915: Allow a context to define its set of engines 2019-05-22 08:40:31 +01:00
i915_vgpu.c drm/i915: rename raw reg access functions 2019-03-26 19:15:15 +00:00
i915_vgpu.h drm/i915: Mark up vGPU support for full-ppgtt 2019-03-15 09:04:54 +00:00
i915_vma.c drm/i915/selftests: Add live vma selftest 2019-05-20 18:04:47 +03:00
i915_vma.h drm/i915: Add a new "remapped" gtt_view 2019-05-20 18:04:47 +03:00
icl_dsi.c drm/i915: Fix pixel clock and crtc clock config mismatch 2019-05-14 10:36:33 +03:00
intel_acpi.c drm/i915: extract intel_acpi.h from i915_drv.h 2019-05-03 10:06:37 +03:00
intel_acpi.h drm/i915: extract intel_acpi.h from i915_drv.h 2019-05-03 10:06:37 +03:00
intel_atomic.c drm/i915: extract intel_atomic.h from intel_drv.h 2019-04-30 15:04:55 +03:00
intel_atomic.h drm/i915: extract intel_atomic.h from intel_drv.h 2019-04-30 15:04:55 +03:00
intel_atomic_plane.c drm/i915: extract intel_sprite.h from intel_drv.h 2019-04-08 09:53:30 +03:00
intel_atomic_plane.h drm/i915: extract intel_atomic_plane.h from intel_drv.h 2019-04-08 09:53:07 +03:00
intel_audio.c drm/i915: extract intel_lpe_audio.h from i915_drv.h 2019-05-03 10:06:32 +03:00
intel_audio.h drm/i915: extract intel_audio.h from intel_drv.h 2019-04-08 09:51:22 +03:00
intel_bios.c drm/i915: extract intel_gmbus.h from i915_drv.h and rename intel_i2c.c 2019-05-03 10:06:55 +03:00
intel_bios.h drm/i915: extract intel_bios.h functions from i915_drv.h 2019-04-30 15:04:33 +03:00
intel_cdclk.c drm/i915: Corrupt DSI picture fix for GeminiLake 2019-05-02 10:46:55 +03:00
intel_cdclk.h drm/i915/cdclk: have only one init/uninit function 2019-04-08 09:53:40 +03:00
intel_color.c drm/i915: Clean up cherryview_load_luts() 2019-04-26 18:14:52 +03:00
intel_color.h drm/i915: extract intel_color.h from intel_drv.h 2019-04-08 09:52:14 +03:00
intel_combo_phy.c drm/i915: add single combo phy init/unit functions 2019-05-03 09:27:13 +03:00
intel_combo_phy.h drm/i915: add single combo phy init/unit functions 2019-05-03 09:27:13 +03:00
intel_connector.c drm/i915: extract intel_panel.h from intel_drv.h 2019-04-08 09:52:36 +03:00
intel_connector.h drm/i915: extract intel_connector.h from intel_drv.h 2019-04-08 09:51:41 +03:00
intel_crt.c drm/i915: extract intel_gmbus.h from i915_drv.h and rename intel_i2c.c 2019-05-03 10:06:55 +03:00
intel_crt.h drm/i915: extract intel_crt.h from intel_drv.h 2019-04-08 09:51:29 +03:00
intel_csr.c drm/i915/csr: alpha_support doesn't depend on csr or vice versa 2019-05-02 10:56:34 +03:00
intel_csr.h drm/i915/csr: move CSR version macros to intel_csr.h 2019-05-03 10:06:25 +03:00
intel_ddi.c drm/i915: Add readout and state check for pch_pfit.force_thru 2019-05-09 16:01:22 +03:00
intel_ddi.h drm/i915: extract intel_ddi.h from intel_drv.h 2019-04-08 09:51:36 +03:00
intel_device_info.c drm/i915: Fix uninitialized mask in intel_device_info_subplatform_init 2019-04-03 10:55:43 +01:00
intel_device_info.h drm/i915: Move GraphicsTechnology files under gt/ 2019-04-24 21:01:46 +01:00
intel_display.c drm/i915: Bump gen7+ fb size limits to 16kx16k 2019-05-20 18:04:48 +03:00
intel_display.h drm/i915: Align dumb buffer stride to 4k to allow for gtt remapping 2019-05-20 18:04:48 +03:00
intel_dp.c drm/i915/dp: Initialise locals for static analysis 2019-05-17 14:40:39 +01:00
intel_dp.h drm/i915: Set DP min_bpp to 8*3 for non-RGB output formats 2019-04-11 21:22:40 +03:00
intel_dp_aux_backlight.c drm/i915: extract intel_dp_aux_backlight.h from intel_drv.h 2019-04-30 14:30:00 +03:00
intel_dp_aux_backlight.h drm/i915: extract intel_dp_aux_backlight.h from intel_drv.h 2019-04-30 14:30:00 +03:00
intel_dp_link_training.c drm/i915: extract intel_dp_link_training.h from intel_drv.h 2019-04-30 14:29:56 +03:00
intel_dp_link_training.h drm/i915: extract intel_dp_link_training.h from intel_drv.h 2019-04-30 14:29:56 +03:00
intel_dp_mst.c drm/i915: extract intel_dpio_phy.h from i915_drv.h 2019-05-03 10:06:28 +03:00
intel_dp_mst.h drm/i915: extract intel_dp_mst.h from intel_drv.h 2019-04-30 15:04:47 +03:00
intel_dpio_phy.c drm/i915: extract intel_dpio_phy.h from i915_drv.h 2019-05-03 10:06:28 +03:00
intel_dpio_phy.h drm/i915: extract intel_dpio_phy.h from i915_drv.h 2019-05-03 10:06:28 +03:00
intel_dpll_mgr.c drm/i915: Replace use of PLLS power domain with DISPLAY_CORE domain 2019-05-14 14:06:30 +03:00
intel_dpll_mgr.h drm/i915: make intel_dpll_mgr.h self-contained 2019-04-30 14:29:44 +03:00
intel_drv.h drm/i915: Add a new "remapped" gtt_view 2019-05-20 18:04:47 +03:00
intel_dsi.c drm/i915: Determine DSI panel orientation from VBT 2018-11-13 17:20:32 +02:00
intel_dsi.h drm/i915/dsi: move operation mode types to intel_dsi.h 2019-05-03 10:06:11 +03:00
intel_dsi_dcs_backlight.c drm/i915: extract intel_dsi_dcs_backlight.h from intel_drv.h 2019-04-30 15:04:51 +03:00
intel_dsi_dcs_backlight.h drm/i915: extract intel_dsi_dcs_backlight.h from intel_drv.h 2019-04-30 15:04:51 +03:00
intel_dsi_vbt.c drm/i915: Separate sideband declarations to intel_sideband.h 2019-04-26 10:20:39 +01:00
intel_dvo.c drm/i915: extract intel_gmbus.h from i915_drv.h and rename intel_i2c.c 2019-05-03 10:06:55 +03:00
intel_dvo.h drm/i915: extract intel_dvo.h from intel_drv.h 2019-04-08 09:53:25 +03:00
intel_dvo_dev.h drm/i915/dvo: rename dvo.h to intel_dvo_dev.h and make self-contained 2019-04-30 14:29:41 +03:00
intel_fbc.c drm/i915/fbc: disable framebuffer compression on GeminiLake 2019-05-09 15:30:42 +03:00
intel_fbc.h drm/i915: extract intel_fbc.h from intel_drv.h 2019-04-08 09:51:56 +03:00
intel_fbdev.c drm-misc-next for v5.2: 2019-04-24 10:12:50 +10:00
intel_fbdev.h drm/i915: extract intel_fbdev.h from intel_drv.h 2019-04-08 09:52:49 +03:00
intel_fifo_underrun.c drm/i915: extract intel_fifo_underrun.h from intel_drv.h 2019-04-30 14:29:51 +03:00
intel_fifo_underrun.h drm/i915: extract intel_fifo_underrun.h from intel_drv.h 2019-04-30 14:29:51 +03:00
intel_frontbuffer.c drm/i915: extract intel_dp.h from intel_drv.h 2019-04-08 09:52:54 +03:00
intel_frontbuffer.h drm/i915: make intel_frontbuffer.h self-contained 2019-04-08 09:51:18 +03:00
intel_gmbus.c drm/i915: Kill PCH_KBP 2019-05-07 21:49:57 +03:00
intel_gmbus.h drm/i915: extract intel_gmbus.h from i915_drv.h and rename intel_i2c.c 2019-05-03 10:06:55 +03:00
intel_guc.c drm/i915/uc: Place uC firmware in upper range of GGTT 2019-04-20 08:19:32 +01:00
intel_guc.h drm/i915/uc: Reserve upper range of GGTT 2019-04-20 08:19:12 +01:00
intel_guc_ads.c drm/i915: Track the pinned kernel contexts on each engine 2019-03-08 14:00:02 +00:00
intel_guc_ads.h
intel_guc_ct.c drm/i915/guc: Support for extended GuC notification messages 2019-03-24 11:31:47 +00:00
intel_guc_ct.h drm/i915/guc: Splitting CT channel open/close functions 2019-02-20 23:53:04 +00:00
intel_guc_fw.c drm/i915/uc: Place uC firmware in upper range of GGTT 2019-04-20 08:19:32 +01:00
intel_guc_fw.h
intel_guc_fwif.h drm/i915/guc: doorbell checking cleanup 2018-10-23 09:42:25 +01:00
intel_guc_log.c drm/i915/guc: Flush the residual log capture irq on disabling 2019-02-22 11:25:32 +00:00
intel_guc_log.h
intel_guc_reg.h drm/i915/guc: doorbell checking cleanup 2018-10-23 09:42:25 +01:00
intel_guc_submission.c drm/i915: Seal races between async GPU cancellation, retirement and signaling 2019-05-08 16:02:41 +01:00
intel_guc_submission.h drm/i915: Move GraphicsTechnology files under gt/ 2019-04-24 21:01:46 +01:00
intel_gvt.c drm/i915: Enable gfx virtualization for Coffeelake platform 2019-01-10 11:38:34 +08:00
intel_gvt.h
intel_hdcp.c drm/i915/hdcp: Use both bits for device_count 2019-05-17 14:40:50 +01:00
intel_hdcp.h drm/i915: debugfs: HDCP2.2 capability read 2019-05-09 09:44:41 +02:00
intel_hdmi.c drm/i915/icl: Fix setting 10 bit deep color mode 2019-05-07 21:49:57 +03:00
intel_hdmi.h drm/i915: extract intel_hdmi.h from intel_drv.h 2019-04-08 09:53:01 +03:00
intel_hotplug.c drm/i915: extract intel_hotplug.h from intel_drv.h and i915_drv.h 2019-04-30 15:04:19 +03:00
intel_hotplug.h drm/i915: extract intel_hotplug.h from intel_drv.h and i915_drv.h 2019-04-30 15:04:19 +03:00
intel_huc.c drm/i915/uc: Place uC firmware in upper range of GGTT 2019-04-20 08:19:32 +01:00
intel_huc.h drm/i915/uc: Place uC firmware in upper range of GGTT 2019-04-20 08:19:32 +01:00
intel_huc_fw.c drm/i915/uc: Place uC firmware in upper range of GGTT 2019-04-20 08:19:32 +01:00
intel_huc_fw.h
intel_lpe_audio.c drm/i915: extract intel_lpe_audio.h from i915_drv.h 2019-05-03 10:06:32 +03:00
intel_lpe_audio.h drm/i915: extract intel_lpe_audio.h from i915_drv.h 2019-05-03 10:06:32 +03:00
intel_lspcon.c drm/i915: extract intel_dp.h from intel_drv.h 2019-04-08 09:52:54 +03:00
intel_lspcon.h drm/i915: extract intel_lspcon.h from intel_drv.h 2019-04-08 09:52:21 +03:00
intel_lvds.c drm/i915: extract intel_gmbus.h from i915_drv.h and rename intel_i2c.c 2019-05-03 10:06:55 +03:00
intel_lvds.h drm/i915: extract intel_lvds.h from intel_drv.h 2019-04-08 09:53:21 +03:00
intel_opregion.c drm/i915: extract intel_panel.h from intel_drv.h 2019-04-08 09:52:36 +03:00
intel_opregion.h drm/i915: Fixup stub definitions for intel_opregion_suspend|resume 2018-11-30 09:46:31 +00:00
intel_overlay.c drm/i915: extract intel_overlay.h from intel_drv.h and i915_drv.h 2019-04-30 15:04:41 +03:00
intel_overlay.h drm/i915: extract intel_overlay.h from intel_drv.h and i915_drv.h 2019-04-30 15:04:41 +03:00
intel_panel.c drm/i915: extract intel_dsi_dcs_backlight.h from intel_drv.h 2019-04-30 15:04:51 +03:00
intel_panel.h drm/i915: extract intel_panel.h from intel_drv.h 2019-04-08 09:52:36 +03:00
intel_pipe_crc.c drm/i915: Add readout and state check for pch_pfit.force_thru 2019-05-09 16:01:22 +03:00
intel_pipe_crc.h drm/i915: extract i915_debugfs.h from i915_drv.h 2019-05-03 10:06:40 +03:00
intel_pm.c drm/i915: Move w/a 0477/WaDisableIPC:skl into intel_init_ipc() 2019-05-06 17:53:28 +03:00
intel_pm.h drm/i915: move some leftovers to intel_pm.h from i915_drv.h 2019-04-30 15:05:03 +03:00
intel_psr.c drm/i915/psr: Do not enable PSR in interlaced mode for all GENs 2019-04-08 10:39:11 -07:00
intel_psr.h drm/i915: extract intel_psr.h from intel_drv.h 2019-04-08 09:52:03 +03:00
intel_quirks.c drm/i915: extract intel_quirks.h from intel_drv.h 2019-04-30 15:04:37 +03:00
intel_quirks.h drm/i915: extract intel_quirks.h from intel_drv.h 2019-04-30 15:04:37 +03:00
intel_renderstate.h
intel_renderstate_gen6.c
intel_renderstate_gen7.c
intel_renderstate_gen8.c
intel_renderstate_gen9.c
intel_runtime_pm.c drm/i915: Replace use of PLLS power domain with DISPLAY_CORE domain 2019-05-14 14:06:30 +03:00
intel_runtime_pm.h drm/i915: Remove the unneeded AUX power ref from intel_dp_detect() 2019-05-14 14:06:30 +03:00
intel_sdvo.c drm/i915: extract intel_gmbus.h from i915_drv.h and rename intel_i2c.c 2019-05-03 10:06:55 +03:00
intel_sdvo.h drm/i915: extract intel_sdvo.h from intel_drv.h 2019-04-08 09:52:26 +03:00
intel_sdvo_regs.h
intel_sideband.c drm/i915: Move sandybride pcode access to intel_sideband.c 2019-04-26 10:20:47 +01:00
intel_sideband.h drm/i915: Move sandybride pcode access to intel_sideband.c 2019-04-26 10:20:47 +01:00
intel_sprite.c drm/i915: Overcome display engine stride limits via GTT remapping 2019-05-20 18:04:47 +03:00
intel_sprite.h drm/i915: Enable pipe HDR mode on ICL if only HDR planes are used 2019-04-30 22:14:43 +03:00
intel_tv.c drm/i915: extract intel_hotplug.h from intel_drv.h and i915_drv.h 2019-04-30 15:04:19 +03:00
intel_tv.h drm/i915: extract intel_tv.h from intel_drv.h 2019-04-08 09:53:16 +03:00
intel_uc.c drm/i915/guc: Fix runtime suspend 2019-05-03 08:38:37 +01:00
intel_uc.h drm/i915/guc: Fix runtime suspend 2019-05-03 08:38:37 +01:00
intel_uc_fw.c drm/i915/uc: Place uC firmware in upper range of GGTT 2019-04-20 08:19:32 +01:00
intel_uc_fw.h drm/i915/uc: Place uC firmware in upper range of GGTT 2019-04-20 08:19:32 +01:00
intel_uncore.c drm/i915: Reboot CI if forcewake fails 2019-05-08 13:58:31 +01:00
intel_uncore.h drm/i915: Convert i915_reset.c over to using uncore mmio 2019-04-05 22:03:24 +01:00
intel_vbt_defs.h drm/i915/vbt: Parse and use the new field with PSR2 TP2/3 wakeup time 2019-03-13 14:20:19 -07:00
intel_vdsc.c drm/i915: extract intel_vdsc.h from intel_drv.h and i915_drv.h 2019-04-30 15:04:44 +03:00
intel_vdsc.h drm/i915: extract intel_vdsc.h from intel_drv.h and i915_drv.h 2019-04-30 15:04:44 +03:00
intel_wakeref.c drm/i915: Prefer checking the wakeref itself rather than the counter 2019-05-07 11:59:43 +01:00
intel_wakeref.h drm/i915: Prefer checking the wakeref itself rather than the counter 2019-05-07 11:59:43 +01:00
intel_wopcm.c drm/i915/uc: add dev_priv parameter to intel_uc_is_using_* functions 2018-12-31 15:27:23 +02:00
intel_wopcm.h
vlv_dsi.c drm/i915: Refactor bdw_get_pipemisc_bpp 2019-05-14 10:36:33 +03:00
vlv_dsi_pll.c drm/i915: Separate sideband declarations to intel_sideband.h 2019-04-26 10:20:39 +01:00