Răsfoiți Sursa

drm/amdgpu: add new member in gpu_info fw

Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Hawking Zhang 8 ani în urmă
părinte
comite
51fd037067

+ 3 - 0
drivers/gpu/drm/amd/amdgpu/amdgpu.h

@@ -1028,7 +1028,10 @@ struct amdgpu_gfx_config {
 struct amdgpu_cu_info {
 	uint32_t number; /* total active CU number */
 	uint32_t ao_cu_mask;
+	uint32_t max_waves_per_simd;
 	uint32_t wave_front_size;
+	uint32_t max_scratch_slots_per_cu;
+	uint32_t lds_size;
 	uint32_t bitmap[4][4];
 };
 

+ 5 - 0
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c

@@ -1480,6 +1480,11 @@ static int amdgpu_device_parse_gpu_info_fw(struct amdgpu_device *adev)
 		adev->gfx.config.double_offchip_lds_buf =
 			le32_to_cpu(gpu_info_fw->gc_double_offchip_lds_buffer);
 		adev->gfx.cu_info.wave_front_size = le32_to_cpu(gpu_info_fw->gc_wave_size);
+		adev->gfx.cu_info.max_waves_per_simd =
+			le32_to_cpu(gpu_info_fw->gc_max_waves_per_simd);
+		adev->gfx.cu_info.max_scratch_slots_per_cu =
+			le32_to_cpu(gpu_info_fw->gc_max_scratch_slots_per_cu);
+		adev->gfx.cu_info.lds_size = le32_to_cpu(gpu_info_fw->gc_lds_size);
 		break;
 	}
 	default:

+ 3 - 0
drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h

@@ -127,6 +127,9 @@ struct gpu_info_firmware_v1_0 {
 	uint32_t gc_parameter_cache_depth;
 	uint32_t gc_double_offchip_lds_buffer;
 	uint32_t gc_wave_size;
+	uint32_t gc_max_waves_per_simd;
+	uint32_t gc_max_scratch_slots_per_cu;
+	uint32_t gc_lds_size;
 };
 
 /* version_major=1, version_minor=0 */