diff options
author | Aingara Paramakuru <aparamakuru@nvidia.com> | 2014-11-03 11:55:48 -0500 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2015-03-18 15:12:25 -0400 |
commit | 5bac50c04406dd88bd4aad285601067620c540d4 (patch) | |
tree | c6625bf96cf9d550d120c96e635286a3e9d771e6 /drivers/gpu/nvgpu/gk20a/gk20a.c | |
parent | 36834282354de2760e54b1381e03e0fe8bc8b2a4 (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.c | 8 |
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) |