diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2017-08-04 12:49:48 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-08-04 16:44:19 -0400 |
commit | 192cf8c1f8d1005ab08619c9152d514dec3a34ef (patch) | |
tree | 3fe7f7fb3e6d58b230cc7521b2af2c30e6ec3757 /drivers | |
parent | 2e07e0633081a838f139fac0565366383f7302c4 (diff) |
gpu: nvgpu: Pass struct gk20a to gk20a_wait_for_idle()
Pass struct gk20a pointer instead of struct device to
gk20a_wait_for_idle(). The code is not Linux specific and does not
need pointer to struct device.
Change-Id: I2cafd6c7db019c9de76b6e68a1ae73f0b4cea37d
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1533173
GVS: Gerrit_Virtual_Submit
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/nvgpu/common/linux/module.c | 4 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.c | 3 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.h | 2 |
3 files changed, 4 insertions, 5 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/module.c b/drivers/gpu/nvgpu/common/linux/module.c index cbfe6ad7..bfbe7a58 100644 --- a/drivers/gpu/nvgpu/common/linux/module.c +++ b/drivers/gpu/nvgpu/common/linux/module.c | |||
@@ -659,7 +659,7 @@ static void gk20a_pm_shutdown(struct platform_device *pdev) | |||
659 | /* Prevent more requests by disabling Runtime PM */ | 659 | /* Prevent more requests by disabling Runtime PM */ |
660 | __pm_runtime_disable(&pdev->dev, false); | 660 | __pm_runtime_disable(&pdev->dev, false); |
661 | 661 | ||
662 | err = gk20a_wait_for_idle(&pdev->dev); | 662 | err = gk20a_wait_for_idle(g); |
663 | if (err) { | 663 | if (err) { |
664 | nvgpu_err(g, "failed to idle GPU, err=%d", err); | 664 | nvgpu_err(g, "failed to idle GPU, err=%d", err); |
665 | goto finish; | 665 | goto finish; |
@@ -844,7 +844,7 @@ void gk20a_driver_start_unload(struct gk20a *g) | |||
844 | if (g->is_virtual) | 844 | if (g->is_virtual) |
845 | return; | 845 | return; |
846 | 846 | ||
847 | gk20a_wait_for_idle(dev_from_gk20a(g)); | 847 | gk20a_wait_for_idle(g); |
848 | 848 | ||
849 | nvgpu_wait_for_deferred_interrupts(g); | 849 | nvgpu_wait_for_deferred_interrupts(g); |
850 | gk20a_channel_cancel_pending_sema_waits(g); | 850 | gk20a_channel_cancel_pending_sema_waits(g); |
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c index 7bd6acfd..c50d800f 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gk20a.c | |||
@@ -362,9 +362,8 @@ int gk20a_can_busy(struct gk20a *g) | |||
362 | return 1; | 362 | return 1; |
363 | } | 363 | } |
364 | 364 | ||
365 | int gk20a_wait_for_idle(struct device *dev) | 365 | int gk20a_wait_for_idle(struct gk20a *g) |
366 | { | 366 | { |
367 | struct gk20a *g = get_gk20a(dev); | ||
368 | int wait_length = 150; /* 3 second overall max wait. */ | 367 | int wait_length = 150; /* 3 second overall max wait. */ |
369 | int target_usage_count = 0; | 368 | int target_usage_count = 0; |
370 | 369 | ||
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index aeba1fcd..4517f6e0 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h | |||
@@ -1455,7 +1455,7 @@ int __gk20a_do_idle(struct gk20a *g, bool force_reset); | |||
1455 | int __gk20a_do_unidle(struct gk20a *g); | 1455 | int __gk20a_do_unidle(struct gk20a *g); |
1456 | 1456 | ||
1457 | int gk20a_can_busy(struct gk20a *g); | 1457 | int gk20a_can_busy(struct gk20a *g); |
1458 | int gk20a_wait_for_idle(struct device *dev); | 1458 | int gk20a_wait_for_idle(struct gk20a *g); |
1459 | 1459 | ||
1460 | #define NVGPU_GPU_ARCHITECTURE_SHIFT 4 | 1460 | #define NVGPU_GPU_ARCHITECTURE_SHIFT 4 |
1461 | 1461 | ||