summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKonsta Holtta <kholtta@nvidia.com>2018-09-11 08:00:58 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2019-08-15 03:59:04 -0400
commitd8257c53c7efec25e44b99fa0508058235713424 (patch)
tree078d68888e54460d6bc20cbe94b733b2708de5b6
parent8b484c0b531b95fce024e101cdd204f1f8107c29 (diff)
gpu: nvgpu: mark usermode submit supported for gv11b
Mark usermode submit supported in gv11b and add the characteristics flag to expose the capability to userspace. Bug 200145225 Bug 200541476 Change-Id: Id9dcb0c71c020bd509fbdbffb94a756c69377f20 Signed-off-by: Konsta Holtta <kholtta@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1795822 Reviewed-by: Alex Waterman <alexw@nvidia.com> Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com> Signed-off-by: Debarshi Dutta <ddutta@nvidia.com> (cherry picked from commit 37659f5c8e0571655178c50a6296b68e3ebdc4cb in rel-32) Reviewed-on: https://git-master.nvidia.com/r/2170604 GVS: Gerrit_Virtual_Submit Reviewed-by: Bibek Basu <bbasu@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
-rw-r--r--drivers/gpu/nvgpu/gv11b/gv11b.c1
-rw-r--r--drivers/gpu/nvgpu/os/linux/ioctl_ctrl.c2
-rw-r--r--include/uapi/linux/nvgpu.h2
3 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/gv11b.c b/drivers/gpu/nvgpu/gv11b/gv11b.c
index db146095..e7cd17c8 100644
--- a/drivers/gpu/nvgpu/gv11b/gv11b.c
+++ b/drivers/gpu/nvgpu/gv11b/gv11b.c
@@ -35,6 +35,7 @@ int gv11b_init_gpu_characteristics(struct gk20a *g)
35 __nvgpu_set_enabled(g, NVGPU_SUPPORT_RESCHEDULE_RUNLIST, true); 35 __nvgpu_set_enabled(g, NVGPU_SUPPORT_RESCHEDULE_RUNLIST, true);
36 __nvgpu_set_enabled(g, NVGPU_SUPPORT_SYNCPOINT_ADDRESS, true); 36 __nvgpu_set_enabled(g, NVGPU_SUPPORT_SYNCPOINT_ADDRESS, true);
37 __nvgpu_set_enabled(g, NVGPU_SUPPORT_USER_SYNCPOINT, true); 37 __nvgpu_set_enabled(g, NVGPU_SUPPORT_USER_SYNCPOINT, true);
38 __nvgpu_set_enabled(g, NVGPU_SUPPORT_USERMODE_SUBMIT, true);
38 39
39 return 0; 40 return 0;
40} 41}
diff --git a/drivers/gpu/nvgpu/os/linux/ioctl_ctrl.c b/drivers/gpu/nvgpu/os/linux/ioctl_ctrl.c
index 73c9d084..cb24c30c 100644
--- a/drivers/gpu/nvgpu/os/linux/ioctl_ctrl.c
+++ b/drivers/gpu/nvgpu/os/linux/ioctl_ctrl.c
@@ -201,6 +201,8 @@ static struct nvgpu_flags_mapping flags_mapping[] = {
201 NVGPU_SUPPORT_SYNCPOINT_ADDRESS}, 201 NVGPU_SUPPORT_SYNCPOINT_ADDRESS},
202 {NVGPU_GPU_FLAGS_SUPPORT_USER_SYNCPOINT, 202 {NVGPU_GPU_FLAGS_SUPPORT_USER_SYNCPOINT,
203 NVGPU_SUPPORT_USER_SYNCPOINT}, 203 NVGPU_SUPPORT_USER_SYNCPOINT},
204 {NVGPU_GPU_FLAGS_SUPPORT_USERMODE_SUBMIT,
205 NVGPU_SUPPORT_USERMODE_SUBMIT},
204 {NVGPU_GPU_FLAGS_SUPPORT_IO_COHERENCE, 206 {NVGPU_GPU_FLAGS_SUPPORT_IO_COHERENCE,
205 NVGPU_SUPPORT_IO_COHERENCE}, 207 NVGPU_SUPPORT_IO_COHERENCE},
206 {NVGPU_GPU_FLAGS_SUPPORT_RESCHEDULE_RUNLIST, 208 {NVGPU_GPU_FLAGS_SUPPORT_RESCHEDULE_RUNLIST,
diff --git a/include/uapi/linux/nvgpu.h b/include/uapi/linux/nvgpu.h
index 38139524..0488e563 100644
--- a/include/uapi/linux/nvgpu.h
+++ b/include/uapi/linux/nvgpu.h
@@ -164,6 +164,8 @@ struct nvgpu_gpu_zbc_query_table_args {
164#define NVGPU_GPU_FLAGS_SUPPORT_USER_SYNCPOINT (1ULL << 28) 164#define NVGPU_GPU_FLAGS_SUPPORT_USER_SYNCPOINT (1ULL << 28)
165/* Railgating (powering the GPU off completely) is supported and enabled */ 165/* Railgating (powering the GPU off completely) is supported and enabled */
166#define NVGPU_GPU_FLAGS_CAN_RAILGATE (1ULL << 29) 166#define NVGPU_GPU_FLAGS_CAN_RAILGATE (1ULL << 29)
167/* Usermode submit is available */
168#define NVGPU_GPU_FLAGS_SUPPORT_USERMODE_SUBMIT (1ULL << 30)
167/* SM LRF ECC is enabled */ 169/* SM LRF ECC is enabled */
168#define NVGPU_GPU_FLAGS_ECC_ENABLED_SM_LRF (1ULL << 60) 170#define NVGPU_GPU_FLAGS_ECC_ENABLED_SM_LRF (1ULL << 60)
169/* SM SHM ECC is enabled */ 171/* SM SHM ECC is enabled */