aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLikun Gao <[email protected]>2019-08-15 15:46:10 +0800
committerAlex Deucher <[email protected]>2020-05-01 15:19:07 -0400
commit98bf250edd64344124fe5f619d6320d02e17af5e (patch)
tree8e5ae1ade544e2054963d7b036827c8a4b8cbd98
parent68a9fb4d2980d242b600ff9c0728490b44003dd3 (diff)
drm/amdgpu: check SMU NULL ptr on gfx hw init
Check SMU NULL ptr before load smu fw. Signed-off-by: Likun Gao <[email protected]> Reviewed-by: Hawking Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c
index 9fe20b782e88..04c5c8d257a3 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c
@@ -6540,14 +6540,16 @@ static int gfx_v10_0_hw_init(void *handle)
* loaded firstly, so in direct type, it has to load smc ucode
* here before rlc.
*/
- r = smu_load_microcode(&adev->smu);
- if (r)
- return r;
+ if (adev->smu.ppt_funcs != NULL) {
+ r = smu_load_microcode(&adev->smu);
+ if (r)
+ return r;
- r = smu_check_fw_status(&adev->smu);
- if (r) {
- pr_err("SMC firmware status is not correct\n");
- return r;
+ r = smu_check_fw_status(&adev->smu);
+ if (r) {
+ pr_err("SMC firmware status is not correct\n");
+ return r;
+ }
}
}