diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c index 7ecef39b6..13dc4241e 100644 --- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c @@ -5049,7 +5049,7 @@ int gk20a_mm_fb_flush(struct gk20a *g) udelay(5); } else break; - } while (nvgpu_timeout_check(&timeout)); + } while (!nvgpu_timeout_check(&timeout)); if (nvgpu_timeout_peek(&timeout)) { if (g->ops.fb.dump_vpr_wpr_info) @@ -5092,7 +5092,7 @@ static void gk20a_mm_l2_invalidate_locked(struct gk20a *g) udelay(5); } else break; - } while (nvgpu_timeout_check(&timeout)); + } while (!nvgpu_timeout_check(&timeout)); if (nvgpu_timeout_peek(&timeout)) gk20a_warn(dev_from_gk20a(g), @@ -5125,7 +5125,7 @@ void gk20a_mm_l2_flush(struct gk20a *g, bool invalidate) if (!g->power_on) goto hw_was_off; - nvgpu_timeout_init(g, &timeout, 200, NVGPU_TIMER_RETRY_TIMER); + nvgpu_timeout_init(g, &timeout, 2000, NVGPU_TIMER_RETRY_TIMER); mutex_lock(&mm->l2_op_lock); @@ -5147,7 +5147,7 @@ void gk20a_mm_l2_flush(struct gk20a *g, bool invalidate) udelay(5); } else break; - } while (nvgpu_timeout_check_msg(&timeout, + } while (!nvgpu_timeout_check_msg(&timeout, "l2_flush_dirty too many retries")); trace_gk20a_mm_l2_flush_done(dev_name(g->dev)); @@ -5192,7 +5192,7 @@ void gk20a_mm_cbc_clean(struct gk20a *g) udelay(5); } else break; - } while (nvgpu_timeout_check_msg(&timeout, + } while (!nvgpu_timeout_check_msg(&timeout, "l2_clean_comptags too many retries")); mutex_unlock(&mm->l2_op_lock); @@ -5259,7 +5259,7 @@ void gk20a_mm_tlb_invalidate(struct vm_gk20a *vm) if (fb_mmu_ctrl_pri_fifo_space_v(data) != 0) break; udelay(2); - } while (nvgpu_timeout_check_msg(&timeout, + } while (!nvgpu_timeout_check_msg(&timeout, "wait mmu fifo space")); if (nvgpu_timeout_peek(&timeout)) @@ -5283,7 +5283,7 @@ void gk20a_mm_tlb_invalidate(struct vm_gk20a *vm) fb_mmu_ctrl_pri_fifo_empty_false_f()) break; udelay(2); - } while (nvgpu_timeout_check_msg(&timeout, + } while (!nvgpu_timeout_check_msg(&timeout, "wait mmu invalidate")); trace_gk20a_mm_tlb_invalidate_done(dev_name(g->dev));