diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2017-12-06 17:22:52 -0500 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-12-12 17:03:57 -0500 |
commit | 6e3f9112eaf351276b10391f020d203d87314172 (patch) | |
tree | 535f026043366262fa45d2dc202412f287cbec07 /drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |
parent | 3cb9cd5267074b42b7ecd7e1c21c61b2589b4932 (diff) |
gpu: nvgpu: Disallow use of bare channels
All channels need to now be wrapped in TSGs. Disallow use of bare
channels by preventing creation of GPFIFO for them.
Bug 1842197
Change-Id: Id0ebee4c590804b96c09f8951e35ba2680b596e7
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1612697
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 | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index e10be3c9..ee78d0b1 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |||
@@ -1134,6 +1134,12 @@ int gk20a_channel_alloc_gpfifo(struct channel_gk20a *c, | |||
1134 | gpfifo_size = num_entries; | 1134 | gpfifo_size = num_entries; |
1135 | gpfifo_entry_size = nvgpu_get_gpfifo_entry_size(); | 1135 | gpfifo_entry_size = nvgpu_get_gpfifo_entry_size(); |
1136 | 1136 | ||
1137 | if (!(flags & NVGPU_GPFIFO_FLAGS_ALLOW_BARE_CHANNEL) && | ||
1138 | !gk20a_is_channel_marked_as_tsg(c)) { | ||
1139 | nvgpu_err(g, "channel not part of a TSG"); | ||
1140 | return -EINVAL; | ||
1141 | } | ||
1142 | |||
1137 | if (flags & NVGPU_GPFIFO_FLAGS_SUPPORT_VPR) | 1143 | if (flags & NVGPU_GPFIFO_FLAGS_SUPPORT_VPR) |
1138 | c->vpr = true; | 1144 | c->vpr = true; |
1139 | 1145 | ||