diff options
author | Nitin Kumbhar <nkumbhar@nvidia.com> | 2018-05-30 05:02:41 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-06-15 08:03:58 -0400 |
commit | 8963318b140d8ad7a98281bf083c23f08735c57e (patch) | |
tree | ccdf9778c56254b376bc2bbe1cfa7f48fe68b61e /drivers/gpu/nvgpu/gv11b | |
parent | 000b10782deb1ff854fb0a1d0224ff218bfe25ae (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.h | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gv11b/hal_gv11b.c | 1 |
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, | |||
88 | void gr_gv11b_program_zcull_mapping(struct gk20a *g, u32 zcull_num_entries, | 88 | void gr_gv11b_program_zcull_mapping(struct gk20a *g, u32 zcull_num_entries, |
89 | u32 *zcull_map_tiles); | 89 | u32 *zcull_map_tiles); |
90 | void gr_gv11b_create_sysfs(struct gk20a *g); | 90 | void gr_gv11b_create_sysfs(struct gk20a *g); |
91 | void gr_gv11b_remove_sysfs(struct gk20a *g); | ||
91 | 92 | ||
92 | bool gr_gv11b_is_valid_class(struct gk20a *g, u32 class_num); | 93 | bool gr_gv11b_is_valid_class(struct gk20a *g, u32 class_num); |
93 | bool gr_gv11b_is_valid_gfx_class(struct gk20a *g, u32 class_num); | 94 | bool 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, |