aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKen Wang <Qingqing.Wang@amd.com>2015-06-03 05:47:54 -0400
committerAlex Deucher <alexander.deucher@amd.com>2015-06-03 21:04:02 -0400
commita101a8995ab8072125d0bb4d95425c9fb37ff809 (patch)
treedb745acda68a5b1d9f7c3f7207e72291659b5b7a
parent32bf7106e072b59cade754062ed86023309f50d9 (diff)
drm/amdgpu add ce_ram_size for interface query
Add a query for the CE ram size. User mode drivers will want to use this to determine how much size of the cache on the CE. Signed-off-by: Ken Wang <Qingqing.Wang@amd.com> Reviewd-by: Jammy Zhou <Jammy.Zhou@amd.com>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu.h2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c1
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c2
-rw-r--r--include/uapi/drm/amdgpu_drm.h2
5 files changed, 9 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index 4300e3d4b1cd..6c99b7560a27 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -1136,6 +1136,8 @@ struct amdgpu_gfx {
1136 uint32_t gfx_current_status; 1136 uint32_t gfx_current_status;
1137 /* sync signal for const engine */ 1137 /* sync signal for const engine */
1138 unsigned ce_sync_offs; 1138 unsigned ce_sync_offs;
1139 /* ce ram size*/
1140 unsigned ce_ram_size;
1139}; 1141};
1140 1142
1141int amdgpu_ib_get(struct amdgpu_ring *ring, struct amdgpu_vm *vm, 1143int amdgpu_ib_get(struct amdgpu_ring *ring, struct amdgpu_vm *vm,
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
index 3c182b6c5a27..9ede2446dcd6 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
@@ -441,6 +441,7 @@ static int amdgpu_info_ioctl(struct drm_device *dev, void *data, struct drm_file
441 amdgpu_asic_get_cu_info(adev, &cu_info); 441 amdgpu_asic_get_cu_info(adev, &cu_info);
442 dev_info.cu_active_number = cu_info.number; 442 dev_info.cu_active_number = cu_info.number;
443 dev_info.cu_ao_mask = cu_info.ao_cu_mask; 443 dev_info.cu_ao_mask = cu_info.ao_cu_mask;
444 dev_info.ce_ram_size = adev->gfx.ce_ram_size;
444 memcpy(&dev_info.cu_bitmap[0], &cu_info.bitmap[0], sizeof(cu_info.bitmap)); 445 memcpy(&dev_info.cu_bitmap[0], &cu_info.bitmap[0], sizeof(cu_info.bitmap));
445 446
446 return copy_to_user(out, &dev_info, 447 return copy_to_user(out, &dev_info,
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
index ed2f35de1d4f..faa39b38f0f3 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
@@ -4820,6 +4820,8 @@ static int gfx_v7_0_hw_init(void *handle)
4820 if (r) 4820 if (r)
4821 return r; 4821 return r;
4822 4822
4823 adev->gfx.ce_ram_size = 0x8000;
4824
4823 return r; 4825 return r;
4824} 4826}
4825 4827
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
index ffdba1965029..1895de433446 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
@@ -895,6 +895,8 @@ static int gfx_v8_0_sw_init(void *handle)
895 if (r) 895 if (r)
896 return r; 896 return r;
897 897
898 adev->gfx.ce_ram_size = 0x8000;
899
898 return 0; 900 return 0;
899} 901}
900 902
diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h
index 420c762f2ed7..e24cc2e318df 100644
--- a/include/uapi/drm/amdgpu_drm.h
+++ b/include/uapi/drm/amdgpu_drm.h
@@ -573,6 +573,8 @@ struct drm_amdgpu_info_device {
573 /** Page table entry - fragment size */ 573 /** Page table entry - fragment size */
574 uint32_t pte_fragment_size; 574 uint32_t pte_fragment_size;
575 uint32_t gart_page_size; 575 uint32_t gart_page_size;
576 /** constant engine ram size*/
577 uint32_t ce_ram_size;
576}; 578};
577 579
578struct drm_amdgpu_info_hw_ip { 580struct drm_amdgpu_info_hw_ip {