]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/amdkfd: Add SDMA queue quantum support for GFX12.1
authorGang Ba <Gang.Ba@amd.com>
Thu, 7 Aug 2025 15:14:43 +0000 (11:14 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 5 Jan 2026 21:26:39 +0000 (16:26 -0500)
    program SDMAx_QUEUEx_SCHEDULE_CNTL for context switch due to
    quantum in KFD for GFX12.1

Signed-off-by: Gang Ba <Gang.Ba@amd.com>
Reviewed-by: Amber Lin <Amber.Lin@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v12_1.c

index 9cc8a1ae88f9c9d5284be7fdfe5160bd6ddea9a7..1d8c2c5612c6ce3c143699bb787351b6eb72e605 100644 (file)
@@ -358,6 +358,10 @@ static void update_mqd_sdma(struct mqd_manager *mm, void *mqd,
        m->sdmax_rlcx_doorbell_offset =
                q->doorbell_off << SDMA0_SDMA_QUEUE0_DOORBELL_OFFSET__OFFSET__SHIFT;
 
+       m->sdmax_rlcx_sched_cntl = (amdgpu_sdma_phase_quantum
+               << SDMA0_SDMA_QUEUE0_SCHEDULE_CNTL__CONTEXT_QUANTUM__SHIFT)
+                & SDMA0_SDMA_QUEUE0_SCHEDULE_CNTL__CONTEXT_QUANTUM_MASK;
+
        m->sdma_engine_id = q->sdma_engine_id;
        m->sdma_queue_id = q->sdma_queue_id;