vBIOS has the support of IMU firmware. Requesting it now fails and
aborts GPU init:

  amdgpu 0001:01:00.0: early_init of IP block <gfx_v12_1> failed -19
  amdgpu 0001:01:00.0: Fatal error during GPU init

Signed-off-by: Horatio Zhang <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c 
b/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c
index 82ac39239d78..db06360873eb 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c
@@ -581,7 +581,8 @@ static int gfx_v12_1_init_microcode(struct amdgpu_device 
*adev)
        adev->gfx.mec2_fw = NULL;
 
        if (adev->gfx.imu.funcs) {
-               if (adev->gfx.imu.funcs->init_microcode) {
+               if (adev->gfx.imu.funcs->init_microcode &&
+                   adev->firmware.load_type != AMDGPU_FW_LOAD_PSP) {
                        err = adev->gfx.imu.funcs->init_microcode(adev);
                        if (err)
                                dev_err(adev->dev, "Failed to load imu 
firmware!\n");
-- 
2.43.0

Reply via email to