summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a
diff options
context:
space:
mode:
authorDeepak Nibade <dnibade@nvidia.com>2018-06-08 00:01:58 -0400
committerTejal Kudav <tkudav@nvidia.com>2018-06-14 09:44:08 -0400
commit9c5bcbe6f2b71592c3a07d5884b68ad10fdffffd (patch)
tree2d42e8c7de8bca04ea852296e51c2b4b97293002 /drivers/gpu/nvgpu/gk20a
parent4e66f214fc03f088b13e1f1cdc097df67dd2c062 (diff)
gpu: nvgpu: Add HALs for mmu_fault setup and info
Add below HALs to setup mmu_fault configuration registers and to read information registers and set them on Volta gops.fb.write_mmu_fault_buffer_lo_hi() gops.fb.write_mmu_fault_buffer_get() gops.fb.write_mmu_fault_buffer_size() gops.fb.write_mmu_fault_status() gops.fb.read_mmu_fault_buffer_get() gops.fb.read_mmu_fault_buffer_put() gops.fb.read_mmu_fault_buffer_size() gops.fb.read_mmu_fault_addr_lo_hi() gops.fb.read_mmu_fault_inst_lo_hi() gops.fb.read_mmu_fault_info() gops.fb.read_mmu_fault_status() Jira NVGPUT-13 Change-Id: Ia99568ff905ada3c035efb4565613576012f5bef Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1744063 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h
index be8917c7..bc4bd682 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.h
@@ -528,6 +528,22 @@ struct gpu_ops {
528 unsigned int intr_type); 528 unsigned int intr_type);
529 int (*init_fbpa)(struct gk20a *g); 529 int (*init_fbpa)(struct gk20a *g);
530 void (*fbpa_isr)(struct gk20a *g); 530 void (*fbpa_isr)(struct gk20a *g);
531 void (*write_mmu_fault_buffer_lo_hi)(struct gk20a *g, u32 index,
532 u32 addr_lo, u32 addr_hi);
533 void (*write_mmu_fault_buffer_get)(struct gk20a *g, u32 index,
534 u32 reg_val);
535 void (*write_mmu_fault_buffer_size)(struct gk20a *g, u32 index,
536 u32 reg_val);
537 void (*write_mmu_fault_status)(struct gk20a *g, u32 reg_val);
538 u32 (*read_mmu_fault_buffer_get)(struct gk20a *g, u32 index);
539 u32 (*read_mmu_fault_buffer_put)(struct gk20a *g, u32 index);
540 u32 (*read_mmu_fault_buffer_size)(struct gk20a *g, u32 index);
541 void (*read_mmu_fault_addr_lo_hi)(struct gk20a *g,
542 u32 *addr_lo, u32 *addr_hi);
543 void (*read_mmu_fault_inst_lo_hi)(struct gk20a *g,
544 u32 *inst_lo, u32 *inst_hi);
545 u32 (*read_mmu_fault_info)(struct gk20a *g);
546 u32 (*read_mmu_fault_status)(struct gk20a *g);
531 } fb; 547 } fb;
532 struct { 548 struct {
533 void (*slcg_bus_load_gating_prod)(struct gk20a *g, bool prod); 549 void (*slcg_bus_load_gating_prod)(struct gk20a *g, bool prod);