This patchset is used to discuss and finalize the i915 changes required by GVT context. Previously we have discussed about how to hack i915 to meet GVT context requirement, and thanks for the idea and comments. In this patchset, mostly it refactors the existing i915 APIs, spliting the hard-coded assumptions from its core logic, keep these assumptions in the high level wrapper and make the core logic much more flexible and config- urable, which is able to be used by GVT context creation and submission. Mostly it based on Daniel's and Kevin's idea here: http://www.spinics.net/lists/intel-gfx/msg87750.html http://www.spinics.net/lists/intel-gfx/msg87745.html And also it incldues the two v2 patches which have addresses the comments from Joonas Previous patches reviewed here: drm/i915/gvt: Introduce the basic architecture of GVT-g: http://www.spinics.net/lists/intel-gfx/msg86739.html drm/i915: Introduce host graphics memory/fence partition for GVT-g http://www.spinics.net/lists/intel-gfx/msg87132.html Acknowledgment --------------- iGVT-g implementation is several years effort and many people contributed to the code. There names are not here yet. In later formal patchset we will reflect individual's contribution. Meanwhile, in the previous iGVT-g related discussion, Daniel, Chris and Joonas ever gave very good inputs. We appreciate them and look forward to more comments/suggestions from community. We are trying to get more familiar with i915 and willing to adopt suggestions to keep improving. We hope to work with community together to make iGVT-g a great component in i915 to support graphics virtualization. Thanks! Bing Niu (1): drm/i915: Introduce host graphics memory/fence partition for GVT-g Zhi Wang (13): drm/i915: factor out i915_pvinfo.h drm/i915/gvt: Introduce the basic architecture of GVT-g drm/i915: factor out alloc_context_idr() and __i915_gem_create_context() drm/i915: factor out __create_legacy_hw_context() drm/i915: let __i915_gem_context_create() takes context creation params drm/i915: factor out __intel_lr_context_deferred_alloc() drm/i915: Support per-PPGTT address space mode drm/i915: generate address mode bit from PPGTT instance drm/i915: update PDPs by condition when submit the LRC context drm/i915: Introduce execlist context status change notification drm/i915: factor out execlists_i915_pick_requests() drm/i915: Support context single submission when GVT is active drm/i915: Introduce GVT context creation API drivers/gpu/drm/i915/Kconfig | 15 ++ drivers/gpu/drm/i915/Makefile | 2 + drivers/gpu/drm/i915/gvt/Makefile | 5 + drivers/gpu/drm/i915/gvt/debug.h | 57 +++++ drivers/gpu/drm/i915/gvt/gvt.c | 397 ++++++++++++++++++++++++++++++++ drivers/gpu/drm/i915/gvt/gvt.h | 100 ++++++++ drivers/gpu/drm/i915/gvt/hypercall.h | 30 +++ drivers/gpu/drm/i915/gvt/mpt.h | 34 +++ drivers/gpu/drm/i915/gvt/params.c | 44 ++++ drivers/gpu/drm/i915/gvt/params.h | 37 +++ drivers/gpu/drm/i915/gvt/reg.h | 34 +++ drivers/gpu/drm/i915/i915_dma.c | 14 ++ drivers/gpu/drm/i915/i915_drv.h | 52 +++++ drivers/gpu/drm/i915/i915_gem.c | 4 +- drivers/gpu/drm/i915/i915_gem_context.c | 204 +++++++++++----- drivers/gpu/drm/i915/i915_gem_gtt.c | 85 ++++--- drivers/gpu/drm/i915/i915_gem_gtt.h | 3 + drivers/gpu/drm/i915/i915_gvt.c | 93 ++++++++ drivers/gpu/drm/i915/i915_gvt.h | 49 ++++ drivers/gpu/drm/i915/i915_pvinfo.h | 113 +++++++++ drivers/gpu/drm/i915/i915_vgpu.c | 21 +- drivers/gpu/drm/i915/i915_vgpu.h | 86 +------ drivers/gpu/drm/i915/intel_lrc.c | 225 +++++++++++++----- drivers/gpu/drm/i915/intel_lrc.h | 15 ++ 24 files changed, 1477 insertions(+), 242 deletions(-) create mode 100644 drivers/gpu/drm/i915/gvt/Makefile create mode 100644 drivers/gpu/drm/i915/gvt/debug.h create mode 100644 drivers/gpu/drm/i915/gvt/gvt.c create mode 100644 drivers/gpu/drm/i915/gvt/gvt.h create mode 100644 drivers/gpu/drm/i915/gvt/hypercall.h create mode 100644 drivers/gpu/drm/i915/gvt/mpt.h create mode 100644 drivers/gpu/drm/i915/gvt/params.c create mode 100644 drivers/gpu/drm/i915/gvt/params.h create mode 100644 drivers/gpu/drm/i915/gvt/reg.h create mode 100644 drivers/gpu/drm/i915/i915_gvt.c create mode 100644 drivers/gpu/drm/i915/i915_gvt.h create mode 100644 drivers/gpu/drm/i915/i915_pvinfo.h -- 1.9.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx