diff options
author | Deepak Nibade <dnibade@nvidia.com> | 2014-07-08 08:30:18 -0400 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2015-03-18 15:10:26 -0400 |
commit | fec60b6e6e299151d446f4bccc5fd64a23b704d2 (patch) | |
tree | 7ff144ac70c937e6a91e4f18afee64b35541d88a /drivers/gpu/nvgpu/gk20a/gk20a.h | |
parent | 597083eaba3abd3e48b3c6bfafac3ef94606c2ad (diff) |
gpu: nvgpu: force idle if railgate not supported
Add a way to force idle and reset the GPU in case where GPU
rail gating is not supported
(i.e. platform->can_railgate = false)
In this case, we follow below sequence :
- once GPU is idle, get runtime reference which enables the clocks
- call prepare_poweroff() to save the state explicitly
- perform explicit reset assert/deassert
- call finalize_poweron() to restore the state
- drop the runtime reference taken earlier
Bug 1525284
Change-Id: Id5f3ec152093acd585631dfbf785d8e0561f9048
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: http://git-master/r/435620
GVS: Gerrit_Virtual_Submit
Reviewed-by: Arto Merilainen <amerilainen@nvidia.com>
Tested-by: Arto Merilainen <amerilainen@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a.h')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index 55bc6b20..774e4e85 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h | |||
@@ -271,6 +271,7 @@ struct gk20a { | |||
271 | bool elpg_enabled; | 271 | bool elpg_enabled; |
272 | bool aelpg_enabled; | 272 | bool aelpg_enabled; |
273 | bool forced_idle; | 273 | bool forced_idle; |
274 | bool forced_reset; | ||
274 | 275 | ||
275 | #ifdef CONFIG_DEBUG_FS | 276 | #ifdef CONFIG_DEBUG_FS |
276 | spinlock_t debugfs_lock; | 277 | spinlock_t debugfs_lock; |