summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
diff options
context:
space:
mode:
authorDeepak Nibade <dnibade@nvidia.com>2017-10-03 03:51:07 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-10-04 06:37:14 -0400
commit3cd0603c4218ee33eb1e5a36322b25d369ed487b (patch)
tree05f9ce31c00335e308841a454918ceec38e8c413 /drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
parente400475a915f73abb823b00945179eec470f73e0 (diff)
gpu: nvgpu: verify channel status while closing per-platform
We right now call gk20a_fifo_tsg_unbind_channel_verify_status() to verify channel status while unbinding a channel from TSG while closing Add support to do this verification per-platform and keep this disabled for vgpu platforms Bug 200327095 Change-Id: I19fab41c74d10d528d22bd9b3982a4ed73c3b4ca Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1572368 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/fifo_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/fifo_gk20a.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
index 7fc773f8..8e78b95e 100644
--- a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
@@ -1908,7 +1908,7 @@ int gk20a_fifo_force_reset_ch(struct channel_gk20a *ch,
1908 return 0; 1908 return 0;
1909} 1909}
1910 1910
1911static int gk20a_fifo_tsg_unbind_channel_verify_status(struct channel_gk20a *ch) 1911int gk20a_fifo_tsg_unbind_channel_verify_status(struct channel_gk20a *ch)
1912{ 1912{
1913 struct gk20a *g = ch->g; 1913 struct gk20a *g = ch->g;
1914 1914
@@ -1939,9 +1939,11 @@ int gk20a_fifo_tsg_unbind_channel(struct channel_gk20a *ch)
1939 if (err) 1939 if (err)
1940 goto fail_enable_tsg; 1940 goto fail_enable_tsg;
1941 1941
1942 err = gk20a_fifo_tsg_unbind_channel_verify_status(ch); 1942 if (g->ops.fifo.tsg_verify_channel_status) {
1943 if (err) 1943 err = g->ops.fifo.tsg_verify_channel_status(ch);
1944 goto fail_enable_tsg; 1944 if (err)
1945 goto fail_enable_tsg;
1946 }
1945 1947
1946 /* Channel should be seen as TSG channel while updating runlist */ 1948 /* Channel should be seen as TSG channel while updating runlist */
1947 err = channel_gk20a_update_runlist(ch, false); 1949 err = channel_gk20a_update_runlist(ch, false);