summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdkfd/kfd_priv.h
diff options
context:
space:
mode:
authorFelix Kuehling2018-03-15 22:27:50 +0100
committerOded Gabbay2018-03-15 22:27:50 +0100
commit552764b680a65d6069ad651b356d5465082939d0 (patch)
treec5ccbc25e105cfb9e17daa41873bd1d77b2069c1 /drivers/gpu/drm/amd/amdkfd/kfd_priv.h
parentdrm/amdkfd: Allocate CWSR trap handler memory for dGPUs (diff)
downloadkernel-qcow2-linux-552764b680a65d6069ad651b356d5465082939d0.tar.gz
kernel-qcow2-linux-552764b680a65d6069ad651b356d5465082939d0.tar.xz
kernel-qcow2-linux-552764b680a65d6069ad651b356d5465082939d0.zip
drm/amdkfd: Add TC flush on VMID deallocation for Hawaii
On GFX7 the CP does not perform a TC flush when queues are unmapped. To avoid TC eviction from accessing an invalid VMID, flush it explicitly before releasing a VMID. v2: Fix unnecessary list_for_each_entry_safe v3: Moved allocation to kfd_process_device_init_vm Signed-off-by: Amber Lin <Amber.Lin@amd.com> Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com> Acked-by: Christian König <christian.koenig@amd.com> Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdkfd/kfd_priv.h')
-rw-r--r--drivers/gpu/drm/amd/amdkfd/kfd_priv.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h
index b2b5ef8c4536..aaed005ce1f5 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h
@@ -494,6 +494,7 @@ struct qcm_process_device {
/* IB memory */
uint64_t ib_base;
+ void *ib_kaddr;
};
/* KFD Memory Eviction */
@@ -834,6 +835,8 @@ int pm_send_unmap_queue(struct packet_manager *pm, enum kfd_queue_type type,
void pm_release_ib(struct packet_manager *pm);
+uint32_t pm_create_release_mem(uint64_t gpu_addr, uint32_t *buffer);
+
uint64_t kfd_get_number_elems(struct kfd_dev *kfd);
/* Events */