summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gv11b
diff options
context:
space:
mode:
authorNitin Kumbhar <nkumbhar@nvidia.com>2018-05-30 05:02:41 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2018-06-15 08:03:58 -0400
commit8963318b140d8ad7a98281bf083c23f08735c57e (patch)
treeccdf9778c56254b376bc2bbe1cfa7f48fe68b61e /drivers/gpu/nvgpu/gv11b
parent000b10782deb1ff854fb0a1d0224ff218bfe25ae (diff)
gpu: nvgpu: add remove_gr_sysfs gpu op
Add remove_gr_sys() op to gpu_ops to reverse steps done in create_gr_sysfs(). Make gv11b_tegra_remove() specific to gv11b instead to properly remove sysfs nodes. This also helps in having gv11b specific remove steps. Also, update platform remove function of dGPU i.e. nvgpu_pci_tegra_remove() to remove sysfs nodes. This adds parity with iGPU platform remove. Bug 1987855 Change-Id: Ibbaffac5c24346709347f86444a951461894354d Signed-off-by: Nitin Kumbhar <nkumbhar@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1735987 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gv11b')
-rw-r--r--drivers/gpu/nvgpu/gv11b/gr_gv11b.h1
-rw-r--r--drivers/gpu/nvgpu/gv11b/hal_gv11b.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/gr_gv11b.h b/drivers/gpu/nvgpu/gv11b/gr_gv11b.h
index fb4c8b69..a8dbd3a8 100644
--- a/drivers/gpu/nvgpu/gv11b/gr_gv11b.h
+++ b/drivers/gpu/nvgpu/gv11b/gr_gv11b.h
@@ -88,6 +88,7 @@ int gr_gv11b_alloc_buffer(struct vm_gk20a *vm, size_t size,
88void gr_gv11b_program_zcull_mapping(struct gk20a *g, u32 zcull_num_entries, 88void gr_gv11b_program_zcull_mapping(struct gk20a *g, u32 zcull_num_entries,
89 u32 *zcull_map_tiles); 89 u32 *zcull_map_tiles);
90void gr_gv11b_create_sysfs(struct gk20a *g); 90void gr_gv11b_create_sysfs(struct gk20a *g);
91void gr_gv11b_remove_sysfs(struct gk20a *g);
91 92
92bool gr_gv11b_is_valid_class(struct gk20a *g, u32 class_num); 93bool gr_gv11b_is_valid_class(struct gk20a *g, u32 class_num);
93bool gr_gv11b_is_valid_gfx_class(struct gk20a *g, u32 class_num); 94bool gr_gv11b_is_valid_gfx_class(struct gk20a *g, u32 class_num);
diff --git a/drivers/gpu/nvgpu/gv11b/hal_gv11b.c b/drivers/gpu/nvgpu/gv11b/hal_gv11b.c
index 84d8a811..1a7f0874 100644
--- a/drivers/gpu/nvgpu/gv11b/hal_gv11b.c
+++ b/drivers/gpu/nvgpu/gv11b/hal_gv11b.c
@@ -370,6 +370,7 @@ static const struct gpu_ops gv11b_ops = {
370 .set_bes_crop_debug4 = gr_gp10b_set_bes_crop_debug4, 370 .set_bes_crop_debug4 = gr_gp10b_set_bes_crop_debug4,
371#ifdef CONFIG_SYSFS 371#ifdef CONFIG_SYSFS
372 .create_gr_sysfs = gr_gv11b_create_sysfs, 372 .create_gr_sysfs = gr_gv11b_create_sysfs,
373 .remove_gr_sysfs = gr_gv11b_remove_sysfs,
373#endif 374#endif
374 .set_ctxsw_preemption_mode = gr_gv11b_set_ctxsw_preemption_mode, 375 .set_ctxsw_preemption_mode = gr_gv11b_set_ctxsw_preemption_mode,
375 .is_etpc_addr = gv11b_gr_pri_is_etpc_addr, 376 .is_etpc_addr = gv11b_gr_pri_is_etpc_addr,