diff options
| author | Yang Wang <kevinyang.wang@amd.com> | 2024-08-13 13:51:48 +0800 | 
|---|---|---|
| committer | Alex Deucher <alexander.deucher@amd.com> | 2024-08-20 22:51:31 -0400 | 
| commit | 0b43312902d165c4c8429cd49e8c91479f52b7c4 (patch) | |
| tree | a4d3cd5a363fe601ddaa7997bebfd79fb84f708d | |
| parent | fee9d135e2fd5963a7f466cd1ef2060731a1ab29 (diff) | |
drm/amdgpu: fixing rlc firmware loading failure issue
Skip rlc firmware validation to ignore firmware header size mismatch issues.
This restores the workaround added in
commit 849e133c973c ("drm/amdgpu: Fix the null pointer when load rlc firmware")
Fixes: 3af2c80ae2f5 ("drm/amdgpu: refine gfx10 firmware loading")
Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/3551
Signed-off-by: Yang Wang <kevinyang.wang@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 89ec85d16eb8110d88c273d1d34f1fe5a70ba8cc)
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 5 | 
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c index 2957702fca0c..e444e621ddaa 100644 --- a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c @@ -4116,6 +4116,7 @@ static void gfx_v10_0_check_gfxoff_flag(struct amdgpu_device *adev)  static int gfx_v10_0_init_microcode(struct amdgpu_device *adev)  { +	char fw_name[53];  	char ucode_prefix[30];  	const char *wks = "";  	int err; @@ -4149,8 +4150,8 @@ static int gfx_v10_0_init_microcode(struct amdgpu_device *adev)  	amdgpu_gfx_cp_init_microcode(adev, AMDGPU_UCODE_ID_CP_CE);  	if (!amdgpu_sriov_vf(adev)) { -		err = amdgpu_ucode_request(adev, &adev->gfx.rlc_fw, -					   "amdgpu/%s_rlc.bin", ucode_prefix); +		snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_rlc.bin", ucode_prefix); +		err = request_firmware(&adev->gfx.rlc_fw, fw_name, adev->dev);  		if (err)  			goto out;  | 
