summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/common
diff options
context:
space:
mode:
authorPeter Boonstoppel <pboonstoppel@nvidia.com>2017-05-01 13:19:23 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-06-29 14:12:19 -0400
commit635e9946b718d9f0c35053b59c745ae529429f25 (patch)
tree5b28900613bac95cc5908c5665d9e494e6e104a1 /drivers/gpu/nvgpu/common
parentf7e37e6847896992077fe8d434ea14a751318175 (diff)
gpu: nvgpu: Remove gk20a_scale_notify_busy/idle() hooks
Remove dependency for nvgpu to invoke devfreq govenor on every gk20a_busy/idle() call. This dependency was originally necessary to track GPU load (busy vs idle) in software. However, since we currently read the load GPU from HW/PMU there is no need to invoke the devfreq governor in this path. Instead it can use timer-based polling. Jira NVGPU-20 Change-Id: Id09f89a8a562ed49164a2e06dcbb901e4a46e7d5 Signed-off-by: Peter Boonstoppel <pboonstoppel@nvidia.com> Reviewed-on: https://git-master/r/1473140 GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/common')
-rw-r--r--drivers/gpu/nvgpu/common/linux/module.c10
1 files changed, 0 insertions, 10 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/module.c b/drivers/gpu/nvgpu/common/linux/module.c
index 99bbc25e..c6794e44 100644
--- a/drivers/gpu/nvgpu/common/linux/module.c
+++ b/drivers/gpu/nvgpu/common/linux/module.c
@@ -96,8 +96,6 @@ int gk20a_busy(struct gk20a *g)
96 } 96 }
97 } 97 }
98 98
99 gk20a_scale_notify_busy(dev);
100
101fail: 99fail:
102 up_read(&g->busy_lock); 100 up_read(&g->busy_lock);
103 101
@@ -121,16 +119,8 @@ void gk20a_idle(struct gk20a *g)
121 return; 119 return;
122 120
123 if (pm_runtime_enabled(dev)) { 121 if (pm_runtime_enabled(dev)) {
124#ifdef CONFIG_PM
125 if (atomic_read(&g->dev->power.usage_count) == 1)
126 gk20a_scale_notify_idle(dev);
127#endif
128
129 pm_runtime_mark_last_busy(dev); 122 pm_runtime_mark_last_busy(dev);
130 pm_runtime_put_sync_autosuspend(dev); 123 pm_runtime_put_sync_autosuspend(dev);
131
132 } else {
133 gk20a_scale_notify_idle(dev);
134 } 124 }
135} 125}
136 126