summaryrefslogtreecommitdiff
path: root/drivers/gpu
diff options
context:
space:
mode:
authorMukul Joshi <mukul.joshi@amd.com>2025-02-26 15:35:23 -0500
committerAlex Deucher <alexander.deucher@amd.com>2025-12-08 14:12:58 -0500
commite08a675f940b2ec546236754718cd5f2a0054317 (patch)
tree97461cb5a14f83378b6aff663170edf352bf5ad9 /drivers/gpu
parent9c34a4c19efa8686737c03f1718618da58cae546 (diff)
drm/amdgpu: Setup Atomics enable in TCP UTCL0 for GFX 12.1.0
We need to explicitly setup atomics enable in TCP UTCL0 to enable PCIe atomics to host memory. Signed-off-by: Mukul Joshi <mukul.joshi@amd.com> Reviewed-by: Alex Sierra <alex.sierra@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c b/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c
index a16cd26e9a1b..3080aecc8341 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c
@@ -2521,6 +2521,12 @@ static void gfx_v12_1_init_golden_registers(struct amdgpu_device *adev)
RETRY_FRAGMENT_THRESHOLD_UP_EN, 0x0);
WREG32_SOC15(GC, 0, regTCP_UTCL0_THRASHING_CTRL, val);
+
+ /* Set the TCP UTCL0 register to enable atomics */
+ val = RREG32_SOC15(GC, 0, regTCP_UTCL0_CNTL1);
+ val = REG_SET_FIELD(val, TCP_UTCL0_CNTL1, ATOMIC_REQUESTER_EN, 0x1);
+
+ WREG32_SOC15(GC, 0, regTCP_UTCL0_CNTL1, val);
}
static int gfx_v12_1_hw_init(struct amdgpu_ip_block *ip_block)