]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/amdgpu: fix invadate operation for umsch
authorJesse Zhang <jesse.zhang@amd.com>
Tue, 21 May 2024 06:48:57 +0000 (14:48 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 23 May 2024 19:09:35 +0000 (15:09 -0400)
Since the type of data_size is uint32_t, adev->umsch_mm.data_size - 1 >> 16 >> 16 is 0
regardless of the values of its operands

So removing the operations upper_32_bits and lower_32_bits.

Signed-off-by: Jesse Zhang <Jesse.Zhang@amd.com>
Suggested-by: Tim Huang <Tim.Huang@amd.com>
Reviewed-by: Tim Huang <Tim.Huang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/umsch_mm_v4_0.c

index 2c5e7b0a73f9d00d561254c91fcd72a1caf4c367..ce3bb12e3572e083bfca8a0da7a1ca4afafc1f87 100644 (file)
@@ -116,9 +116,8 @@ static int umsch_mm_v4_0_load_microcode(struct amdgpu_umsch_mm *umsch)
                upper_32_bits(adev->umsch_mm.data_start_addr));
 
        WREG32_SOC15_UMSCH(regVCN_MES_LOCAL_MASK0_LO,
-               lower_32_bits(adev->umsch_mm.data_size - 1));
-       WREG32_SOC15_UMSCH(regVCN_MES_LOCAL_MASK0_HI,
-               upper_32_bits(adev->umsch_mm.data_size - 1));
+               adev->umsch_mm.data_size - 1);
+       WREG32_SOC15_UMSCH(regVCN_MES_LOCAL_MASK0_HI, 0);
 
        data = adev->firmware.load_type == AMDGPU_FW_LOAD_PSP ?
               0 : adev->umsch_mm.data_fw_gpu_addr;