drm/amdgpu: Add support for reporting VRAM usage
Add functions to report the vram_usage from the amdgpu_device Signed-off-by: Kent Russell <kent.russell@amd.com> Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com> Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com> Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
This commit is contained in:
parent
b441093e40
commit
9f0a0b41ff
5 changed files with 15 additions and 2 deletions
|
@ -347,3 +347,10 @@ void get_cu_info(struct kgd_dev *kgd, struct kfd_cu_info *cu_info)
|
||||||
cu_info->max_scratch_slots_per_cu = acu_info.max_scratch_slots_per_cu;
|
cu_info->max_scratch_slots_per_cu = acu_info.max_scratch_slots_per_cu;
|
||||||
cu_info->lds_size = acu_info.lds_size;
|
cu_info->lds_size = acu_info.lds_size;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint64_t amdgpu_amdkfd_get_vram_usage(struct kgd_dev *kgd)
|
||||||
|
{
|
||||||
|
struct amdgpu_device *adev = (struct amdgpu_device *)kgd;
|
||||||
|
|
||||||
|
return amdgpu_vram_mgr_usage(&adev->mman.bdev.man[TTM_PL_VRAM]);
|
||||||
|
}
|
||||||
|
|
|
@ -62,6 +62,7 @@ uint64_t get_gpu_clock_counter(struct kgd_dev *kgd);
|
||||||
|
|
||||||
uint32_t get_max_engine_clock_in_mhz(struct kgd_dev *kgd);
|
uint32_t get_max_engine_clock_in_mhz(struct kgd_dev *kgd);
|
||||||
void get_cu_info(struct kgd_dev *kgd, struct kfd_cu_info *cu_info);
|
void get_cu_info(struct kgd_dev *kgd, struct kfd_cu_info *cu_info);
|
||||||
|
uint64_t amdgpu_amdkfd_get_vram_usage(struct kgd_dev *kgd);
|
||||||
|
|
||||||
#define read_user_wptr(mmptr, wptr, dst) \
|
#define read_user_wptr(mmptr, wptr, dst) \
|
||||||
({ \
|
({ \
|
||||||
|
|
|
@ -200,7 +200,8 @@ static const struct kfd2kgd_calls kfd2kgd = {
|
||||||
.get_fw_version = get_fw_version,
|
.get_fw_version = get_fw_version,
|
||||||
.set_scratch_backing_va = set_scratch_backing_va,
|
.set_scratch_backing_va = set_scratch_backing_va,
|
||||||
.get_tile_config = get_tile_config,
|
.get_tile_config = get_tile_config,
|
||||||
.get_cu_info = get_cu_info
|
.get_cu_info = get_cu_info,
|
||||||
|
.get_vram_usage = amdgpu_amdkfd_get_vram_usage
|
||||||
};
|
};
|
||||||
|
|
||||||
struct kfd2kgd_calls *amdgpu_amdkfd_gfx_7_get_functions(void)
|
struct kfd2kgd_calls *amdgpu_amdkfd_gfx_7_get_functions(void)
|
||||||
|
|
|
@ -161,7 +161,8 @@ static const struct kfd2kgd_calls kfd2kgd = {
|
||||||
.get_fw_version = get_fw_version,
|
.get_fw_version = get_fw_version,
|
||||||
.set_scratch_backing_va = set_scratch_backing_va,
|
.set_scratch_backing_va = set_scratch_backing_va,
|
||||||
.get_tile_config = get_tile_config,
|
.get_tile_config = get_tile_config,
|
||||||
.get_cu_info = get_cu_info
|
.get_cu_info = get_cu_info,
|
||||||
|
.get_vram_usage = amdgpu_amdkfd_get_vram_usage
|
||||||
};
|
};
|
||||||
|
|
||||||
struct kfd2kgd_calls *amdgpu_amdkfd_gfx_8_0_get_functions(void)
|
struct kfd2kgd_calls *amdgpu_amdkfd_gfx_8_0_get_functions(void)
|
||||||
|
|
|
@ -177,6 +177,8 @@ struct tile_config {
|
||||||
*
|
*
|
||||||
* @get_cu_info: Retrieves activated cu info
|
* @get_cu_info: Retrieves activated cu info
|
||||||
*
|
*
|
||||||
|
* @get_vram_usage: Returns current VRAM usage
|
||||||
|
*
|
||||||
* This structure contains function pointers to services that the kgd driver
|
* This structure contains function pointers to services that the kgd driver
|
||||||
* provides to amdkfd driver.
|
* provides to amdkfd driver.
|
||||||
*
|
*
|
||||||
|
@ -267,6 +269,7 @@ struct kfd2kgd_calls {
|
||||||
|
|
||||||
void (*get_cu_info)(struct kgd_dev *kgd,
|
void (*get_cu_info)(struct kgd_dev *kgd,
|
||||||
struct kfd_cu_info *cu_info);
|
struct kfd_cu_info *cu_info);
|
||||||
|
uint64_t (*get_vram_usage)(struct kgd_dev *kgd);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in a new issue