diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/mm_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/mm_gk20a.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c index 112e218a..1e0fd6af 100644 --- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c | |||
@@ -3225,6 +3225,12 @@ int gk20a_mm_fb_flush(struct gk20a *g) | |||
3225 | 3225 | ||
3226 | gk20a_dbg_fn(""); | 3226 | gk20a_dbg_fn(""); |
3227 | 3227 | ||
3228 | gk20a_busy_noresume(g->dev); | ||
3229 | if (!g->power_on) { | ||
3230 | pm_runtime_put_noidle(&g->dev->dev); | ||
3231 | return 0; | ||
3232 | } | ||
3233 | |||
3228 | mutex_lock(&mm->l2_op_lock); | 3234 | mutex_lock(&mm->l2_op_lock); |
3229 | 3235 | ||
3230 | /* Make sure all previous writes are committed to the L2. There's no | 3236 | /* Make sure all previous writes are committed to the L2. There's no |
@@ -3262,6 +3268,8 @@ int gk20a_mm_fb_flush(struct gk20a *g) | |||
3262 | 3268 | ||
3263 | mutex_unlock(&mm->l2_op_lock); | 3269 | mutex_unlock(&mm->l2_op_lock); |
3264 | 3270 | ||
3271 | pm_runtime_put_noidle(&g->dev->dev); | ||
3272 | |||
3265 | return ret; | 3273 | return ret; |
3266 | } | 3274 | } |
3267 | 3275 | ||