summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDeepak Nibade <dnibade@nvidia.com>2015-10-20 07:24:22 -0400
committerSachin Nikam <snikam@nvidia.com>2015-10-26 04:53:15 -0400
commit0334d7e30385187517c01a63a71dc11fa934c102 (patch)
treea76fedd5bd273e746df6d95e8e623d4540351709 /drivers
parent2aead8a72fbe31b5bb99fde54e496752ab224c2d (diff)
gpu: nvgpu: unrailgate only if pm_domains not enabled
Currently we unrailgate the GPU if railgating is not enabled or pm_domains are not enabled But in case if railgating is not enabled and pm_domains are enabled, we explicitly unrailgate GPU in gk20a_pm_init() and then runtime PM unrailgates it again when first user space request arrives - setting unrailgate refcount to 2 Now for gk20a_do_idle(), we need to railgate the GPU in fist call but that does not happen since unrailgate refcount != 1 hence, in case railgating is not enabled, we should unrailgate the GPU from only one place i.e. when first user space request arrives Bug 200142989 Bug 200137963 Bug 1678611 Reviewed-on: http://git-master/r/820321 (cherry picked from commit 452a1ff8da8e3f47caed2371440f9ad150bf8699) Change-Id: Ic9fe2267c9df5629315c30c1404c2b3044c1265a Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: http://git-master/r/822296 GVS: Gerrit_Virtual_Submit Reviewed-by: Sachin Nikam <snikam@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c
index fd7fdee1..a44ce996 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.c
@@ -1290,7 +1290,7 @@ static int gk20a_pm_init(struct platform_device *dev)
1290 * turn on the rail now. */ 1290 * turn on the rail now. */
1291 if (platform->can_railgate && IS_ENABLED(CONFIG_PM_GENERIC_DOMAINS)) 1291 if (platform->can_railgate && IS_ENABLED(CONFIG_PM_GENERIC_DOMAINS))
1292 _gk20a_pm_railgate(dev); 1292 _gk20a_pm_railgate(dev);
1293 else 1293 else if (!IS_ENABLED(CONFIG_PM_GENERIC_DOMAINS))
1294 _gk20a_pm_unrailgate(dev); 1294 _gk20a_pm_unrailgate(dev);
1295 1295
1296 /* genpd will take care of runtime power management if it is enabled */ 1296 /* genpd will take care of runtime power management if it is enabled */