diff options
author | Konsta Holtta <kholtta@nvidia.com> | 2017-05-02 09:01:51 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-05-05 10:54:18 -0400 |
commit | ee9733e587d977610975435a84e5af7cabba8870 (patch) | |
tree | 6515a93b3fd6267d1e9626469816747359b197e8 /drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |
parent | 744e2d202e2d38b0d8ff8b55e1e84daf75e39b48 (diff) |
gpu: nvgpu: expose deterministic submit support
Add these bits in the gpu characteristics flags:
NVGPU_GPU_FLAGS_SUPPORT_DETERMINISTIC_SUBMIT_NO_JOBTRACKING - fast
submits with no in-kernel job tracking are supported.
NVGPU_GPU_FLAGS_SUPPORT_DETERMINISTIC_SUBMIT_FULL - deterministic
submits also with job tracking and num_inflight_jobs set are supported.
Either of these may get disabled if the particular channel or submit
still requires features that block these.
Make gk20a_channel_sync_needs_sync_framework() take a gk20a pointer
instead of a channel pointer so that it can be called without a channel.
It does not need any per-channel data.
Bug 200291300
Change-Id: I5f82510b6d39b53bcf6f1006dd83bdd9053963a0
Signed-off-by: Konsta Holtta <kholtta@nvidia.com>
Reviewed-on: http://git-master/r/1456845
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/channel_gk20a.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index 9902cb5e..db44d11b 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |||
@@ -2468,7 +2468,7 @@ int gk20a_submit_channel_gpfifo(struct channel_gk20a *c, | |||
2468 | return -EINVAL; | 2468 | return -EINVAL; |
2469 | 2469 | ||
2470 | need_sync_framework = force_need_sync_fence || | 2470 | need_sync_framework = force_need_sync_fence || |
2471 | gk20a_channel_sync_needs_sync_framework(c) || | 2471 | gk20a_channel_sync_needs_sync_framework(g) || |
2472 | (flags & NVGPU_SUBMIT_GPFIFO_FLAGS_SYNC_FENCE && | 2472 | (flags & NVGPU_SUBMIT_GPFIFO_FLAGS_SYNC_FENCE && |
2473 | (flags & NVGPU_SUBMIT_GPFIFO_FLAGS_FENCE_WAIT || | 2473 | (flags & NVGPU_SUBMIT_GPFIFO_FLAGS_FENCE_WAIT || |
2474 | flags & NVGPU_SUBMIT_GPFIFO_FLAGS_FENCE_GET)); | 2474 | flags & NVGPU_SUBMIT_GPFIFO_FLAGS_FENCE_GET)); |