diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.h | 3 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gr_gk20a.c | 8 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gr_gk20a.h | 3 |
3 files changed, 11 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index a230e98a..d8687a37 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h | |||
@@ -310,6 +310,9 @@ struct gpu_ops { | |||
310 | int (*init_sw_veid_bundle)(struct gk20a *g); | 310 | int (*init_sw_veid_bundle)(struct gk20a *g); |
311 | void (*program_zcull_mapping)(struct gk20a *g, | 311 | void (*program_zcull_mapping)(struct gk20a *g, |
312 | u32 zcull_alloc_num, u32 *zcull_map_tiles); | 312 | u32 zcull_alloc_num, u32 *zcull_map_tiles); |
313 | int (*commit_global_timeslice)(struct gk20a *g, | ||
314 | struct channel_gk20a *c, bool patch); | ||
315 | |||
313 | } gr; | 316 | } gr; |
314 | const char *name; | 317 | const char *name; |
315 | struct { | 318 | struct { |
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c index ecc67167..84b0ed6e 100644 --- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c | |||
@@ -954,7 +954,8 @@ static void gr_gk20a_commit_global_bundle_cb(struct gk20a *g, | |||
954 | 954 | ||
955 | } | 955 | } |
956 | 956 | ||
957 | static int gr_gk20a_commit_global_timeslice(struct gk20a *g, struct channel_gk20a *c, bool patch) | 957 | int gr_gk20a_commit_global_timeslice(struct gk20a *g, struct channel_gk20a *c, |
958 | bool patch) | ||
958 | { | 959 | { |
959 | struct gr_gk20a *gr = &g->gr; | 960 | struct gr_gk20a *gr = &g->gr; |
960 | struct channel_ctx_gk20a *ch_ctx = NULL; | 961 | struct channel_ctx_gk20a *ch_ctx = NULL; |
@@ -1607,7 +1608,7 @@ static int gr_gk20a_init_golden_ctx_image(struct gk20a *g, | |||
1607 | goto clean_up; | 1608 | goto clean_up; |
1608 | 1609 | ||
1609 | /* override a few ctx state registers */ | 1610 | /* override a few ctx state registers */ |
1610 | gr_gk20a_commit_global_timeslice(g, c, false); | 1611 | g->ops.gr.commit_global_timeslice(g, c, false); |
1611 | 1612 | ||
1612 | /* floorsweep anything left */ | 1613 | /* floorsweep anything left */ |
1613 | g->ops.gr.init_fs_state(g); | 1614 | g->ops.gr.init_fs_state(g); |
@@ -4666,7 +4667,7 @@ static int gk20a_init_gr_setup_hw(struct gk20a *g) | |||
4666 | gr_fe_go_idle_timeout_count_disabled_f()); | 4667 | gr_fe_go_idle_timeout_count_disabled_f()); |
4667 | 4668 | ||
4668 | /* override a few ctx state registers */ | 4669 | /* override a few ctx state registers */ |
4669 | gr_gk20a_commit_global_timeslice(g, NULL, false); | 4670 | g->ops.gr.commit_global_timeslice(g, NULL, false); |
4670 | 4671 | ||
4671 | /* floorsweep anything left */ | 4672 | /* floorsweep anything left */ |
4672 | err = g->ops.gr.init_fs_state(g); | 4673 | err = g->ops.gr.init_fs_state(g); |
@@ -9119,4 +9120,5 @@ void gk20a_init_gr_ops(struct gpu_ops *gops) | |||
9119 | gr_gk20a_split_ltc_broadcast_addr_stub; | 9120 | gr_gk20a_split_ltc_broadcast_addr_stub; |
9120 | gops->gr.setup_rop_mapping = gr_gk20a_setup_rop_mapping; | 9121 | gops->gr.setup_rop_mapping = gr_gk20a_setup_rop_mapping; |
9121 | gops->gr.program_zcull_mapping = gr_gk20a_program_zcull_mapping; | 9122 | gops->gr.program_zcull_mapping = gr_gk20a_program_zcull_mapping; |
9123 | gops->gr.commit_global_timeslice = gr_gk20a_commit_global_timeslice; | ||
9122 | } | 9124 | } |
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.h b/drivers/gpu/nvgpu/gk20a/gr_gk20a.h index a0179b0d..e20207c5 100644 --- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.h | |||
@@ -659,6 +659,9 @@ int gr_gk20a_resume_contexts(struct gk20a *g, | |||
659 | int *ctx_resident_ch_fd); | 659 | int *ctx_resident_ch_fd); |
660 | void gk20a_gr_enable_gpc_exceptions(struct gk20a *g); | 660 | void gk20a_gr_enable_gpc_exceptions(struct gk20a *g); |
661 | 661 | ||
662 | int gr_gk20a_commit_global_timeslice(struct gk20a *g, | ||
663 | struct channel_gk20a *c, bool patch); | ||
664 | |||
662 | static inline const char *gr_gk20a_graphics_preempt_mode_name(u32 graphics_preempt_mode) | 665 | static inline const char *gr_gk20a_graphics_preempt_mode_name(u32 graphics_preempt_mode) |
663 | { | 666 | { |
664 | switch (graphics_preempt_mode) { | 667 | switch (graphics_preempt_mode) { |