summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/gk20a.c
diff options
context:
space:
mode:
authorSeshendra Gadagottu <sgadagottu@nvidia.com>2015-12-23 18:36:38 -0500
committerTerje Bergstrom <tbergstrom@nvidia.com>2016-01-19 20:47:13 -0500
commit3a68fb2d7896170938af9a5bd7efd998f05eda29 (patch)
treed36eae501173df97d130cd343a7360ddac4ba7e1 /drivers/gpu/nvgpu/gk20a/gk20a.c
parentdb7095ce5180552d1a70fdea779e5987d55cce7b (diff)
gpu: nvgpu: suspend cde cleanly
Few times cde is getting deadlocked because of pending cde operation. So do the things cleanly, first suspend cde then do channel suspend. Bug 1709757 Change-Id: Iaf566b63d9efb13aa2691c19e2df676c70f26afc Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com> Reviewed-on: http://git-master/r/926574 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.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c
index 1f58b510..0982ecdf 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * GK20A Graphics 2 * GK20A Graphics
3 * 3 *
4 * Copyright (c) 2011-2015, NVIDIA CORPORATION. All rights reserved. 4 * Copyright (c) 2011-2016, NVIDIA CORPORATION. All rights reserved.
5 * 5 *
6 * This program is free software; you can redistribute it and/or modify it 6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms and conditions of the GNU General Public License, 7 * under the terms and conditions of the GNU General Public License,
@@ -694,13 +694,13 @@ static int gk20a_pm_prepare_poweroff(struct device *dev)
694 if (!g->power_on) 694 if (!g->power_on)
695 return 0; 695 return 0;
696 696
697 /* cancel any pending cde work */
698 gk20a_cde_suspend(g);
699
697 ret = gk20a_channel_suspend(g); 700 ret = gk20a_channel_suspend(g);
698 if (ret) 701 if (ret)
699 return ret; 702 return ret;
700 703
701 /* cancel any pending cde work */
702 gk20a_cde_suspend(g);
703
704 /* disable elpg before gr or fifo suspend */ 704 /* disable elpg before gr or fifo suspend */
705 ret |= gk20a_pmu_destroy(g); 705 ret |= gk20a_pmu_destroy(g);
706 /* 706 /*