linux/drivers/gpu/drm/i915/gvt
Colin Xu d57b39e3ee drm/i915/gvt: Enable async flip on plane surface mmio writes
According to Intel GFX PRM on 01.org, plane surface address can be updated
synchronously or asynchronously. Synchronous flip will hold plane surface
address update to start of next vsync, which is current implementation.
Asynchronous flip will update the address as soon as possible. Without
async flip, some 3D application could not reach better performance and
the maximum performance is no higher than vsync frequency.

The patch enables the async flip on plane surface address mmio update,
and increment flip count correctly.

With async flip enabled, some 3D applications have significant performance
improvement. i.e. 3DMark Ice Storm has a 300%~400% increment on score.

v2:
Use bit operation definition for flip mode. (zhenyu)

Reviewed-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Colin Xu <colin.xu@intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
2019-03-29 11:10:22 +08:00
..
aperture_gm.c drm/i915/gvt: Off by one in intel_vgpu_write_fence() 2018-08-14 15:26:59 +08:00
cfg_space.c drm/i915/gvt: Fix function comment doc errors 2018-08-07 10:39:53 +08:00
cmd_parser.c drm/i915/gvt: Enable synchronous flip on handling MI_DISPLAY_FLIP 2019-03-29 11:09:57 +08:00
cmd_parser.h
debug.h drm/i915/gvt: Make gvt_vgpu_err use pr_err 2017-11-16 11:48:34 +08:00
debugfs.c drm/i915/gvt: scan non-privileged batch buffer for debug purpose 2018-04-23 13:09:34 +08:00
display.c drm/i915/gvt: Enable async flip on plane surface mmio writes 2019-03-29 11:10:22 +08:00
display.h drm/i915/gvt: add functions to get default resolution 2019-01-31 11:26:48 +08:00
dmabuf.c drm/i915/gvt: Enable gfx virtualiztion for CFL 2019-01-10 11:36:43 +08:00
dmabuf.h drm/i915/gvt: Dmabuf support for GVT-g 2017-12-04 11:24:33 +08:00
edid.c drm/i915/gvt: Refine port select logic for CFL platform 2019-01-10 11:38:04 +08:00
edid.h
execlist.c drm/i915/gvt: refine intel_vgpu_submission_ops as per engine ops 2018-02-06 11:40:59 -08:00
execlist.h drm/i915/gvt: use array to avoid potential buffer overflow 2018-06-11 15:04:45 +08:00
fb_decoder.c drm/i915/gvt: Enable gfx virtualiztion for CFL 2019-01-10 11:36:43 +08:00
fb_decoder.h drm/i915/gvt: Fix drm_format_mod value for vGPU plane 2018-08-30 12:56:33 +08:00
firmware.c drm/i915/gvt: Use offsetofend() rather than offsetof + sizeof 2018-05-17 22:05:10 +08:00
gtt.c drm/i915/gvt: Refine the combined intel_vgpu_oos_page struct to save memory 2019-02-20 17:05:36 +08:00
gtt.h drm/i915/gvt: Refine the combined intel_vgpu_oos_page struct to save memory 2019-02-20 17:05:36 +08:00
gvt.c drm/i915/gvt: add hotplug emulation 2019-01-31 11:26:55 +08:00
gvt.h drm/i915/gvt: remove the unused sreg 2019-03-11 11:32:07 +08:00
handlers.c drm/i915/gvt: Enable async flip on plane surface mmio writes 2019-03-29 11:10:22 +08:00
hypercall.h drm/i915/gvt: add VFIO EDID region 2019-01-31 11:41:25 +08:00
interrupt.c drm/i915/gvt: Enable gfx virtualiztion for CFL 2019-01-10 11:36:43 +08:00
interrupt.h
kvmgt.c drm/i915/gvt: add VFIO EDID region 2019-01-31 11:41:25 +08:00
Makefile drm/i915/gvt: Change KVMGT as self load module 2019-01-02 15:51:26 +08:00
mmio_context.c drm/i915/gvt: Enable gfx virtualiztion for CFL 2019-01-10 11:36:43 +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
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
mpt.h drm/i915/gvt: add VFIO EDID region 2019-01-31 11:41:25 +08:00
opregion.c This is the 4.19-rc5 stable release 2018-09-27 11:06:46 +10: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 drm/i915/gvt: Add macro define for mmio 0x50080 and gvt flip event 2019-03-29 11:09:34 +08:00
sched_policy.c drm/i915/gvt: switch to kernel types 2019-01-23 13:56:14 +08: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/gvt: Enable gfx virtualiztion for CFL 2019-01-10 11:36:43 +08:00
scheduler.h drm/i915/gvt: switch to kernel types 2019-01-23 13:56:14 +08:00
trace_points.c
trace.h drm/i915/gvt: give the cmd parser cmd_info a const treatment 2019-01-10 11:29:02 +08:00
vgpu.c drm/i915/gvt: add VFIO EDID region 2019-01-31 11:41:25 +08:00