diff options
Diffstat (limited to 'drivers/gpu/nvgpu')
-rw-r--r-- | drivers/gpu/nvgpu/vgpu/vgpu.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/vgpu/vgpu.c b/drivers/gpu/nvgpu/vgpu/vgpu.c index 49f0fb39..871f0874 100644 --- a/drivers/gpu/nvgpu/vgpu/vgpu.c +++ b/drivers/gpu/nvgpu/vgpu/vgpu.c | |||
@@ -227,6 +227,16 @@ static void vgpu_remove_support(struct gk20a *g) | |||
227 | } | 227 | } |
228 | } | 228 | } |
229 | 229 | ||
230 | static void vgpu_init_vars(struct gk20a *g) | ||
231 | { | ||
232 | nvgpu_mutex_init(&g->poweroff_lock); | ||
233 | g->regs_saved = g->regs; | ||
234 | g->bar1_saved = g->bar1; | ||
235 | |||
236 | INIT_LIST_HEAD(&g->pending_sema_waits); | ||
237 | nvgpu_raw_spinlock_init(&g->pending_sema_waits_lock); | ||
238 | } | ||
239 | |||
230 | static int vgpu_init_support(struct platform_device *pdev) | 240 | static int vgpu_init_support(struct platform_device *pdev) |
231 | { | 241 | { |
232 | struct resource *r = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 242 | struct resource *r = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
@@ -583,6 +593,8 @@ int vgpu_probe(struct platform_device *pdev) | |||
583 | 593 | ||
584 | vgpu_init_support(pdev); | 594 | vgpu_init_support(pdev); |
585 | 595 | ||
596 | vgpu_init_vars(gk20a); | ||
597 | |||
586 | init_rwsem(&gk20a->busy_lock); | 598 | init_rwsem(&gk20a->busy_lock); |
587 | 599 | ||
588 | nvgpu_spinlock_init(&gk20a->mc_enable_lock); | 600 | nvgpu_spinlock_init(&gk20a->mc_enable_lock); |