summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/vgpu
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/vgpu')
-rw-r--r--drivers/gpu/nvgpu/vgpu/vgpu.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/gpu/nvgpu/vgpu/vgpu.c b/drivers/gpu/nvgpu/vgpu/vgpu.c
index 72606952..df793be7 100644
--- a/drivers/gpu/nvgpu/vgpu/vgpu.c
+++ b/drivers/gpu/nvgpu/vgpu/vgpu.c
@@ -191,10 +191,9 @@ static int vgpu_intr_thread(void *dev_id)
191 return 0; 191 return 0;
192} 192}
193 193
194static void vgpu_remove_support(struct device *dev) 194static void vgpu_remove_support(struct gk20a *g)
195{ 195{
196 struct gk20a *g = get_gk20a(dev); 196 struct vgpu_priv_data *priv = vgpu_get_priv_data_from_dev(g->dev);
197 struct vgpu_priv_data *priv = vgpu_get_priv_data_from_dev(dev);
198 struct tegra_vgpu_intr_msg msg; 197 struct tegra_vgpu_intr_msg msg;
199 int err; 198 int err;
200 199
@@ -265,7 +264,7 @@ static int vgpu_init_support(struct platform_device *pdev)
265 return 0; 264 return 0;
266 265
267 fail: 266 fail:
268 vgpu_remove_support(&pdev->dev); 267 vgpu_remove_support(g);
269 return err; 268 return err;
270} 269}
271 270
@@ -571,6 +570,8 @@ int vgpu_probe(struct platform_device *pdev)
571 platform->vgpu_priv = priv; 570 platform->vgpu_priv = priv;
572 gk20a->dev = dev; 571 gk20a->dev = dev;
573 572
573 gk20a->is_fmodel = platform->is_fmodel;
574
574 nvgpu_kmem_init(gk20a); 575 nvgpu_kmem_init(gk20a);
575 576
576 err = gk20a_user_init(dev, INTERFACE_NAME, &nvgpu_class); 577 err = gk20a_user_init(dev, INTERFACE_NAME, &nvgpu_class);
@@ -653,7 +654,7 @@ int vgpu_remove(struct platform_device *pdev)
653 654
654 vgpu_pm_qos_remove(dev); 655 vgpu_pm_qos_remove(dev);
655 if (g->remove_support) 656 if (g->remove_support)
656 g->remove_support(dev); 657 g->remove_support(g);
657 658
658 vgpu_comm_deinit(); 659 vgpu_comm_deinit();
659 gk20a_sched_ctrl_cleanup(g); 660 gk20a_sched_ctrl_cleanup(g);