diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2017-03-14 16:10:24 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-03-17 11:43:36 -0400 |
commit | 7fac794e998ddafee90e1e6ad550ac4da6c85896 (patch) | |
tree | 0ebf9dc8b1f5d1628a74e45d74484f3bb78bb025 /drivers/gpu/nvgpu/gm20b | |
parent | 589d6385b19a357cf566b75ded9355f9b8053ad7 (diff) |
gpu: nvgpu: Remove use of PM runtime in VPR fetch
VPR fetch is called only from code which already has GPU powered on.
Skip calling PM runtime.
Change-Id: I8f90f1afab150e81ad16a157cfe063848a3e4fc1
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: http://git-master/r/1320732
Reviewed-by: svccoveritychecker <svccoveritychecker@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Thomas Fleury <tfleury@nvidia.com>
Reviewed-by: Konsta Holtta <kholtta@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gm20b')
-rw-r--r-- | drivers/gpu/nvgpu/gm20b/mm_gm20b.c | 18 |
1 files changed, 2 insertions, 16 deletions
diff --git a/drivers/gpu/nvgpu/gm20b/mm_gm20b.c b/drivers/gpu/nvgpu/gm20b/mm_gm20b.c index 8f5d1e10..cd1a106d 100644 --- a/drivers/gpu/nvgpu/gm20b/mm_gm20b.c +++ b/drivers/gpu/nvgpu/gm20b/mm_gm20b.c | |||
@@ -13,7 +13,6 @@ | |||
13 | * more details. | 13 | * more details. |
14 | */ | 14 | */ |
15 | 15 | ||
16 | #include <linux/pm_runtime.h> | ||
17 | #include <linux/delay.h> | 16 | #include <linux/delay.h> |
18 | 17 | ||
19 | #include "gk20a/gk20a.h" | 18 | #include "gk20a/gk20a.h" |
@@ -50,27 +49,14 @@ static int gm20b_mm_mmu_vpr_info_fetch_wait(struct gk20a *g, | |||
50 | 49 | ||
51 | int gm20b_mm_mmu_vpr_info_fetch(struct gk20a *g) | 50 | int gm20b_mm_mmu_vpr_info_fetch(struct gk20a *g) |
52 | { | 51 | { |
53 | int ret = 0; | ||
54 | |||
55 | gk20a_busy_noresume(g->dev); | ||
56 | #ifdef CONFIG_PM | ||
57 | if (!pm_runtime_active(g->dev)) | ||
58 | goto fail; | ||
59 | #endif | ||
60 | |||
61 | if (gm20b_mm_mmu_vpr_info_fetch_wait(g, VPR_INFO_FETCH_WAIT)) { | 52 | if (gm20b_mm_mmu_vpr_info_fetch_wait(g, VPR_INFO_FETCH_WAIT)) { |
62 | ret = -ETIME; | 53 | return -ETIME; |
63 | goto fail; | ||
64 | } | 54 | } |
65 | 55 | ||
66 | gk20a_writel(g, fb_mmu_vpr_info_r(), | 56 | gk20a_writel(g, fb_mmu_vpr_info_r(), |
67 | fb_mmu_vpr_info_fetch_true_v()); | 57 | fb_mmu_vpr_info_fetch_true_v()); |
68 | 58 | ||
69 | ret = gm20b_mm_mmu_vpr_info_fetch_wait(g, VPR_INFO_FETCH_WAIT); | 59 | return gm20b_mm_mmu_vpr_info_fetch_wait(g, VPR_INFO_FETCH_WAIT); |
70 | |||
71 | fail: | ||
72 | pm_runtime_put(g->dev); | ||
73 | return ret; | ||
74 | } | 60 | } |
75 | 61 | ||
76 | static bool gm20b_mm_mmu_debug_mode_enabled(struct gk20a *g) | 62 | static bool gm20b_mm_mmu_debug_mode_enabled(struct gk20a *g) |