gpu: nvgpu: move fb interrupt handling to fb intr sub-unit

Moved fb interrupt handling related code to fb intr sub-unit.

Moved following hals from fb hal to fb intr hal and renamed to:
void (*enable)(struct gk20a *g);
void (*disable)(struct gk20a *g);
void (*isr)(struct gk20a *g);

gk20a_readl/writel are replaced with nvgpu_read/writel.
Hals are populated with new function names and code is modified
to call new hals.

Moved ecc interrupt to gv11b_fb_intr_handle_ecc in a separate file:
fb_intr_ecc_gv11b.c/h

JIRA NVGPU-2034

Change-Id: I80c7110c902c4e082561cf7cbe65c20eb9acb661
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/2090070
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Seshendra Gadagottu
2019-04-04 12:04:16 -07:00
committed by mobile promotions
parent a447c2b3b3
commit 9c465d5fd5
24 changed files with 760 additions and 456 deletions

View File

@@ -47,6 +47,7 @@
#include "hal/fb/fb_gm20b.h"
#include "hal/fb/fb_gv11b.h"
#include "hal/fifo/ramin_gk20a.h"
#include "hal/fb/intr/fb_intr_gv11b.h"
#include "hal/fifo/ramin_gm20b.h"
#include "hal/fifo/ramin_gp10b.h"
@@ -133,7 +134,7 @@ static int init_mm(struct unit_module *m, struct gk20a *g)
g->ops.mm.init_mm_setup_hw = gv11b_init_mm_setup_hw;
g->ops.mm.l2_flush = gv11b_mm_l2_flush;
g->ops.fb.init_hw = gv11b_fb_init_hw;
g->ops.fb.enable_hub_intr = gv11b_fb_enable_hub_intr;
g->ops.fb.intr.enable = gv11b_fb_intr_enable;
g->ops.fb.fault_buf_configure_hw = gv11b_fb_fault_buf_configure_hw;
g->ops.fb.read_mmu_fault_buffer_size =
fb_gv11b_read_mmu_fault_buffer_size;