Star64_linux/drivers/gpu/drm/i915/gvt
Chris Wilson 2935ed5339 drm/i915: Remove logical HW ID
With the introduction of ctx->engines[] we allow multiple logical
contexts to be used on the same engine (e.g. with virtual engines).
According to bspec, aach logical context requires a unique tag in order
for context-switching to occur correctly between them. [Simple
experiments show that it is not so easy to trick the HW into performing
a lite-restore with matching logical IDs, though my memory from early
Broadwell experiments do suggest that it should be generating
lite-restores.]

We only need to keep a unique tag for the active lifetime of the
context, and for as long as we need to identify that context. The HW
uses the tag to determine if it should use a lite-restore (why not the
LRCA?) and passes the tag back for various status identifies. The only
status we need to track is for OA, so when using perf, we assign the
specific context a unique tag.

v2: Calculate required number of tags to fill ELSP.

Fixes: 976b55f0e1 ("drm/i915: Allow a context to define its set of engines")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111895
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Acked-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191004134015.13204-14-chris@chris-wilson.co.uk
2019-10-04 15:39:30 +01:00
..
aperture_gm.c drm/i915: Pull i915_vma_pin under the vm->mutex 2019-10-04 15:39:02 +01:00
cfg_space.c drm/i915/gvt: Fix function comment doc errors 2018-08-07 10:39:53 +08:00
cmd_parser.c Merge drm/drm-next into drm-intel-next-queued 2019-08-22 00:10:36 -07:00
cmd_parser.h
debug.h
debugfs.c drm/i915/gvt: no need to check return value of debugfs_create functions 2019-08-13 17:55:06 +08:00
display.c
display.h drm/i915/gvt: add functions to get default resolution 2019-01-31 11:26:48 +08:00
dmabuf.c drm/prime: Align gem_prime_export with obj_funcs.export 2019-06-21 17:30:49 +02:00
dmabuf.h
edid.c drm/i915/gvt: Refine port select logic for CFL platform 2019-01-10 11:38:04 +08:00
edid.h drm/i915/gvt: Fix static checker warning on intel_gvt_i2c_handle_aux_ch_write() 2016-11-14 18:06:44 +08:00
execlist.c
execlist.h
fb_decoder.c drm/i915/gvt: Don't use ggtt_validdate_range() with size=0 2019-07-30 14:29:48 +08:00
fb_decoder.h
firmware.c drm/i915: Remove I915_READ_NOTRACE 2019-06-12 15:33:13 +01:00
gtt.c drm/i915/gvt: Warning for invalid ggtt access 2019-07-30 14:29:48 +08:00
gtt.h drm/i915: Drop extern qualifiers from header function prototypes 2019-07-12 13:04:54 +01:00
gvt.c drm/i915/gvt: no need to check return value of debugfs_create functions 2019-08-13 17:55:06 +08:00
gvt.h drm/i915/gvt: factor out tlb and mocs register offset table 2019-08-13 17:55:06 +08:00
handlers.c drm/i915/psr: Make PSR registers relative to transcoders 2019-08-22 13:09:06 -07:00
hypercall.h Linux 5.0-rc7 2019-02-18 13:27:15 +10:00
interrupt.c drm/i915/gvt: Fix typo of VBLANK_TIMER_PERIOD 2019-08-13 17:54:41 +08:00
interrupt.h drm/i915/gvt: vGPU command scanner 2016-10-14 18:15:25 +08:00
kvmgt.c drm/i915: Remove logical HW ID 2019-10-04 15:39:30 +01:00
Makefile
mmio.c drm/i915/gvt: remove the unused sreg 2019-03-11 11:32:07 +08:00
mmio.h drm/i915/gvt: Add coffeelake platform definition 2019-01-10 11:35:02 +08:00
mmio_context.c drm/i915/gvt: factor out tlb and mocs register offset table 2019-08-13 17:55:06 +08:00
mmio_context.h drm/i915/gvt: only copy the first page for restore inhibit context 2018-08-02 13:27:54 +08:00
mpt.h Linux 5.0-rc7 2019-02-18 13:27:15 +10:00
opregion.c drm/i915: move modesetting core code under display/ 2019-06-17 11:48:32 +03:00
page_track.c drm/i915/gvt: Fix function comment doc errors 2018-08-07 10:39:53 +08:00
page_track.h drm/i915/gvt: Provide generic page_track infrastructure for write-protected page 2018-03-06 13:19:20 +08:00
reg.h
sched_policy.c drm/i915: update rpm_get/put to use the rpm structure 2019-06-14 15:58:33 +01:00
sched_policy.h drm/i915/gvt: Kick scheduler when new workload queued 2017-12-04 11:24:35 +08:00
scheduler.c drm/i915: Coordinate i915_active with its own mutex 2019-10-04 15:39:12 +01:00
scheduler.h drm/i915/gvt: save RING_HEAD into vreg when vgpu switched out 2019-06-03 13:18:36 +08:00
trace.h drm/i915/gvt: give the cmd parser cmd_info a const treatment 2019-01-10 11:29:02 +08:00
trace_points.c drm/i915/gvt: remove duplicate include of trace.h 2019-07-30 14:26:30 +08:00
vgpu.c drm/i915/gvt: no need to check return value of debugfs_create functions 2019-08-13 17:55:06 +08:00