drm/amdgpu/gfx12: update mqd init for UQ
authorAlex Deucher <alexander.deucher@amd.com>
Fri, 18 Oct 2024 18:15:12 +0000 (14:15 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 8 Apr 2025 20:48:18 +0000 (16:48 -0400)
Set the addresses for the UQ metadata.

V2: Fix lower address mask (Shashank)
V3: Use lower_32_bits() for MQD objects (Alex)

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Shashank Sharma <shashank.sharma@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c

index 4f9a73bae33249e97a0e2760278dc84254261595..8b409b4a1cb3c8319aad92d1ceb88865b91792fd 100644 (file)
@@ -3027,6 +3027,12 @@ static int gfx_v12_0_gfx_mqd_init(struct amdgpu_device *adev, void *m,
        /* active the queue */
        mqd->cp_gfx_hqd_active = 1;
 
+       /* set gfx UQ items */
+       mqd->shadow_base_lo = lower_32_bits(prop->shadow_addr);
+       mqd->shadow_base_hi = upper_32_bits(prop->shadow_addr);
+       mqd->fw_work_area_base_lo = lower_32_bits(prop->csa_addr);
+       mqd->fw_work_area_base_hi = upper_32_bits(prop->csa_addr);
+
        return 0;
 }