Skip to content

Commit 2915e43

Browse files
committed
drm/amdgpu: fix error checking in amdgpu_read_mm_registers for soc21
Properly skip non-existent registers as well. Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/2442 Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Cc: stable@vger.kernel.org
1 parent 0dcdf84 commit 2915e43

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

drivers/gpu/drm/amd/amdgpu/soc21.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -291,9 +291,10 @@ static int soc21_read_register(struct amdgpu_device *adev, u32 se_num,
291291
*value = 0;
292292
for (i = 0; i < ARRAY_SIZE(soc21_allowed_read_registers); i++) {
293293
en = &soc21_allowed_read_registers[i];
294-
if (adev->reg_offset[en->hwip][en->inst] &&
295-
reg_offset != (adev->reg_offset[en->hwip][en->inst][en->seg]
296-
+ en->reg_offset))
294+
if (!adev->reg_offset[en->hwip][en->inst])
295+
continue;
296+
else if (reg_offset != (adev->reg_offset[en->hwip][en->inst][en->seg]
297+
+ en->reg_offset))
297298
continue;
298299

299300
*value = soc21_get_register_value(adev,

0 commit comments

Comments
 (0)