summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/nvgpu/gk20a/ce2_gk20a.c12
-rw-r--r--drivers/gpu/nvgpu/gk20a/fifo_gk20a.c3
-rw-r--r--drivers/gpu/nvgpu/gk20a/gr_gk20a.c9
3 files changed, 13 insertions, 11 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/ce2_gk20a.c b/drivers/gpu/nvgpu/gk20a/ce2_gk20a.c
index ed5a8b4e..8e3f1754 100644
--- a/drivers/gpu/nvgpu/gk20a/ce2_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/ce2_gk20a.c
@@ -339,6 +339,18 @@ int gk20a_init_ce_support(struct gk20a *g)
339{ 339{
340 struct gk20a_ce_app *ce_app = &g->ce_app; 340 struct gk20a_ce_app *ce_app = &g->ce_app;
341 int err; 341 int err;
342 u32 ce_reset_mask;
343
344 ce_reset_mask = gk20a_fifo_get_all_ce_engine_reset_mask(g);
345
346 g->ops.mc.reset(g, ce_reset_mask);
347
348 if (g->ops.clock_gating.slcg_ce2_load_gating_prod)
349 g->ops.clock_gating.slcg_ce2_load_gating_prod(g,
350 g->slcg_enabled);
351 if (g->ops.clock_gating.blcg_ce_load_gating_prod)
352 g->ops.clock_gating.blcg_ce_load_gating_prod(g,
353 g->blcg_enabled);
342 354
343 if (ce_app->initialised) { 355 if (ce_app->initialised) {
344 /* assume this happen during poweron/poweroff GPU sequence */ 356 /* assume this happen during poweron/poweroff GPU sequence */
diff --git a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
index 4129e407..cb54a1ca 100644
--- a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
@@ -767,9 +767,6 @@ int gk20a_init_fifo_reset_enable_hw(struct gk20a *g)
767 /* enable pmc pfifo */ 767 /* enable pmc pfifo */
768 g->ops.mc.reset(g, mc_enable_pfifo_enabled_f()); 768 g->ops.mc.reset(g, mc_enable_pfifo_enabled_f());
769 769
770 if (g->ops.clock_gating.slcg_ce2_load_gating_prod)
771 g->ops.clock_gating.slcg_ce2_load_gating_prod(g,
772 g->slcg_enabled);
773 if (g->ops.clock_gating.slcg_fifo_load_gating_prod) 770 if (g->ops.clock_gating.slcg_fifo_load_gating_prod)
774 g->ops.clock_gating.slcg_fifo_load_gating_prod(g, 771 g->ops.clock_gating.slcg_fifo_load_gating_prod(g,
775 g->slcg_enabled); 772 g->slcg_enabled);
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
index b2225dae..48becc81 100644
--- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
@@ -4935,9 +4935,6 @@ static void gr_gk20a_load_gating_prod(struct gk20a *g)
4935 if (g->ops.clock_gating.blcg_bus_load_gating_prod) 4935 if (g->ops.clock_gating.blcg_bus_load_gating_prod)
4936 g->ops.clock_gating.blcg_bus_load_gating_prod(g, 4936 g->ops.clock_gating.blcg_bus_load_gating_prod(g,
4937 g->blcg_enabled); 4937 g->blcg_enabled);
4938 if (g->ops.clock_gating.blcg_ce_load_gating_prod)
4939 g->ops.clock_gating.blcg_ce_load_gating_prod(g,
4940 g->blcg_enabled);
4941 if (g->ops.clock_gating.blcg_gr_load_gating_prod) 4938 if (g->ops.clock_gating.blcg_gr_load_gating_prod)
4942 g->ops.clock_gating.blcg_gr_load_gating_prod(g, 4939 g->ops.clock_gating.blcg_gr_load_gating_prod(g,
4943 g->blcg_enabled); 4940 g->blcg_enabled);
@@ -4957,9 +4954,6 @@ static int gk20a_init_gr_prepare(struct gk20a *g)
4957{ 4954{
4958 u32 gpfifo_ctrl, pmc_en; 4955 u32 gpfifo_ctrl, pmc_en;
4959 u32 err = 0; 4956 u32 err = 0;
4960 u32 ce_reset_mask;
4961
4962 ce_reset_mask = gk20a_fifo_get_all_ce_engine_reset_mask(g);
4963 4957
4964 /* disable fifo access */ 4958 /* disable fifo access */
4965 pmc_en = gk20a_readl(g, mc_enable_r()); 4959 pmc_en = gk20a_readl(g, mc_enable_r());
@@ -4972,8 +4966,7 @@ static int gk20a_init_gr_prepare(struct gk20a *g)
4972 /* reset gr engine */ 4966 /* reset gr engine */
4973 g->ops.mc.reset(g, mc_enable_pgraph_enabled_f() | 4967 g->ops.mc.reset(g, mc_enable_pgraph_enabled_f() |
4974 mc_enable_blg_enabled_f() | 4968 mc_enable_blg_enabled_f() |
4975 mc_enable_perfmon_enabled_f() | 4969 mc_enable_perfmon_enabled_f());
4976 ce_reset_mask);
4977 4970
4978 gr_gk20a_load_gating_prod(g); 4971 gr_gk20a_load_gating_prod(g);
4979 4972