[PATCH 1/4] drm/amdgpu: add gfx eviction fence helpers

2024-05-08 Thread Shashank Sharma
: Christian Koenig Cc: Alex Deucher Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 20 .../drm/amd/amdgpu/amdgpu_eviction_fence.c| 106 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c

[PATCH 4/4] drm/amdgpu: add userqueue resume

2024-05-08 Thread Shashank Sharma
of userq manager. Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 166 ++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 1 + 2 files changed, 167 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu

[PATCH 3/4] drm/amdgpu: suspend gfx userqueues

2024-05-08 Thread Shashank Sharma
manager and signals the eviction fence, - adds reference of userq manager in the eviction fence container so that it can be used in the suspend function. Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 + .../drm/amd

[PATCH 2/4] drm/amdgpu: add core userqueue suspend/resume functions

2024-05-08 Thread Shashank Sharma
This patch adds userqueue suspend/resume functions at core MES V11 IP level. Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- .../gpu/drm/amd/amdgpu/mes_v11_0_userqueue.c | 31 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 5 +++ 2 files changed

[PATCH 0/4] AMDGPU userqueue suspend/resume

2024-05-08 Thread Shashank Sharma
/113675/ Shashank Sharma (4): drm/amdgpu: add gfx eviction fence helpers drm/amdgpu: add core userqueue suspend/resume functions drm/amdgpu: suspend gfx userqueues drm/amdgpu: add userqueue resume drivers/gpu/drm/amd/amdgpu/Makefile | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h

[PATCH v10 14/14] drm/amdgpu: add kernel config for gfx-userqueue

2024-05-02 Thread Shashank Sharma
RQ instead of CONFIG_DRM_AMDGPU_USERQ_GFX (Christian) Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Kconfig | 8 drivers/gpu/drm/amd/amdgpu/Makefile| 4 +++- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 4 drivers/gpu/drm/amd/amdgpu/s

[PATCH v10 13/14] drm/amdgpu: enable compute/gfx usermode queue

2024-05-02 Thread Shashank Sharma
-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c| 3 ++- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 2 ++ drivers/gpu/drm/amd/amdgpu/mes_v11_0_userqueue.c | 15 +++ include/uapi/drm/amdgpu_drm.h| 10 ++ 4 files changed, 29

[PATCH v10 11/14] drm/amdgpu: enable GFX-V11 userqueue support

2024-05-02 Thread Shashank Sharma
Cc: Christian Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c| 3 +++ .../gpu/drm/amd/amdgpu/mes_v11_0_userqueue.c | 22 +++ include/uapi/drm/amdgpu_drm.h | 22 +++ 3 files

[PATCH v10 12/14] drm/amdgpu: enable SDMA-V6 usermode queues

2024-05-02 Thread Shashank Sharma
This patch does necessary modifications to enable the SDMA-v6 usermode queues using the existing userqueue infrastructure. V9: introduced this patch in the series V10: use header file instead of extern (Alex) Cc: Christian König Cc: Alex Deucher Signed-off-by: Shashank Sharma Signed-off

[PATCH v10 09/14] drm/amdgpu: generate doorbell index for userqueue

2024-05-02 Thread Shashank Sharma
: Rebase Cc: Alex Deucher Cc: Christian Koenig Reviewed-by: Alex Deucher Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 59 +++ .../gpu/drm/amd/amdgpu/mes_v11_0_userqueue.c | 1 + .../gpu/drm/amd/include/amdgpu_userqueue.h| 1 + 3 files

[PATCH v10 10/14] drm/amdgpu: cleanup leftover queues

2024-05-02 Thread Shashank Sharma
Nieuwenhuizen Signed-off-by: Bas Nieuwenhuizen Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 27 ++- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c b/drivers/gpu/drm/amd/amdgpu

[PATCH v10 07/14] drm/amdgpu: map usermode queue into MES

2024-05-02 Thread Shashank Sharma
queue->proc/gang/fw_ctx_address variables and doing the address calculations locally to keep the queue structure GEN independent (Alex) V7: Added R-B from Alex V8: Rebase V9: Rebase V10: Rebase Cc: Alex Deucher Cc: Christian Koenig Reviewed-by: Alex Deucher Signed-off-by: Shash

[PATCH v10 08/14] drm/amdgpu: map wptr BO into GART

2024-05-02 Thread Shashank Sharma
v11* to mes_v11* V10: Remove unused adev (Harish) Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- .../gpu/drm/amd/amdgpu/mes_v11_0_userqueue.c | 76 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 1 + 2 files changed,

[PATCH v10 05/14] drm/amdgpu: create MES-V11 usermode queue for GFX

2024-05-02 Thread Shashank Sharma
ian Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/Makefile | 1 + .../gpu/drm/amd/amdgpu/mes_v11_0_userqueue.c | 117 ++ .../gpu/drm/amd/amdgpu/mes_v11_0_userqueue.h | 30 + 3 files changed, 148 inserti

[PATCH v10 04/14] drm/amdgpu: add helpers to create userqueue object

2024-05-02 Thread Shashank Sharma
: Alex Deucher Cc: Christian Koenig Reviewed-by: Alex Deucher Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 62 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 13 2 files changed, 75 insertions(+) diff --git a/drivers/gpu/drm/amd

[PATCH v10 06/14] drm/amdgpu: create context space for usermode queue

2024-05-02 Thread Shashank Sharma
in GFX specific patch (Alex) Cc: Alex Deucher Cc: Christian Koenig Acked-by: Christian Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- .../gpu/drm/amd/amdgpu/mes_v11_0_userqueue.c | 33 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 1 + 2 files

[PATCH v10 03/14] drm/amdgpu: add new IOCTL for usermode queue

2024-05-02 Thread Shashank Sharma
) V9: - Rebase V10: Addressed review comments from Christian, and added R-B: - Do not initialize the local variable - Convert DRM_ERROR to DEBUG. Cc: Alex Deucher Cc: Christian Koenig Reviewed-by: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c

[PATCH v10 02/14] drm/amdgpu: add usermode queue base code

2024-05-02 Thread Shashank Sharma
: Christian Koenig Reviewed-by: Christian König Reviewed-by: Alex Deucher Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu.h | 3 + drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 1 + drivers/gpu/drm/amd/amdgpu

[PATCH v10 01/14] drm/amdgpu: UAPI for user queue management

2024-05-02 Thread Shashank Sharma
Deucher Signed-off-by: Shashank Sharma --- include/uapi/drm/amdgpu_drm.h | 90 +++ 1 file changed, 90 insertions(+) diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h index 5b6c0055cfcf..f7313e576f06 100644 --- a/include/uapi/drm/amdgpu_drm.h

[PATCH v10 00/14] AMDGPU usermode queues

2024-05-02 Thread Shashank Sharma
Shashank Sharma (13): drm/amdgpu: add usermode queue base code drm/amdgpu: add new IOCTL for usermode queue drm/amdgpu: add helpers to create userqueue object drm/amdgpu: create MES-V11 usermode queue for GFX drm/amdgpu: create context space for usermode queue drm/amdgpu: map usermode

[PATCH] drm/amdgpu: add gfx eviction fence helpers

2024-04-30 Thread Shashank Sharma
Koenig Cc: Alex Deucher Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 15 +++ .../drm/amd/amdgpu/amdgpu_eviction_fence.c| 96 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 10

[PATCH] drm/amdgpu: fix doorbell regression

2024-04-29 Thread Shashank Sharma
This patch adds a missed handling of PL domain doorbell while handling VRAM faults. Fixes: a6ff969fe9cb ("drm/amdgpu: fix visible VRAM handling during faults") Cc: Christian Koenig Cc: Alex Deucher Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/

[PATCH v9 12/14] drm/amdgpu: enable SDMA usermode queues

2024-04-26 Thread Shashank Sharma
This patch does necessary modifications to enable the SDMA usermode queues using the existing userqueue infrastructure. V9: introduced this patch in the series Cc: Christian König Cc: Alex Deucher Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav Signed-off-by: Srinivasan Shanmugam

[PATCH v9 13/14] drm/amdgpu: enable compute/gfx usermode queue

2024-04-26 Thread Shashank Sharma
From: Arvind Yadav This patch does the necessary changes required to enable compute workload support using the existing usermode queues infrastructure. Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Arvind Yadav Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu

[PATCH v9 14/14] drm/amdgpu: add kernel config for gfx-userqueue

2024-04-26 Thread Shashank Sharma
This patch: - adds a kernel config option "CONFIG_DRM_AMD_USERQ_GFX" - moves the usequeue initialization code for all IPs under this flag so that the userqueue works only when the config is enabled. Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- drive

[PATCH v9 10/14] drm/amdgpu: cleanup leftover queues

2024-04-26 Thread Shashank Sharma
-off-by: Bas Nieuwenhuizen Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 27 ++- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c index

[PATCH v9 11/14] drm/amdgpu: fix MES GFX mask

2024-04-26 Thread Shashank Sharma
: introduce this patch in the series Cc: Christian König Cc: Alex Deucher Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.c | 3 --- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h | 1 - drivers/gpu/drm/amd/amdgpu/mes_v10_1.c | 9 +++-- drivers/gpu

[PATCH v9 09/14] drm/amdgpu: generate doorbell index for userqueue

2024-04-26 Thread Shashank Sharma
Deucher Cc: Christian Koenig Reviewed-by: Alex Deucher Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 59 +++ .../gpu/drm/amd/amdgpu/mes_v11_0_userqueue.c | 1 + .../gpu/drm/amd/include/amdgpu_userqueue.h| 1 + 3 files changed, 61

[PATCH v9 07/14] drm/amdgpu: map usermode queue into MES

2024-04-26 Thread Shashank Sharma
->proc/gang/fw_ctx_address variables and doing the address calculations locally to keep the queue structure GEN independent (Alex) V7: Added R-B from Alex V8: Rebase V9: Rebase Cc: Alex Deucher Cc: Christian Koenig Reviewed-by: Alex Deucher Signed-off-by: Shashank Sharma --- .../gpu/

[PATCH v9 08/14] drm/amdgpu: map wptr BO into GART

2024-04-26 Thread Shashank Sharma
v11* to mes_v11* Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- .../gpu/drm/amd/amdgpu/mes_v11_0_userqueue.c | 77 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 1 + 2 files changed, 78 insertions(+) diff --git a/driv

[PATCH v9 05/14] drm/amdgpu: create MES-V11 usermode queue for GFX

2024-04-26 Thread Shashank Sharma
DMA userqueues as well (Shashank, Alex) Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/Makefile | 3 +- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c| 4 + .../gpu/drm/amd/amdgpu/mes_v11_0_userqueue.c |

[PATCH v9 03/14] drm/amdgpu: add new IOCTL for usermode queue

2024-04-26 Thread Shashank Sharma
) V9: - Rebase Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 121 ++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 2 + 3 files changed, 124

[PATCH v9 04/14] drm/amdgpu: add helpers to create userqueue object

2024-04-26 Thread Shashank Sharma
: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 62 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 13 2 files changed, 75 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c b/drivers/gpu/drm/amd/amdgpu

[PATCH v9 06/14] drm/amdgpu: create context space for usermode queue

2024-04-26 Thread Shashank Sharma
to create/destroy userqueue objects. - Removed FW object space allocation. V8: - Updating FW object address from user values. V9: - uppdated function name from gfx_v11_* to mes_v11_* Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav

[PATCH v9 02/14] drm/amdgpu: add usermode queue base code

2024-04-26 Thread Shashank Sharma
Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu.h | 3 + drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 6 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c

[PATCH v9 01/14] drm/amdgpu: UAPI for user queue management

2024-04-26 Thread Shashank Sharma
as its being used for SDMA and compute queues as well Cc: Alex Deucher Cc: Christian Koenig Reviewed-by: Christian König Signed-off-by: Alex Deucher Signed-off-by: Shashank Sharma --- include/uapi/drm/amdgpu_drm.h | 110 ++ 1 file changed, 110 insertions

[PATCH v9 00/14] AMDGPU usermode queues

2024-04-26 Thread Shashank Sharma
and a sample DRM test program can be found in the MESA merge request here: https://gitlab.freedesktop.org/mesa/drm/-/merge_requests/287 Alex Deucher (1): drm/amdgpu: UAPI for user queue management Arvind Yadav (1): drm/amdgpu: enable compute/gfx usermode queue Shashank Sharma (12): drm/amdgpu

[PATCH] drm/amdgpu: fix MES GFX mask

2024-04-23 Thread Shashank Sharma
: Christian König Cc: Alex Deucher Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.c | 3 --- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h | 1 - drivers/gpu/drm/amd/amdgpu/mes_v10_1.c | 9 +++-- drivers/gpu/drm/amd/amdgpu/mes_v11_0.c | 9

[PATCH] drm/amdgpu: fix MES HQD masks

2024-04-05 Thread Shashank Sharma
This patch fixes the existing HQD masks prepared during the MES initialization. These existing masks values were causing problems when we try to enable GFX oversubscription. Cc: Christian König Cc: Alex Deucher Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm

[PATCH] drm/amdgpu: fix the list movement

2024-03-22 Thread Shashank Sharma
This patch adds a fix for list object movement, which was introduced in the TLB flush series. Fixes: 0a29a49f3ed4 ("drm/amdgpu: sync page table freeing with tlb flush") Cc: Christian König Suggested-by: Christian König Signed-off-by: Shashank Sharma --- drivers/gpu/drm/

[PATCH] drm/amdgpu: Add a NULL check for freeing root PT

2024-03-21 Thread Shashank Sharma
ed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c index d904fc96ba0f..a0a5b955a4b4 100644 --- a/drivers/gpu/drm/amd/

[PATCH v9 2/2] drm/amdgpu: sync page table freeing with tlb flush

2024-03-18 Thread Shashank Sharma
r root PT freeing - Free PT list regardless of needs_flush - Move adding BOs in list in a separate function Cc: Christian König Cc: Alex Deucher Cc: Felix Kuehling Cc: Rajneesh Bhardwaj Acked-by: Felix Kuehling Acked-by: Rajneesh Bhardwaj Tested-by: Rajneesh Bhardwaj Signed-off-by: Shasha

[PATCH v9 1/2] drm/amdgpu: implement TLB flush fence

2024-03-18 Thread Shashank Sharma
ave callback memory allocated Cc: Christian Koenig Cc: Felix Kuehling Cc: Rajneesh Bhardwaj Cc: Alex Deucher Acked-by: Felix Kuehling Acked-by: Rajneesh Bhardwaj Tested-by: Rajneesh Bhardwaj Reviewed-by: Shashank Sharma Signed-off-by: Christian Koenig Signed-off-by: Shashank Sharma --- dri

[PATCH v8] drm/amdgpu: sync page table freeing with tlb flush

2024-03-18 Thread Shashank Sharma
Bhardwaj Acked-by: Felix Kuehling Acked-by: Rajneesh Bhardwaj Tested-by: Rajneesh Bhardwaj Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c| 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h| 7 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c | 58 +--

[PATCH v7 1/2] drm/amdgpu: implement TLB flush fence

2024-03-18 Thread Shashank Sharma
ed-by: Felix Kuehling Acked-by: Rajneesh Bhardwaj Tested-by: Rajneesh Bhardwaj Reviewed-by: Shashank Sharma Signed-off-by: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c| 68 +++-

[PATCH v7 2/2] drm/amdgpu: sync page table freeing with tlb flush

2024-03-18 Thread Shashank Sharma
tly - call amdgpu_vm_pt_free_list directly V6: Rebase V7: Rebase Cc: Christian König Cc: Alex Deucher Cc: Felix Kuehling Cc: Rajneesh Bhardwaj Acked-by: Felix Kuehling Acked-by: Rajneesh Bhardwaj Tested-by: Rajneesh Bhardwaj Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amd

[PATCH v6 2/2] drm/amdgpu: sync page table freeing with tlb flush

2024-03-15 Thread Shashank Sharma
tly - call amdgpu_vm_pt_free_list directly V6: Rebase Cc: Christian König Cc: Alex Deucher Cc: Felix Kuehling Cc: Rajneesh Bhardwaj Acked-by: Felix Kuehling Acked-by: Rajneesh Bhardwaj Tested-by: Rajneesh Bhardwaj Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_v

[PATCH v6 1/2] drm/amdgpu: implement TLB flush fence

2024-03-15 Thread Shashank Sharma
hardwaj Tested-by: Rajneesh Bhardwaj Reviewed-by: Shashank Sharma Signed-off-by: Christian König Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c| 77 ++-- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h| 2

[PATCH] drm/amdgpu: cleanup unused variable

2024-03-12 Thread Shashank Sharma
This patch removes an unused input variable in the MES doorbell function. Cc: Christian König Cc: Alex Deucher Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.c | 10 +++--- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu

[PATCH v5 2/2] drm/amdgpu: sync page table freeing with tlb flush

2024-03-06 Thread Shashank Sharma
tly - call amdgpu_vm_pt_free_list directly Cc: Christian König Cc: Alex Deucher Cc: Felix Kuehling Cc: Rajneesh Bhardwaj Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c| 4 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h| 7 +++ drivers/gpu/drm/amd/amd

[PATCH v5 1/2] drm/amdgpu: implement TLB flush fence

2024-03-06 Thread Shashank Sharma
istian) - move the misplaced fence_create call to the end (Philip) V5: - free the f->dependency properly (Christian) Cc: Christian Koenig Cc: Felix Kuehling Cc: Rajneesh Bhardwaj Cc: Alex Deucher Reviewed-by: Shashank Sharma Signed-off-by: Christian König Signed-off-by: Shashank Sharma --- dr

[PATCH v4 1/2] drm/amdgpu: implement TLB flush fence

2024-03-01 Thread Shashank Sharma
istian) - move the misplaced fence_create call to the end (Philip) Cc: Christian Koenig Cc: Felix Kuehling Cc: Rajneesh Bhardwaj Cc: Alex Deucher Signed-off-by: Christian König Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 3 +- drivers/gpu/drm/amd/

[PATCH v4 2/2] drm/amdgpu: sync page table freeing with tlb flush

2024-03-01 Thread Shashank Sharma
in TLB flush waitlist. - do not create a separate function for list flush. - do not create a new lock for TLB flush. - there is no need to wait on tlb_flush_fence exclusively. Cc: Christian König Cc: Alex Deucher Cc: Felix Kuehling Cc: Rajneesh Bhardwaj Signed-off-by: Shashank Sharma

[PATCH v3 3/3] drm/amdgpu: sync page table freeing with tlb flush

2024-02-23 Thread Shashank Sharma
ian) Cc: Christian König Cc: Alex Deucher Cc: Felix Kuehling Cc: Rajneesh Bhardwaj Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c| 6 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h| 6 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c | 51 ---

[PATCH v3 2/3] drm/amdgpu: implement TLB flush fence

2024-02-23 Thread Shashank Sharma
lex Deucher Signed-off-by: Christian König Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c| 10 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h| 4 + .../gpu/drm/amd/amdgpu/amdgpu_vm_tlb_fence.c |

[PATCH v3 1/3] drm/amdgpu: replace TLB seq callback with HW seq

2024-02-23 Thread Shashank Sharma
From: Christian König The callback we installed for the SDMA update were actually pretty horrible. since we now have seq64 use that one and HW seq writes instead. V2:(Shashank) - rebased on amd-drm-staging-next - changed amdgpu_seq64_gpu_addr Cc: Christian König Cc: Alex Deucher Cc: Felix

[PATCH v3] drm/amdgpu: change vm->task_info handling

2024-02-05 Thread Shashank Sharma
Cc: Alex Deucher Cc: Felix Kuehling Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 9 +- drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 18 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c | 12 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c

[PATCH v2 2/3] drm/amdgpu: implement TLB flush fence

2024-01-31 Thread Shashank Sharma
lex Deucher Signed-off-by: Christian König Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c| 10 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h| 4 + .../gpu/drm/amd/amdgpu/amdgpu_vm_tlb_fence.c |

[PATCH v2 3/3] drm/amdgpu: sync page table freeing with tlb flush

2024-01-31 Thread Shashank Sharma
of page table objects until we have the respective TLB entries flushed. V2: rebase Cc: Christian König Cc: Alex Deucher Cc: Felix Kuehling Cc: Rajneesh Bhardwaj Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c| 3 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h

[PATCH v2 1/3] drm/amdgpu: replace TLB seq callback with HW seq

2024-01-31 Thread Shashank Sharma
From: Christian König The callback we installed for the SDMA update were actually pretty horrible. since we now have seq64 use that one and HW seq writes instead. V2:(Shashank) - rebased on amd-drm-staging-next - changed amdgpu_seq64_gpu_addr Cc: Christian König Cc: Alex Deucher Cc: Felix

Re: [PATCH v2] drm/amdgpu: change vm->task_info handling

2024-01-24 Thread Shashank Sharma
On 19/01/2024 21:23, Felix Kuehling wrote: On 2024-01-18 14:21, Shashank Sharma wrote: This patch changes the handling and lifecycle of vm->task_info object. The major changes are: - vm->task_info is a dynamically allocated ptr now, and its uasge is    reference counted. - introduci

[PATCH v2] drm/amdgpu: change vm->task_info handling

2024-01-18 Thread Shashank Sharma
ints when task_info not found (Felix) Cc: Christian Koenig Cc: Alex Deucher Cc: Felix Kuehling Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 7 +- drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 18 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c | 12 +- driver

Re: [PATCH] drm/amdgpu: change vm->task_info handling

2024-01-03 Thread Shashank Sharma
Hey Felix, On 02/01/2024 19:02, Felix Kuehling wrote: On 2024-01-02 06:12, Shashank Sharma wrote: drm/amdgpu: change vm->task_info handling This patch changes the handling and lifecycle of vm->task_info object. The major changes are: - vm->task_info is a dynamically allocate

[PATCH] drm/amdgpu: change vm->task_info handling

2024-01-02 Thread Shashank Sharma
gt;task_info. Cc: Christian Koenig Cc: Alex Deucher Cc: Felix Kuehling Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 7 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 15 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 17 ++- drivers/gpu/drm/amd/amdgpu

Re: [PATCH] drm/amdgpu: move task_info to amdgpu_fpriv

2023-10-17 Thread Shashank Sharma
On 17/10/2023 09:34, Christian König wrote: Am 17.10.23 um 09:25 schrieb Shashank Sharma: Hello Christian, Felix, Thanks for your comments, mine inline. On 17/10/2023 07:55, Christian König wrote: Am 17.10.23 um 00:15 schrieb Felix Kuehling: On 2023-10-16 13:08, Shashank Sharma wrote

Re: [PATCH] drm/amdgpu: move task_info to amdgpu_fpriv

2023-10-17 Thread Shashank Sharma
Hello Christian, Felix, Thanks for your comments, mine inline. On 17/10/2023 07:55, Christian König wrote: Am 17.10.23 um 00:15 schrieb Felix Kuehling: On 2023-10-16 13:08, Shashank Sharma wrote: This patch does the following: - moves vm->task_info struct to fpriv->task_info. -

[PATCH] drm/amdgpu: move task_info to amdgpu_fpriv

2023-10-16 Thread Shashank Sharma
isting get_task_info consumers. Cc: Christian Koenig Cc: Alex Deucher Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 28 +-- drivers/gpu/drm/amd/amdgpu/amdgpu

[PATCH v7 11/12] drm/amdgpu: introduce userqueue eviction fence

2023-10-10 Thread Shashank Sharma
Cc: Christian Koenig Cc: Felix Kuehling Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 82 ++- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c| 7 ++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 15 3 files changed,

[PATCH v7 12/12] drm/amdgpu: [REVERTME] block usermode queue IOCTL

2023-10-10 Thread Shashank Sharma
This patch blocks the amdgpu usermode queue IOCTL function until a valid userspace client gets merged upstream. This patch must be reverted as soon as we have the mesa-3D consumer stack available. Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd

[PATCH v7 09/12] drm/amdgpu: generate doorbell index for userqueue

2023-10-10 Thread Shashank Sharma
: Added missing kfree for queue in error cases Added Alex's R-B Cc: Alex Deucher Cc: Christian Koenig Reviewed-by: Alex Deucher Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 58 +++ drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c| 1

[PATCH v7 08/12] drm/amdgpu: map wptr BO into GART

2023-10-10 Thread Shashank Sharma
off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c| 76 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 1 + 2 files changed, 77 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c b/drivers/gpu/drm/amd/amd

[PATCH v7 10/12] drm/amdgpu: cleanup leftover queues

2023-10-10 Thread Shashank Sharma
Nieuwenhuizen Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 27 ++- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c index ec49c10f7511

[PATCH v7 07/12] drm/amdgpu: map usermode queue into MES

2023-10-10 Thread Shashank Sharma
->proc/gang/fw_ctx_address variables and doing the address calculations locally to keep the queue structure GEN independent (Alex) V7: Added R-B from Alex Cc: Alex Deucher Cc: Christian Koenig Reviewed-by: Alex Deucher Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amd

[PATCH v7 06/12] drm/amdgpu: create context space for usermode queue

2023-10-10 Thread Shashank Sharma
to create/destroy userqueue objects. - Removed FW object space allocation. Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c| 41 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h

[PATCH v7 05/12] drm/amdgpu: create GFX-gen11 usermode queue

2023-10-10 Thread Shashank Sharma
ead of uq_mgr (Alex) - Use memdup_user instead of copy_from_user (Christian) Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 72 ++ 1 file changed, 72 insertions(+) diff --

[PATCH v7 04/12] drm/amdgpu: add helpers to create userqueue object

2023-10-10 Thread Shashank Sharma
Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 62 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 13 2 files changed, 75 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c b/drivers/gpu/drm/amd/amdgpu

[PATCH v7 03/12] drm/amdgpu: add new IOCTL for usermode queue

2023-10-10 Thread Shashank Sharma
: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 121 ++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 2 + 3 files changed, 124 insertions(+) diff --git

[PATCH v7 02/12] drm/amdgpu: add usermode queue base code

2023-10-10 Thread Shashank Sharma
-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu.h | 3 + drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 6 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 40

[PATCH v7 01/12] drm/amdgpu: UAPI for user queue management

2023-10-10 Thread Shashank Sharma
Deucher Signed-off-by: Shashank Sharma --- include/uapi/drm/amdgpu_drm.h | 110 ++ 1 file changed, 110 insertions(+) diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h index f477eda6a2b8..a508329ce70f 100644 --- a/include/uapi/drm

[PATCH v7 00/12] AMDGPU usermode queues

2023-10-10 Thread Shashank Sharma
queue management Shashank Sharma (11): drm/amdgpu: add usermode queue base code drm/amdgpu: add new IOCTL for usermode queue drm/amdgpu: add helpers to create userqueue object drm/amdgpu: create GFX-gen11 usermode queue drm/amdgpu: create context space for usermode queue drm/amdgpu: map

Re: [PATCH v6 1/9] drm/amdgpu: UAPI for user queue management

2023-10-05 Thread Shashank Sharma
On 04/10/2023 23:23, Felix Kuehling wrote: On 2023-09-08 12:04, Shashank Sharma wrote: From: Alex Deucher This patch intorduces new UAPI/IOCTL for usermode graphics queue. The userspace app will fill this structure and request the graphics driver to add a graphics work queue

Re: [PATCH v6 7/9] drm/amdgpu: map wptr BO into GART

2023-10-05 Thread Shashank Sharma
Hey Felix, On 04/10/2023 23:34, Felix Kuehling wrote: On 2023-09-18 06:32, Christian König wrote: Am 08.09.23 um 18:04 schrieb Shashank Sharma: To support oversubscription, MES FW expects WPTR BOs to be mapped into GART, before they are submitted to usermode queues. This patch adds

Re: [PATCH v6 5/9] drm/amdgpu: create context space for usermode queue

2023-09-29 Thread Shashank Sharma
On 20/09/2023 17:21, Alex Deucher wrote: On Fri, Sep 8, 2023 at 12:45 PM Shashank Sharma wrote: The FW expects us to allocate at least one page as context space to process gang, process, GDS and FW related work. This patch creates a joint object for the same, and calculates GPU space

Re: [PATCH v2 1/1] drm/amdkfd: Fix unaligned doorbell absolute offset for gfx8

2023-09-29 Thread Shashank Sharma
On 28/09/2023 20:53, Felix Kuehling wrote: On 2023-09-28 11:38, Shashank Sharma wrote: Hello Felix, Mukul, On 28/09/2023 17:30, Felix Kuehling wrote: On 2023-09-28 10:30, Joshi, Mukul wrote: [AMD Official Use Only - General] -Original Message- From: Yadav, Arvind Sent: Thursday

Re: [PATCH v2 1/1] drm/amdkfd: Fix unaligned doorbell absolute offset for gfx8

2023-09-28 Thread Shashank Sharma
for gfx8 This patch is to adjust the absolute doorbell offset against the doorbell id considering the doorbell size of 32/64 bit. v2: - Addressed the review comment from Felix. Cc: Christian Koenig Cc: Alex Deucher Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav ---   drivers/gpu/drm

Re: [PATCH v6 4/9] drm/amdgpu: create GFX-gen11 usermode queue

2023-09-28 Thread Shashank Sharma
On 28/09/2023 15:52, Alex Deucher wrote: On Thu, Sep 28, 2023 at 9:40 AM Shashank Sharma wrote: On 28/09/2023 15:27, Alex Deucher wrote: On Thu, Sep 28, 2023 at 9:22 AM Shashank Sharma wrote: On 14/09/2023 10:24, Shashank Sharma wrote: On 14/09/2023 09:45, Christian König wrote: Am

Re: [PATCH v6 4/9] drm/amdgpu: create GFX-gen11 usermode queue

2023-09-28 Thread Shashank Sharma
On 28/09/2023 15:27, Alex Deucher wrote: On Thu, Sep 28, 2023 at 9:22 AM Shashank Sharma wrote: On 14/09/2023 10:24, Shashank Sharma wrote: On 14/09/2023 09:45, Christian König wrote: Am 08.09.23 um 18:04 schrieb Shashank Sharma: A Memory queue descriptor (MQD) of a userqueue defines

Re: [PATCH v6 4/9] drm/amdgpu: create GFX-gen11 usermode queue

2023-09-28 Thread Shashank Sharma
On 14/09/2023 10:24, Shashank Sharma wrote: On 14/09/2023 09:45, Christian König wrote: Am 08.09.23 um 18:04 schrieb Shashank Sharma: A Memory queue descriptor (MQD) of a userqueue defines it in the hw's context. As MQD format can vary between different graphics IPs, we need gfx GEN

Re: [PATCH 1/1] drm/amdkfd: Fix unaligned doorbell absolute offset for gfx8

2023-09-27 Thread Shashank Sharma
On 27/09/2023 19:27, Felix Kuehling wrote: [+Mukul] On 2023-09-27 12:16, Arvind Yadav wrote: This patch is to adjust the absolute doorbell offset against the doorbell id considering the doorbell size of 32/64 bit. Cc: Christian Koenig Cc: Alex Deucher Signed-off-by: Shashank Sharma Signed

Re: [PATCH v6 4/9] drm/amdgpu: create GFX-gen11 usermode queue

2023-09-14 Thread Shashank Sharma
On 14/09/2023 09:45, Christian König wrote: Am 08.09.23 um 18:04 schrieb Shashank Sharma: A Memory queue descriptor (MQD) of a userqueue defines it in the hw's context. As MQD format can vary between different graphics IPs, we need gfx GEN specific handlers to create MQDs. This patch

[PATCH v6 7/9] drm/amdgpu: map wptr BO into GART

2023-09-08 Thread Shashank Sharma
or allocate from GART, but not both. - All the handling must be done with the VM locks held. Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c| 81 +++ .../gpu/drm/amd/include

[PATCH v6 9/9] drm/amdgpu: cleanup leftover queues

2023-09-08 Thread Shashank Sharma
This patch adds code to cleanup any leftover userqueues which a user might have missed to destroy due to a crash or any other programming error. Cc: Alex Deucher Cc: Christian Koenig Suggested-by: Bas Nieuwenhuizen Signed-off-by: Bas Nieuwenhuizen Signed-off-by: Shashank Sharma --- drivers

[PATCH v6 8/9] drm/amdgpu: generate doorbell index for userqueue

2023-09-08 Thread Shashank Sharma
: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 40 +++ drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c| 1 + .../gpu/drm/amd/include/amdgpu_userqueue.h| 1 + 3 files changed, 42 insertions(+) diff --git

[PATCH v6 6/9] drm/amdgpu: map usermode queue into MES

2023-09-08 Thread Shashank Sharma
->proc/gang/fw_ctx_address variables and doing the address calculations locally to keep the queue structure GEN independent (Alex) Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 72 ++ 1 f

[PATCH v6 5/9] drm/amdgpu: create context space for usermode queue

2023-09-08 Thread Shashank Sharma
Koenig Signed-off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c| 61 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 1 + 2 files changed, 62 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c b/drivers/gpu

[PATCH v6 4/9] drm/amdgpu: create GFX-gen11 usermode queue

2023-09-08 Thread Shashank Sharma
off-by: Shashank Sharma Signed-off-by: Arvind Yadav --- drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 16 drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c| 77 +++ .../gpu/drm/amd/include/amdgpu_userqueue.h| 7 ++ 3 files changed, 100 insertions(+) diff --git a/drivers/gpu/

[PATCH v6 3/9] drm/amdgpu: add new IOCTL for usermode queue

2023-09-08 Thread Shashank Sharma
(Christian) - Do not save the queue id/idr in queue itself (Christian) - Move the idr allocation in the IP independent generic space (Christian) V6: - Check the validity of input IP type (Christian) Cc: Alex Deucher Cc: Christian Koenig Signed-off-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu

[PATCH v6 2/9] drm/amdgpu: add usermode queue base code

2023-09-08 Thread Shashank Sharma
-by: Shashank Sharma --- drivers/gpu/drm/amd/amdgpu/Makefile | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu.h | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 6 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 40

[PATCH v6 1/9] drm/amdgpu: UAPI for user queue management

2023-09-08 Thread Shashank Sharma
Deucher Signed-off-by: Shashank Sharma --- include/uapi/drm/amdgpu_drm.h | 110 ++ 1 file changed, 110 insertions(+) diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h index 79b14828d542..627b4a38c855 100644 --- a/include/uapi/drm

[PATCH v6 0/9] AMDGPU usermode queues

2023-09-08 Thread Shashank Sharma
-manager changes, which were published here (targeted merged in V6.6): https://patchwork.freedesktop.org/series/115802 Alex Deucher (1): drm/amdgpu: UAPI for user queue management Shashank Sharma (8): drm/amdgpu: add usermode queue base code drm/amdgpu: add new IOCTL for usermode queue drm

  1   2   3   4   5   >