From 7f09c477c9cb85c7571bab4bf87dac4a72f25696 Mon Sep 17 00:00:00 2001 From: Deepak Nibade Date: Mon, 2 Jul 2018 16:29:54 +0530 Subject: gpu: nvgpu: add HAL to invalidate replay mmu fault Add new HAL gops.fb.mmu_invalidate_replay() to invalidate replay mmu fault Use existing API gv11b_fb_mmu_invalidate_replay() to set to this HAL on all Volta chips Bug 2228914 Jira NVGPU-838 Jira NVGPUT-73 Change-Id: I394901857d41499f3ea44023393fe271fb664260 Signed-off-by: Deepak Nibade Reviewed-on: https://git-master.nvidia.com/r/1767970 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/gv11b/fb_gv11b.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'drivers/gpu/nvgpu/gv11b/fb_gv11b.c') diff --git a/drivers/gpu/nvgpu/gv11b/fb_gv11b.c b/drivers/gpu/nvgpu/gv11b/fb_gv11b.c index 54f0d2d8..d50885f9 100644 --- a/drivers/gpu/nvgpu/gv11b/fb_gv11b.c +++ b/drivers/gpu/nvgpu/gv11b/fb_gv11b.c @@ -47,9 +47,6 @@ static int gv11b_fb_fix_page_fault(struct gk20a *g, struct mmu_fault_info *mmfault); -static int gv11b_fb_mmu_invalidate_replay(struct gk20a *g, - u32 invalidate_replay_val); - static void gv11b_init_nvlink_soc_credits(struct gk20a *g) { if (nvgpu_is_bpmp_running(g) && (!nvgpu_platform_is_simulation(g))) { @@ -989,12 +986,12 @@ static int gv11b_fb_replay_or_cancel_faults(struct gk20a *g, * cancel faults so that next time it faults as * replayable faults and channel recovery can be done */ - err = gv11b_fb_mmu_invalidate_replay(g, + err = g->ops.fb.mmu_invalidate_replay(g, fb_mmu_invalidate_replay_cancel_global_f()); } else if (invalidate_replay_val & fb_mmu_invalidate_replay_start_ack_all_f()) { /* pte valid is fixed. replay faulting request */ - err = gv11b_fb_mmu_invalidate_replay(g, + err = g->ops.fb.mmu_invalidate_replay(g, fb_mmu_invalidate_replay_start_ack_all_f()); } @@ -1441,7 +1438,7 @@ bool gv11b_fb_mmu_fault_pending(struct gk20a *g) return false; } -static int gv11b_fb_mmu_invalidate_replay(struct gk20a *g, +int gv11b_fb_mmu_invalidate_replay(struct gk20a *g, u32 invalidate_replay_val) { int err = -ETIMEDOUT; -- cgit v1.2.2