summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/gk20a.c
diff options
context:
space:
mode:
authorAingara Paramakuru <aparamakuru@nvidia.com>2014-11-03 11:55:48 -0500
committerDan Willemsen <dwillemsen@nvidia.com>2015-03-18 15:12:25 -0400
commit5bac50c04406dd88bd4aad285601067620c540d4 (patch)
treec6625bf96cf9d550d120c96e635286a3e9d771e6 /drivers/gpu/nvgpu/gk20a/gk20a.c
parent36834282354de2760e54b1381e03e0fe8bc8b2a4 (diff)
gpu: nvgpu: vgpu: debugger interface fixes
To run CUDA apps, the following minimal changes have been made: - power-gating is disabled for vgpu - regop rd/wr returns -ENOSYS Tools (debugger/profiler) support is known to not work and not needed at this time. Bug 200043227 Change-Id: I923caad78450e72d310fb9290cf2849ed5460ad5 Signed-off-by: Aingara Paramakuru <aparamakuru@nvidia.com> Reviewed-on: http://git-master/r/592878 Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c
index 7b0db427..419b8675 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.c
@@ -1299,7 +1299,7 @@ static int gk20a_probe(struct platform_device *dev)
1299 1299
1300 platform_set_drvdata(dev, platform); 1300 platform_set_drvdata(dev, platform);
1301 1301
1302 if (platform->virtual_dev) 1302 if (gk20a_gpu_is_virtual(dev))
1303 return vgpu_probe(dev); 1303 return vgpu_probe(dev);
1304 1304
1305 gk20a = kzalloc(sizeof(struct gk20a), GFP_KERNEL); 1305 gk20a = kzalloc(sizeof(struct gk20a), GFP_KERNEL);
@@ -1449,7 +1449,7 @@ static int __exit gk20a_remove(struct platform_device *dev)
1449 1449
1450 gk20a_dbg_fn(""); 1450 gk20a_dbg_fn("");
1451 1451
1452 if (platform->virtual_dev) 1452 if (gk20a_gpu_is_virtual(dev))
1453 return vgpu_remove(dev); 1453 return vgpu_remove(dev);
1454 1454
1455 if (platform->has_cde) 1455 if (platform->has_cde)
@@ -1527,7 +1527,9 @@ int gk20a_busy(struct platform_device *pdev)
1527{ 1527{
1528 int ret = 0; 1528 int ret = 0;
1529 struct gk20a *g = get_gk20a(pdev); 1529 struct gk20a *g = get_gk20a(pdev);
1530#ifdef CONFIG_PM_RUNTIME
1530 struct gk20a_platform *platform = gk20a_get_platform(pdev); 1531 struct gk20a_platform *platform = gk20a_get_platform(pdev);
1532#endif
1531 1533
1532 down_read(&g->busy_lock); 1534 down_read(&g->busy_lock);
1533 1535
@@ -1549,7 +1551,7 @@ int gk20a_busy(struct platform_device *pdev)
1549 } 1551 }
1550#else 1552#else
1551 if (!g->power_on) { 1553 if (!g->power_on) {
1552 ret = platform->virtual_dev ? 1554 ret = gk20a_gpu_is_virtual(pdev) ?
1553 vgpu_pm_finalize_poweron(&pdev->dev) 1555 vgpu_pm_finalize_poweron(&pdev->dev)
1554 : gk20a_pm_finalize_poweron(&pdev->dev); 1556 : gk20a_pm_finalize_poweron(&pdev->dev);
1555 if (ret) 1557 if (ret)