drm/amdgpu: Remove unused function pointers
Remove unused function pointers in kfd2kgd structure. Signed-off-by: Amber Lin <Amber.Lin@amd.com> Acked-by: Christian König <christian.koenig@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Родитель
5b87245faf
Коммит
dfcbe6d5f4
|
@ -173,13 +173,6 @@ static int get_tile_config(struct kgd_dev *kgd,
|
|||
}
|
||||
|
||||
static const struct kfd2kgd_calls kfd2kgd = {
|
||||
.init_gtt_mem_allocation = alloc_gtt_mem,
|
||||
.free_gtt_mem = free_gtt_mem,
|
||||
.get_local_mem_info = get_local_mem_info,
|
||||
.get_gpu_clock_counter = get_gpu_clock_counter,
|
||||
.get_max_engine_clock_in_mhz = get_max_engine_clock_in_mhz,
|
||||
.alloc_pasid = amdgpu_pasid_alloc,
|
||||
.free_pasid = amdgpu_pasid_free,
|
||||
.program_sh_mem_settings = kgd_program_sh_mem_settings,
|
||||
.set_pasid_vmid_mapping = kgd_set_pasid_vmid_mapping,
|
||||
.init_interrupts = kgd_init_interrupts,
|
||||
|
@ -200,28 +193,10 @@ static const struct kfd2kgd_calls kfd2kgd = {
|
|||
.get_fw_version = get_fw_version,
|
||||
.set_scratch_backing_va = set_scratch_backing_va,
|
||||
.get_tile_config = get_tile_config,
|
||||
.get_cu_info = get_cu_info,
|
||||
.get_vram_usage = amdgpu_amdkfd_get_vram_usage,
|
||||
.create_process_vm = amdgpu_amdkfd_gpuvm_create_process_vm,
|
||||
.acquire_process_vm = amdgpu_amdkfd_gpuvm_acquire_process_vm,
|
||||
.destroy_process_vm = amdgpu_amdkfd_gpuvm_destroy_process_vm,
|
||||
.release_process_vm = amdgpu_amdkfd_gpuvm_release_process_vm,
|
||||
.get_process_page_dir = amdgpu_amdkfd_gpuvm_get_process_page_dir,
|
||||
.set_vm_context_page_table_base = set_vm_context_page_table_base,
|
||||
.alloc_memory_of_gpu = amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu,
|
||||
.free_memory_of_gpu = amdgpu_amdkfd_gpuvm_free_memory_of_gpu,
|
||||
.map_memory_to_gpu = amdgpu_amdkfd_gpuvm_map_memory_to_gpu,
|
||||
.unmap_memory_to_gpu = amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu,
|
||||
.sync_memory = amdgpu_amdkfd_gpuvm_sync_memory,
|
||||
.map_gtt_bo_to_kernel = amdgpu_amdkfd_gpuvm_map_gtt_bo_to_kernel,
|
||||
.restore_process_bos = amdgpu_amdkfd_gpuvm_restore_process_bos,
|
||||
.invalidate_tlbs = invalidate_tlbs,
|
||||
.invalidate_tlbs_vmid = invalidate_tlbs_vmid,
|
||||
.submit_ib = amdgpu_amdkfd_submit_ib,
|
||||
.get_vm_fault_info = amdgpu_amdkfd_gpuvm_get_vm_fault_info,
|
||||
.read_vmid_from_vmfault_reg = read_vmid_from_vmfault_reg,
|
||||
.gpu_recover = amdgpu_amdkfd_gpu_reset,
|
||||
.set_compute_idle = amdgpu_amdkfd_set_compute_idle
|
||||
};
|
||||
|
||||
struct kfd2kgd_calls *amdgpu_amdkfd_gfx_7_get_functions(void)
|
||||
|
|
|
@ -128,13 +128,6 @@ static int get_tile_config(struct kgd_dev *kgd,
|
|||
}
|
||||
|
||||
static const struct kfd2kgd_calls kfd2kgd = {
|
||||
.init_gtt_mem_allocation = alloc_gtt_mem,
|
||||
.free_gtt_mem = free_gtt_mem,
|
||||
.get_local_mem_info = get_local_mem_info,
|
||||
.get_gpu_clock_counter = get_gpu_clock_counter,
|
||||
.get_max_engine_clock_in_mhz = get_max_engine_clock_in_mhz,
|
||||
.alloc_pasid = amdgpu_pasid_alloc,
|
||||
.free_pasid = amdgpu_pasid_free,
|
||||
.program_sh_mem_settings = kgd_program_sh_mem_settings,
|
||||
.set_pasid_vmid_mapping = kgd_set_pasid_vmid_mapping,
|
||||
.init_interrupts = kgd_init_interrupts,
|
||||
|
@ -157,27 +150,9 @@ static const struct kfd2kgd_calls kfd2kgd = {
|
|||
.get_fw_version = get_fw_version,
|
||||
.set_scratch_backing_va = set_scratch_backing_va,
|
||||
.get_tile_config = get_tile_config,
|
||||
.get_cu_info = get_cu_info,
|
||||
.get_vram_usage = amdgpu_amdkfd_get_vram_usage,
|
||||
.create_process_vm = amdgpu_amdkfd_gpuvm_create_process_vm,
|
||||
.acquire_process_vm = amdgpu_amdkfd_gpuvm_acquire_process_vm,
|
||||
.destroy_process_vm = amdgpu_amdkfd_gpuvm_destroy_process_vm,
|
||||
.release_process_vm = amdgpu_amdkfd_gpuvm_release_process_vm,
|
||||
.get_process_page_dir = amdgpu_amdkfd_gpuvm_get_process_page_dir,
|
||||
.set_vm_context_page_table_base = set_vm_context_page_table_base,
|
||||
.alloc_memory_of_gpu = amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu,
|
||||
.free_memory_of_gpu = amdgpu_amdkfd_gpuvm_free_memory_of_gpu,
|
||||
.map_memory_to_gpu = amdgpu_amdkfd_gpuvm_map_memory_to_gpu,
|
||||
.unmap_memory_to_gpu = amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu,
|
||||
.sync_memory = amdgpu_amdkfd_gpuvm_sync_memory,
|
||||
.map_gtt_bo_to_kernel = amdgpu_amdkfd_gpuvm_map_gtt_bo_to_kernel,
|
||||
.restore_process_bos = amdgpu_amdkfd_gpuvm_restore_process_bos,
|
||||
.invalidate_tlbs = invalidate_tlbs,
|
||||
.invalidate_tlbs_vmid = invalidate_tlbs_vmid,
|
||||
.submit_ib = amdgpu_amdkfd_submit_ib,
|
||||
.get_vm_fault_info = amdgpu_amdkfd_gpuvm_get_vm_fault_info,
|
||||
.gpu_recover = amdgpu_amdkfd_gpu_reset,
|
||||
.set_compute_idle = amdgpu_amdkfd_set_compute_idle
|
||||
};
|
||||
|
||||
struct kfd2kgd_calls *amdgpu_amdkfd_gfx_8_0_get_functions(void)
|
||||
|
|
|
@ -153,13 +153,6 @@ static int amdgpu_amdkfd_get_tile_config(struct kgd_dev *kgd,
|
|||
}
|
||||
|
||||
static const struct kfd2kgd_calls kfd2kgd = {
|
||||
.init_gtt_mem_allocation = alloc_gtt_mem,
|
||||
.free_gtt_mem = free_gtt_mem,
|
||||
.get_local_mem_info = get_local_mem_info,
|
||||
.get_gpu_clock_counter = get_gpu_clock_counter,
|
||||
.get_max_engine_clock_in_mhz = get_max_engine_clock_in_mhz,
|
||||
.alloc_pasid = amdgpu_pasid_alloc,
|
||||
.free_pasid = amdgpu_pasid_free,
|
||||
.program_sh_mem_settings = kgd_program_sh_mem_settings,
|
||||
.set_pasid_vmid_mapping = kgd_set_pasid_vmid_mapping,
|
||||
.init_interrupts = kgd_init_interrupts,
|
||||
|
@ -182,26 +175,9 @@ static const struct kfd2kgd_calls kfd2kgd = {
|
|||
.get_fw_version = get_fw_version,
|
||||
.set_scratch_backing_va = set_scratch_backing_va,
|
||||
.get_tile_config = amdgpu_amdkfd_get_tile_config,
|
||||
.get_cu_info = get_cu_info,
|
||||
.get_vram_usage = amdgpu_amdkfd_get_vram_usage,
|
||||
.create_process_vm = amdgpu_amdkfd_gpuvm_create_process_vm,
|
||||
.acquire_process_vm = amdgpu_amdkfd_gpuvm_acquire_process_vm,
|
||||
.destroy_process_vm = amdgpu_amdkfd_gpuvm_destroy_process_vm,
|
||||
.release_process_vm = amdgpu_amdkfd_gpuvm_release_process_vm,
|
||||
.get_process_page_dir = amdgpu_amdkfd_gpuvm_get_process_page_dir,
|
||||
.set_vm_context_page_table_base = set_vm_context_page_table_base,
|
||||
.alloc_memory_of_gpu = amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu,
|
||||
.free_memory_of_gpu = amdgpu_amdkfd_gpuvm_free_memory_of_gpu,
|
||||
.map_memory_to_gpu = amdgpu_amdkfd_gpuvm_map_memory_to_gpu,
|
||||
.unmap_memory_to_gpu = amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu,
|
||||
.sync_memory = amdgpu_amdkfd_gpuvm_sync_memory,
|
||||
.map_gtt_bo_to_kernel = amdgpu_amdkfd_gpuvm_map_gtt_bo_to_kernel,
|
||||
.restore_process_bos = amdgpu_amdkfd_gpuvm_restore_process_bos,
|
||||
.invalidate_tlbs = invalidate_tlbs,
|
||||
.invalidate_tlbs_vmid = invalidate_tlbs_vmid,
|
||||
.submit_ib = amdgpu_amdkfd_submit_ib,
|
||||
.gpu_recover = amdgpu_amdkfd_gpu_reset,
|
||||
.set_compute_idle = amdgpu_amdkfd_set_compute_idle,
|
||||
.get_hive_id = amdgpu_amdkfd_get_hive_id,
|
||||
};
|
||||
|
||||
|
|
|
@ -205,20 +205,6 @@ struct tile_config {
|
|||
/**
|
||||
* struct kfd2kgd_calls
|
||||
*
|
||||
* @init_gtt_mem_allocation: Allocate a buffer on the gart aperture.
|
||||
* The buffer can be used for mqds, hpds, kernel queue, fence and runlists
|
||||
*
|
||||
* @free_gtt_mem: Frees a buffer that was allocated on the gart aperture
|
||||
*
|
||||
* @get_local_mem_info: Retrieves information about GPU local memory
|
||||
*
|
||||
* @get_gpu_clock_counter: Retrieves GPU clock counter
|
||||
*
|
||||
* @get_max_engine_clock_in_mhz: Retrieves maximum GPU clock in MHz
|
||||
*
|
||||
* @alloc_pasid: Allocate a PASID
|
||||
* @free_pasid: Free a PASID
|
||||
*
|
||||
* @program_sh_mem_settings: A function that should initiate the memory
|
||||
* properties such as main aperture memory type (cache / non cached) and
|
||||
* secondary aperture base address, size and memory type.
|
||||
|
@ -255,64 +241,16 @@ struct tile_config {
|
|||
*
|
||||
* @get_tile_config: Returns GPU-specific tiling mode information
|
||||
*
|
||||
* @get_cu_info: Retrieves activated cu info
|
||||
*
|
||||
* @get_vram_usage: Returns current VRAM usage
|
||||
*
|
||||
* @create_process_vm: Create a VM address space for a given process and GPU
|
||||
*
|
||||
* @destroy_process_vm: Destroy a VM
|
||||
*
|
||||
* @get_process_page_dir: Get physical address of a VM page directory
|
||||
*
|
||||
* @set_vm_context_page_table_base: Program page table base for a VMID
|
||||
*
|
||||
* @alloc_memory_of_gpu: Allocate GPUVM memory
|
||||
*
|
||||
* @free_memory_of_gpu: Free GPUVM memory
|
||||
*
|
||||
* @map_memory_to_gpu: Map GPUVM memory into a specific VM address
|
||||
* space. Allocates and updates page tables and page directories as
|
||||
* needed. This function may return before all page table updates have
|
||||
* completed. This allows multiple map operations (on multiple GPUs)
|
||||
* to happen concurrently. Use sync_memory to synchronize with all
|
||||
* pending updates.
|
||||
*
|
||||
* @unmap_memor_to_gpu: Unmap GPUVM memory from a specific VM address space
|
||||
*
|
||||
* @sync_memory: Wait for pending page table updates to complete
|
||||
*
|
||||
* @map_gtt_bo_to_kernel: Map a GTT BO for kernel access
|
||||
* Pins the BO, maps it to kernel address space. Such BOs are never evicted.
|
||||
* The kernel virtual address remains valid until the BO is freed.
|
||||
*
|
||||
* @restore_process_bos: Restore all BOs that belong to the
|
||||
* process. This is intended for restoring memory mappings after a TTM
|
||||
* eviction.
|
||||
*
|
||||
* @invalidate_tlbs: Invalidate TLBs for a specific PASID
|
||||
*
|
||||
* @invalidate_tlbs_vmid: Invalidate TLBs for a specific VMID
|
||||
*
|
||||
* @submit_ib: Submits an IB to the engine specified by inserting the
|
||||
* IB to the corresponding ring (ring type). The IB is executed with the
|
||||
* specified VMID in a user mode context.
|
||||
*
|
||||
* @get_vm_fault_info: Return information about a recent VM fault on
|
||||
* GFXv7 and v8. If multiple VM faults occurred since the last call of
|
||||
* this function, it will return information about the first of those
|
||||
* faults. On GFXv9 VM fault information is fully contained in the IH
|
||||
* packet and this function is not needed.
|
||||
*
|
||||
* @read_vmid_from_vmfault_reg: On Hawaii the VMID is not set in the
|
||||
* IH ring entry. This function allows the KFD ISR to get the VMID
|
||||
* from the fault status register as early as possible.
|
||||
*
|
||||
* @gpu_recover: let kgd reset gpu after kfd detect CPC hang
|
||||
*
|
||||
* @set_compute_idle: Indicates that compute is idle on a device. This
|
||||
* can be used to change power profiles depending on compute activity.
|
||||
*
|
||||
* @get_hive_id: Returns hive id of current device, 0 if xgmi is not enabled
|
||||
*
|
||||
* This structure contains function pointers to services that the kgd driver
|
||||
|
@ -320,21 +258,6 @@ struct tile_config {
|
|||
*
|
||||
*/
|
||||
struct kfd2kgd_calls {
|
||||
int (*init_gtt_mem_allocation)(struct kgd_dev *kgd, size_t size,
|
||||
void **mem_obj, uint64_t *gpu_addr,
|
||||
void **cpu_ptr, bool mqd_gfx9);
|
||||
|
||||
void (*free_gtt_mem)(struct kgd_dev *kgd, void *mem_obj);
|
||||
|
||||
void (*get_local_mem_info)(struct kgd_dev *kgd,
|
||||
struct kfd_local_mem_info *mem_info);
|
||||
uint64_t (*get_gpu_clock_counter)(struct kgd_dev *kgd);
|
||||
|
||||
uint32_t (*get_max_engine_clock_in_mhz)(struct kgd_dev *kgd);
|
||||
|
||||
int (*alloc_pasid)(unsigned int bits);
|
||||
void (*free_pasid)(unsigned int pasid);
|
||||
|
||||
/* Register access functions */
|
||||
void (*program_sh_mem_settings)(struct kgd_dev *kgd, uint32_t vmid,
|
||||
uint32_t sh_mem_config, uint32_t sh_mem_ape1_base,
|
||||
|
@ -398,49 +321,11 @@ struct kfd2kgd_calls {
|
|||
uint64_t va, uint32_t vmid);
|
||||
int (*get_tile_config)(struct kgd_dev *kgd, struct tile_config *config);
|
||||
|
||||
void (*get_cu_info)(struct kgd_dev *kgd,
|
||||
struct kfd_cu_info *cu_info);
|
||||
uint64_t (*get_vram_usage)(struct kgd_dev *kgd);
|
||||
|
||||
int (*create_process_vm)(struct kgd_dev *kgd, unsigned int pasid, void **vm,
|
||||
void **process_info, struct dma_fence **ef);
|
||||
int (*acquire_process_vm)(struct kgd_dev *kgd, struct file *filp,
|
||||
unsigned int pasid, void **vm, void **process_info,
|
||||
struct dma_fence **ef);
|
||||
void (*destroy_process_vm)(struct kgd_dev *kgd, void *vm);
|
||||
void (*release_process_vm)(struct kgd_dev *kgd, void *vm);
|
||||
uint64_t (*get_process_page_dir)(void *vm);
|
||||
void (*set_vm_context_page_table_base)(struct kgd_dev *kgd,
|
||||
uint32_t vmid, uint64_t page_table_base);
|
||||
int (*alloc_memory_of_gpu)(struct kgd_dev *kgd, uint64_t va,
|
||||
uint64_t size, void *vm,
|
||||
struct kgd_mem **mem, uint64_t *offset,
|
||||
uint32_t flags);
|
||||
int (*free_memory_of_gpu)(struct kgd_dev *kgd, struct kgd_mem *mem);
|
||||
int (*map_memory_to_gpu)(struct kgd_dev *kgd, struct kgd_mem *mem,
|
||||
void *vm);
|
||||
int (*unmap_memory_to_gpu)(struct kgd_dev *kgd, struct kgd_mem *mem,
|
||||
void *vm);
|
||||
int (*sync_memory)(struct kgd_dev *kgd, struct kgd_mem *mem, bool intr);
|
||||
int (*map_gtt_bo_to_kernel)(struct kgd_dev *kgd, struct kgd_mem *mem,
|
||||
void **kptr, uint64_t *size);
|
||||
int (*restore_process_bos)(void *process_info, struct dma_fence **ef);
|
||||
|
||||
int (*invalidate_tlbs)(struct kgd_dev *kgd, uint16_t pasid);
|
||||
int (*invalidate_tlbs_vmid)(struct kgd_dev *kgd, uint16_t vmid);
|
||||
|
||||
int (*submit_ib)(struct kgd_dev *kgd, enum kgd_engine_type engine,
|
||||
uint32_t vmid, uint64_t gpu_addr,
|
||||
uint32_t *ib_cmd, uint32_t ib_len);
|
||||
|
||||
int (*get_vm_fault_info)(struct kgd_dev *kgd,
|
||||
struct kfd_vm_fault_info *info);
|
||||
uint32_t (*read_vmid_from_vmfault_reg)(struct kgd_dev *kgd);
|
||||
|
||||
void (*gpu_recover)(struct kgd_dev *kgd);
|
||||
|
||||
void (*set_compute_idle)(struct kgd_dev *kgd, bool idle);
|
||||
|
||||
uint64_t (*get_hive_id)(struct kgd_dev *kgd);
|
||||
|
||||
};
|
||||
|
|
Загрузка…
Ссылка в новой задаче