[git pull] amdkfd next 4.16
Oded Gabbay
oded.gabbay at gmail.com
Sun Dec 24 11:41:47 UTC 2017
Hi Dave,
amdkfd stuff for 4.16:
- Add CWSR (compute wave save restore) support for GFX8 (Carrizo)
- Fix SDMA user-mode queues support for GFX7 (Kaveri)
- Add SDMA user-mode queues support for GFX8 (Carrizo)
- Allow HWS (hardware scheduling) to schedule multiple processes concurrently
- Add debugfs support
- Simplify process locking and lock dependencies
- Refactoring topology code to prepare for dGPU support + fixes to that code
- Add option to generate dummy/virtual CRAT table when its missing or deformed
- Recognize CPUs other then APUs as compute entities
- Various clean ups and bug fixes
I have not yet sent the dGPU topology code because it depends on a patch
for the PCI subsystem that adds PCIe atomics support. Once that patch is
upstreamed we can continue with the rest of the dGPU code.
Thanks and happy new year,
Oded
The following changes since commit df2869abd92b740af141ee2eb081bfc69bd80877:
Merge branch 'drm-next-4.16' of git://people.freedesktop.org/~agd5f/linux into drm-next (2017-12-21 11:17:45 +1000)
are available in the Git repository at:
git://people.freedesktop.org/~gabbayo/linux tags/drm-amdkfd-next-2017-12-24
for you to fetch changes up to 9f0a0b41ffccf9a76b19ea263ae16d2d5888093e:
drm/amdgpu: Add support for reporting VRAM usage (2017-12-08 23:09:05 -0500)
----------------------------------------------------------------
Amber Lin (1):
drm/amdkfd: Add perf counters to topology
Ben Goz (1):
drm/amdkfd: Add AQL Queue Memory flag on topology
Felix Kuehling (25):
drm/amd: Update kgd_kfd interface for resuming SDMA queues
drm/amdgpu: Add support for resuming SDMA queues w/o HWS
drm/amdkfd: Use ASIC-specific SDMA MQD type
drm/amdkfd: Hardware DWORD size is 4 bytes
drm/amdkfd: Use order_base_2 to get log2 of buffes sizes
drm/amdkfd: Cleanup qpd.pqm initialization
drm/amdkfd: Add trap handler for CWSR
drm/amdkfd: Add CWSR support
drm/amdkfd: Add support for user-mode trap handlers
drm/amdgpu: fix get_max_engine_clock_in_mhz
drm/amdkfd: map multiple processes to HW scheduler
drm/amdkfd: Fix oversubscription accounting
drm/amdgpu: Fix definition of KFD_CIK_SDMA_QUEUE_OFFSET
drm/amdgpu: Add kfd2kgd APIs for dumping HQDs
drm/amdkfd: Add debugfs support to KFD
drm/amdkfd: Get reference to lead_thread task struct
drm/amdkfd: Make kfd_process reference counted
drm/amdkfd: Use ref count to prevent kfd_process destruction
drm/amdkfd: Reduce nesting in kfd_create_process_device_data
drm/amdkfd: Factor PDD destruction out of kfd_process_wq_release
drm/amdkfd: Group up CRAT related functions
drm/amdkfd: Turn verbose topology messages into pr_debug
drm/amdkfd: Simplify counting of memory banks
drm/amdkfd: Add topology support for CPUs
drm/amdkfd: Module option to disable CRAT table
Flora Cui (3):
drm/amd: add new interface to query cu info
drm/amdgpu: add amdgpu interface to query cu info
drm/amdkfd: Update number of compute unit from KGD
Harish Kasiviswanathan (13):
drm/amd: Add get_local_mem_info to KGD-KFD interface
drm/amdgpu: Implement get_local_mem_info
drm/amdkfd: Stop using get_vmem_size KGD-KFD interface
drm/amdkfd: Remove deprecated get_vmem_size
drm/amd: Remove get_vmem_size from KGD-KFD interface
drm/amdkfd: Topology: Fix location_id
drm/amdkfd: Reorganize CRAT fetching from ACPI
drm/amdkfd: Decouple CRAT parsing from device list update
drm/amdkfd: Support enumerating non-GPU devices
drm/amdkfd: sync IOLINK defines to thunk spec
drm/amdkfd: Fix sibling_map[] size
drm/amdkfd: Add topology support for dGPUs
drm/amdkfd: Ignore ACPI CRAT for non-APU systems
Kent Russell (2):
drm/amdkfd: Fix printing pointer cast
drm/amdgpu: Add support for reporting VRAM usage
Philip Cox (3):
drm/amdgpu: Implement amdgpu SDMA functions for VI
drm/amdkfd: Implement amdkfd SDMA functions for VI
drm/amdkfd: Fixup incorrect info in the CZ CRAT table
Philip Yang (1):
drm/amdkfd: Add crash protection in debugger register path
Yong Zhao (4):
drm/amdkfd: Delete a useless parameter from create_queue function pointer
drm/amdkfd: Return NULL if kfd_lookup_process_by_pasid fails
drm/amdkfd: Simplify locking during process creation
drm/amdkfd: Fix memory leaks in kfd topology
drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 +
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 67 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 5 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 111 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 184 ++-
drivers/gpu/drm/amd/amdgpu/cikd.h | 2 +-
drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 7 +
drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 5 +
drivers/gpu/drm/amd/amdgpu/vid.h | 2 +
drivers/gpu/drm/amd/amdkfd/Makefile | 4 +-
.../gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx8.asm | 1384 ++++++++++++++++++++
drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 46 +-
drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 1267 ++++++++++++++++++
drivers/gpu/drm/amd/amdkfd/kfd_crat.h | 42 +-
drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c | 14 +-
drivers/gpu/drm/amd/amdkfd/kfd_debugfs.c | 75 ++
drivers/gpu/drm/amd/amdkfd/kfd_device.c | 31 +-
.../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 112 +-
.../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 8 +-
drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c | 9 +-
drivers/gpu/drm/amd/amdkfd/kfd_events.c | 14 +-
drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 7 +-
drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c | 2 +-
drivers/gpu/drm/amd/amdkfd/kfd_module.c | 17 +
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.h | 4 +
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c | 48 +-
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c | 167 ++-
drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 59 +-
drivers/gpu/drm/amd/amdkfd/kfd_pasid.c | 2 +-
drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 79 +-
drivers/gpu/drm/amd/amdkfd/kfd_process.c | 259 +++-
.../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c | 78 +-
drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 1061 ++++++++-------
drivers/gpu/drm/amd/amdkfd/kfd_topology.h | 33 +-
drivers/gpu/drm/amd/include/kgd_kfd_interface.h | 52 +-
drivers/gpu/drm/amd/include/vi_structs.h | 2 +
include/uapi/linux/kfd_ioctl.h | 15 +-
37 files changed, 4632 insertions(+), 643 deletions(-)
create mode 100644 drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx8.asm
create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_crat.c
create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_debugfs.c
More information about the amd-gfx
mailing list