summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.c8
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.h1
-rw-r--r--drivers/gpu/nvgpu/gm20b/hal_gm20b.c1
-rw-r--r--drivers/gpu/nvgpu/gp106/hal_gp106.c1
-rw-r--r--drivers/gpu/nvgpu/gp10b/hal_gp10b.c1
5 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c
index d203a335..2d09c0bb 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.c
@@ -192,6 +192,14 @@ int gk20a_finalize_poweron(struct gk20a *g)
192 } 192 }
193 } 193 }
194 194
195 if (g->ops.fb.mem_unlock) {
196 err = g->ops.fb.mem_unlock(g);
197 if (err) {
198 nvgpu_err(g, "failed to unlock memory");
199 goto done;
200 }
201 }
202
195 err = g->ops.fifo.reset_enable_hw(g); 203 err = g->ops.fifo.reset_enable_hw(g);
196 204
197 if (err) { 205 if (err) {
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h
index 3fcad1cf..c04c97ca 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.h
@@ -445,6 +445,7 @@ struct gpu_ops {
445 void (*set_debug_mode)(struct gk20a *g, bool enable); 445 void (*set_debug_mode)(struct gk20a *g, bool enable);
446 void (*tlb_invalidate)(struct gk20a *g, struct nvgpu_mem *pdb); 446 void (*tlb_invalidate)(struct gk20a *g, struct nvgpu_mem *pdb);
447 void (*hub_isr)(struct gk20a *g); 447 void (*hub_isr)(struct gk20a *g);
448 int (*mem_unlock)(struct gk20a *g);
448 } fb; 449 } fb;
449 struct { 450 struct {
450 void (*slcg_bus_load_gating_prod)(struct gk20a *g, bool prod); 451 void (*slcg_bus_load_gating_prod)(struct gk20a *g, bool prod);
diff --git a/drivers/gpu/nvgpu/gm20b/hal_gm20b.c b/drivers/gpu/nvgpu/gm20b/hal_gm20b.c
index e146d3ca..269fd7f1 100644
--- a/drivers/gpu/nvgpu/gm20b/hal_gm20b.c
+++ b/drivers/gpu/nvgpu/gm20b/hal_gm20b.c
@@ -308,6 +308,7 @@ static const struct gpu_ops gm20b_ops = {
308 .is_debug_mode_enabled = gm20b_fb_debug_mode_enabled, 308 .is_debug_mode_enabled = gm20b_fb_debug_mode_enabled,
309 .set_debug_mode = gm20b_fb_set_debug_mode, 309 .set_debug_mode = gm20b_fb_set_debug_mode,
310 .tlb_invalidate = gk20a_fb_tlb_invalidate, 310 .tlb_invalidate = gk20a_fb_tlb_invalidate,
311 .mem_unlock = NULL,
311 }, 312 },
312 .clock_gating = { 313 .clock_gating = {
313 .slcg_bus_load_gating_prod = 314 .slcg_bus_load_gating_prod =
diff --git a/drivers/gpu/nvgpu/gp106/hal_gp106.c b/drivers/gpu/nvgpu/gp106/hal_gp106.c
index 54960b96..1246ee7f 100644
--- a/drivers/gpu/nvgpu/gp106/hal_gp106.c
+++ b/drivers/gpu/nvgpu/gp106/hal_gp106.c
@@ -373,6 +373,7 @@ static const struct gpu_ops gp106_ops = {
373 .is_debug_mode_enabled = gm20b_fb_debug_mode_enabled, 373 .is_debug_mode_enabled = gm20b_fb_debug_mode_enabled,
374 .set_debug_mode = gm20b_fb_set_debug_mode, 374 .set_debug_mode = gm20b_fb_set_debug_mode,
375 .tlb_invalidate = gk20a_fb_tlb_invalidate, 375 .tlb_invalidate = gk20a_fb_tlb_invalidate,
376 .mem_unlock = NULL,
376 }, 377 },
377 .clock_gating = { 378 .clock_gating = {
378 .slcg_bus_load_gating_prod = 379 .slcg_bus_load_gating_prod =
diff --git a/drivers/gpu/nvgpu/gp10b/hal_gp10b.c b/drivers/gpu/nvgpu/gp10b/hal_gp10b.c
index b40ce4a1..b80722b8 100644
--- a/drivers/gpu/nvgpu/gp10b/hal_gp10b.c
+++ b/drivers/gpu/nvgpu/gp10b/hal_gp10b.c
@@ -327,6 +327,7 @@ static const struct gpu_ops gp10b_ops = {
327 .is_debug_mode_enabled = gm20b_fb_debug_mode_enabled, 327 .is_debug_mode_enabled = gm20b_fb_debug_mode_enabled,
328 .set_debug_mode = gm20b_fb_set_debug_mode, 328 .set_debug_mode = gm20b_fb_set_debug_mode,
329 .tlb_invalidate = gk20a_fb_tlb_invalidate, 329 .tlb_invalidate = gk20a_fb_tlb_invalidate,
330 .mem_unlock = NULL,
330 }, 331 },
331 .clock_gating = { 332 .clock_gating = {
332 .slcg_bus_load_gating_prod = 333 .slcg_bus_load_gating_prod =