summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/cde_gk20a.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/cde_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/cde_gk20a.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/cde_gk20a.c b/drivers/gpu/nvgpu/gk20a/cde_gk20a.c
index 3644c2ef..c2e2cc98 100644
--- a/drivers/gpu/nvgpu/gk20a/cde_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/cde_gk20a.c
@@ -842,7 +842,9 @@ int gk20a_cde_reload(struct gk20a *g)
842 int err, i; 842 int err, i;
843 843
844 if (!cde_app->initialised) { 844 if (!cde_app->initialised) {
845 gk20a_busy(g->dev); 845 err = gk20a_busy(g->dev);
846 if (err)
847 return err;
846 gk20a_init_cde_support(g); 848 gk20a_init_cde_support(g);
847 gk20a_idle(g->dev); 849 gk20a_idle(g->dev);
848 if (!cde_app->initialised) 850 if (!cde_app->initialised)
@@ -850,7 +852,10 @@ int gk20a_cde_reload(struct gk20a *g)
850 return 0; 852 return 0;
851 } 853 }
852 854
853 gk20a_busy(g->dev); 855 err = gk20a_busy(g->dev);
856 if (err)
857 return err;
858
854 mutex_lock(&cde_app->mutex); 859 mutex_lock(&cde_app->mutex);
855 for (i = 0; i < ARRAY_SIZE(cde_app->cde_ctx); i++, cde_ctx++) { 860 for (i = 0; i < ARRAY_SIZE(cde_app->cde_ctx); i++, cde_ctx++) {
856 gk20a_cde_remove(cde_ctx); 861 gk20a_cde_remove(cde_ctx);
@@ -1043,7 +1048,9 @@ static int gk20a_buffer_convert_gpu_to_cde(
1043 WRITE_PATCH(PATCH_QMD_CTA_THREAD_DIMENSION2, 1); 1048 WRITE_PATCH(PATCH_QMD_CTA_THREAD_DIMENSION2, 1);
1044#undef WRITE_PATCH 1049#undef WRITE_PATCH
1045 1050
1046 gk20a_busy(g->dev); 1051 err = gk20a_busy(g->dev);
1052 if (err)
1053 return err;
1047 err = gk20a_init_cde_support(g); 1054 err = gk20a_init_cde_support(g);
1048 if (err) 1055 if (err)
1049 goto out; 1056 goto out;