[PATCH 00/23] Add support AMD GPU virtualization soultion
Xiangliang Yu
Xiangliang.Yu at amd.com
Sat Dec 17 16:16:22 UTC 2016
This patch series will enable AMD GPU virtualization and wires it
into amdgpu modules.
The code design is base on below ideas:
1. Make virtualization code independent;
2. Self-maintain related GPU virtualization codes;
3. Easy to maintain virtualization codes;
4. Reduce the influence on other amdgpu components;
5. Easy to support different chips;
According to above ideas, make the following changes:
1. Create a new directory for virtualization and put all of
related virtualization code into it;
2. Create new IP block to support different virtual features.
3. Create new file for each different hardware;
In the end, the patch series is support serval virtualization
features:
1. Support CSA feature;
2. Support Mailbox communication with GPU hypervisor;
3. Support KIQ feature;
Xiangliang Yu (23):
drm/amdgpu: add support kernel interface queue(KIQ)
drm/amdgpu: add kiq into compiling
drm/amdgpu: export KIQ interfaces
drm/amdgpu: add new structure for KIQ memory allcation
drm/amdgpu/gfx8: add support KIQ for FIJI/TONGA chips
drm/amdgpu/gfx8: correct KIQ hdp flush
drm/amdgpu: create new directory for GPU virtualization
drm/amdgpu: add new flag for virtual function
drm/amdgpu: enable virtualization feature for FIJI/TONGA
drm/amdgpu: export gem va update interface
drm/amdgpu: implement context save area(CSA) feature
drm/amdgpu: Insert meta data during submitting IB
drm/amdgpu/mxgpu: add support for mailbox communication
drm/amdgpu: export two mailbox interface to amdgpu
drm/amdgpu/mxgpu: implement register access function with KIQ
drm/amdgpu: add flag to indicate VF runtime state
drm/amdgpu: export vi common ip block
drm/amdgpu: add new maroc to identify virtualization ip block
drm/amdgpu/mxgpu: add implementation of GPU virtualization of VI
drm/amdgpu/mxgpu: enable VI virtualization
drm/amdgpu: change golden register program sequence of virtualization
drm/amdgpu: do not reset gpu for virtualization
drm/amdgpu/mxgpu: add Makefie and Kconfig for GPU virtualization
drivers/gpu/drm/amd/amdgpu/Makefile | 9 +-
drivers/gpu/drm/amd/amdgpu/amdgpu.h | 35 +++
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 14 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 4 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 6 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 2 +
drivers/gpu/drm/amd/amdgpu/amdgpu_kiq.c | 436 ++++++++++++++++++++++++++
drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 4 +
drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h | 34 ++-
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 8 +
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 4 +
drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 240 ++++++++++++++-
drivers/gpu/drm/amd/amdgpu/vi.c | 8 +-
drivers/gpu/drm/amd/amdgpu/vi.h | 2 +-
drivers/gpu/drm/amd/amdgpu/vid.h | 2 +
drivers/gpu/drm/amd/include/amd_shared.h | 2 +
drivers/gpu/drm/amd/mxgpu/Kconfig | 13 +
drivers/gpu/drm/amd/mxgpu/Makefile | 11 +
drivers/gpu/drm/amd/mxgpu/amd_mxgpu.c | 105 +++++++
drivers/gpu/drm/amd/mxgpu/amd_mxgpu.h | 93 ++++++
drivers/gpu/drm/amd/mxgpu/mxgpu_csa.c | 297 ++++++++++++++++++
drivers/gpu/drm/amd/mxgpu/mxgpu_kiq.c | 110 +++++++
drivers/gpu/drm/amd/mxgpu/mxgpu_mb.c | 159 ++++++++++
drivers/gpu/drm/amd/mxgpu/mxgpu_vi.c | 472 +++++++++++++++++++++++++++++
24 files changed, 2058 insertions(+), 12 deletions(-)
create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_kiq.c
create mode 100644 drivers/gpu/drm/amd/mxgpu/Kconfig
create mode 100644 drivers/gpu/drm/amd/mxgpu/Makefile
create mode 100644 drivers/gpu/drm/amd/mxgpu/amd_mxgpu.c
create mode 100644 drivers/gpu/drm/amd/mxgpu/amd_mxgpu.h
create mode 100644 drivers/gpu/drm/amd/mxgpu/mxgpu_csa.c
create mode 100644 drivers/gpu/drm/amd/mxgpu/mxgpu_kiq.c
create mode 100644 drivers/gpu/drm/amd/mxgpu/mxgpu_mb.c
create mode 100644 drivers/gpu/drm/amd/mxgpu/mxgpu_vi.c
--
2.7.4
More information about the amd-gfx
mailing list