summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/gk20a.c
diff options
context:
space:
mode:
authorDeepak Nibade <dnibade@nvidia.com>2014-11-05 01:25:29 -0500
committerDan Willemsen <dwillemsen@nvidia.com>2015-03-18 15:12:04 -0400
commit0e89e423181ca2609fc6911e9c2f828a3e135e7b (patch)
tree8dd558f51889781d5a429ba97b4a6343f4875cda /drivers/gpu/nvgpu/gk20a/gk20a.c
parent1d0e302b534eb63f27f690d0002e2341198684b9 (diff)
gpu: nvgpu: force CAR reset in do_idle() for gm20b
In gk20a_do_idle(), we wait for platform->railgate_delay to allow GPU to go into rail gate But sometimes we set platform->railgate_delay = INT_MAX to disable GPU rail gating but allow it to suspend during low power state Due to this, force_idle API fails (it waits for INT_MAX) To fix this, allow forcing CAR reset instead of rail gating with flag "force_reset_in_do_idle" defined in gk20a_platform Set this flag for gm20b until we fix the railgate_delay Bug 1517584 Change-Id: I031aa56f87d4db3727e2c3a3e5eeaf18503dd449 Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: http://git-master/r/593704 Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.c')
-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 58108d97..ef0f6a8c 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.c
@@ -1659,7 +1659,7 @@ int __gk20a_do_idle(struct platform_device *pdev)
1659 */ 1659 */
1660 pm_runtime_put_sync(&pdev->dev); 1660 pm_runtime_put_sync(&pdev->dev);
1661 1661
1662 if (platform->can_railgate) { 1662 if (platform->can_railgate && !platform->force_reset_in_do_idle) {
1663 /* add sufficient delay to allow GPU to rail gate */ 1663 /* add sufficient delay to allow GPU to rail gate */
1664 msleep(platform->railgate_delay); 1664 msleep(platform->railgate_delay);
1665 1665