summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/common/linux/channel.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/common/linux/channel.c')
-rw-r--r--drivers/gpu/nvgpu/common/linux/channel.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/channel.c b/drivers/gpu/nvgpu/common/linux/channel.c
index 716c5820..c295336f 100644
--- a/drivers/gpu/nvgpu/common/linux/channel.c
+++ b/drivers/gpu/nvgpu/common/linux/channel.c
@@ -537,6 +537,17 @@ int gk20a_submit_channel_gpfifo(struct channel_gk20a *c,
537 if (c->deterministic) 537 if (c->deterministic)
538 nvgpu_rwsem_down_read(&g->deterministic_busy); 538 nvgpu_rwsem_down_read(&g->deterministic_busy);
539 539
540 if (c->deterministic && c->deterministic_railgate_allowed) {
541 /*
542 * Nope - this channel has dropped its own power ref. As
543 * deterministic submits don't hold power on per each submitted
544 * job like normal ones do, the GPU might railgate any time now
545 * and thus submit is disallowed.
546 */
547 err = -EINVAL;
548 goto clean_up;
549 }
550
540 trace_gk20a_channel_submit_gpfifo(g->name, 551 trace_gk20a_channel_submit_gpfifo(g->name,
541 c->chid, 552 c->chid,
542 num_entries, 553 num_entries,