diff options
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/channel_gk20a.c | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.h | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gr_gk20a.c | 8 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gm20b/hal_gm20b.c | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gp106/hal_gp106.c | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/gr_gp10b.c | 8 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/hal_gp10b.c | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gv100/hal_gv100.c | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gv11b/hal_gv11b.c | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/vgpu/gp10b/vgpu_hal_gp10b.c | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/vgpu/gv11b/vgpu_hal_gv11b.c | 1 |
11 files changed, 16 insertions, 10 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index 2c98797d..f9b9c6e6 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |||
@@ -2229,7 +2229,7 @@ void gk20a_channel_semaphore_wakeup(struct gk20a *g, bool post_events) | |||
2229 | struct tsg_gk20a *tsg = | 2229 | struct tsg_gk20a *tsg = |
2230 | &g->fifo.tsg[c->tsgid]; | 2230 | &g->fifo.tsg[c->tsgid]; |
2231 | 2231 | ||
2232 | gk20a_tsg_event_id_post_event(tsg, | 2232 | g->ops.fifo.post_event_id(tsg, |
2233 | NVGPU_EVENT_ID_BLOCKING_SYNC); | 2233 | NVGPU_EVENT_ID_BLOCKING_SYNC); |
2234 | } | 2234 | } |
2235 | } | 2235 | } |
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index d9e3c97d..6f99b3f9 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h | |||
@@ -610,6 +610,7 @@ struct gpu_ops { | |||
610 | void (*deinit_eng_method_buffers)(struct gk20a *g, | 610 | void (*deinit_eng_method_buffers)(struct gk20a *g, |
611 | struct tsg_gk20a *tsg); | 611 | struct tsg_gk20a *tsg); |
612 | u32 (*get_preempt_timeout)(struct gk20a *g); | 612 | u32 (*get_preempt_timeout)(struct gk20a *g); |
613 | void (*post_event_id)(struct tsg_gk20a *tsg, int event_id); | ||
613 | #ifdef CONFIG_TEGRA_GK20A_NVHOST | 614 | #ifdef CONFIG_TEGRA_GK20A_NVHOST |
614 | int (*alloc_syncpt_buf)(struct channel_gk20a *c, | 615 | int (*alloc_syncpt_buf)(struct channel_gk20a *c, |
615 | u32 syncpt_id, struct nvgpu_mem *syncpt_buf); | 616 | u32 syncpt_id, struct nvgpu_mem *syncpt_buf); |
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c index 8f263e67..c64900bd 100644 --- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c | |||
@@ -5274,7 +5274,7 @@ static int gk20a_gr_handle_semaphore_pending(struct gk20a *g, | |||
5274 | struct channel_gk20a *ch = &f->channel[isr_data->chid]; | 5274 | struct channel_gk20a *ch = &f->channel[isr_data->chid]; |
5275 | struct tsg_gk20a *tsg = &g->fifo.tsg[ch->tsgid]; | 5275 | struct tsg_gk20a *tsg = &g->fifo.tsg[ch->tsgid]; |
5276 | 5276 | ||
5277 | gk20a_tsg_event_id_post_event(tsg, | 5277 | g->ops.fifo.post_event_id(tsg, |
5278 | NVGPU_EVENT_ID_GR_SEMAPHORE_WRITE_AWAKEN); | 5278 | NVGPU_EVENT_ID_GR_SEMAPHORE_WRITE_AWAKEN); |
5279 | 5279 | ||
5280 | nvgpu_cond_broadcast(&ch->semaphore_wq); | 5280 | nvgpu_cond_broadcast(&ch->semaphore_wq); |
@@ -5818,14 +5818,12 @@ static int gk20a_gr_post_bpt_events(struct gk20a *g, struct channel_gk20a *ch, | |||
5818 | if (global_esr & gr_gpc0_tpc0_sm_hww_global_esr_bpt_int_pending_f()) { | 5818 | if (global_esr & gr_gpc0_tpc0_sm_hww_global_esr_bpt_int_pending_f()) { |
5819 | struct tsg_gk20a *tsg = &g->fifo.tsg[ch->tsgid]; | 5819 | struct tsg_gk20a *tsg = &g->fifo.tsg[ch->tsgid]; |
5820 | 5820 | ||
5821 | gk20a_tsg_event_id_post_event(tsg, | 5821 | g->ops.fifo.post_event_id(tsg, NVGPU_EVENT_ID_BPT_INT); |
5822 | NVGPU_EVENT_ID_BPT_INT); | ||
5823 | } | 5822 | } |
5824 | if (global_esr & gr_gpc0_tpc0_sm_hww_global_esr_bpt_pause_pending_f()) { | 5823 | if (global_esr & gr_gpc0_tpc0_sm_hww_global_esr_bpt_pause_pending_f()) { |
5825 | struct tsg_gk20a *tsg = &g->fifo.tsg[ch->tsgid]; | 5824 | struct tsg_gk20a *tsg = &g->fifo.tsg[ch->tsgid]; |
5826 | 5825 | ||
5827 | gk20a_tsg_event_id_post_event(tsg, | 5826 | g->ops.fifo.post_event_id(tsg, NVGPU_EVENT_ID_BPT_PAUSE); |
5828 | NVGPU_EVENT_ID_BPT_PAUSE); | ||
5829 | } | 5827 | } |
5830 | 5828 | ||
5831 | return 0; | 5829 | return 0; |
diff --git a/drivers/gpu/nvgpu/gm20b/hal_gm20b.c b/drivers/gpu/nvgpu/gm20b/hal_gm20b.c index 2d53a926..e390e4dd 100644 --- a/drivers/gpu/nvgpu/gm20b/hal_gm20b.c +++ b/drivers/gpu/nvgpu/gm20b/hal_gm20b.c | |||
@@ -431,6 +431,7 @@ static const struct gpu_ops gm20b_ops = { | |||
431 | .handle_pbdma_intr_1 = gk20a_fifo_handle_pbdma_intr_1, | 431 | .handle_pbdma_intr_1 = gk20a_fifo_handle_pbdma_intr_1, |
432 | .tsg_bind_channel = gk20a_tsg_bind_channel, | 432 | .tsg_bind_channel = gk20a_tsg_bind_channel, |
433 | .tsg_unbind_channel = gk20a_fifo_tsg_unbind_channel, | 433 | .tsg_unbind_channel = gk20a_fifo_tsg_unbind_channel, |
434 | .post_event_id = gk20a_tsg_event_id_post_event, | ||
434 | #ifdef CONFIG_TEGRA_GK20A_NVHOST | 435 | #ifdef CONFIG_TEGRA_GK20A_NVHOST |
435 | .alloc_syncpt_buf = gk20a_fifo_alloc_syncpt_buf, | 436 | .alloc_syncpt_buf = gk20a_fifo_alloc_syncpt_buf, |
436 | .free_syncpt_buf = gk20a_fifo_free_syncpt_buf, | 437 | .free_syncpt_buf = gk20a_fifo_free_syncpt_buf, |
diff --git a/drivers/gpu/nvgpu/gp106/hal_gp106.c b/drivers/gpu/nvgpu/gp106/hal_gp106.c index a0068a6f..82ef0461 100644 --- a/drivers/gpu/nvgpu/gp106/hal_gp106.c +++ b/drivers/gpu/nvgpu/gp106/hal_gp106.c | |||
@@ -491,6 +491,7 @@ static const struct gpu_ops gp106_ops = { | |||
491 | .handle_pbdma_intr_1 = gk20a_fifo_handle_pbdma_intr_1, | 491 | .handle_pbdma_intr_1 = gk20a_fifo_handle_pbdma_intr_1, |
492 | .tsg_bind_channel = gk20a_tsg_bind_channel, | 492 | .tsg_bind_channel = gk20a_tsg_bind_channel, |
493 | .tsg_unbind_channel = gk20a_fifo_tsg_unbind_channel, | 493 | .tsg_unbind_channel = gk20a_fifo_tsg_unbind_channel, |
494 | .post_event_id = gk20a_tsg_event_id_post_event, | ||
494 | #ifdef CONFIG_TEGRA_GK20A_NVHOST | 495 | #ifdef CONFIG_TEGRA_GK20A_NVHOST |
495 | .alloc_syncpt_buf = gk20a_fifo_alloc_syncpt_buf, | 496 | .alloc_syncpt_buf = gk20a_fifo_alloc_syncpt_buf, |
496 | .free_syncpt_buf = gk20a_fifo_free_syncpt_buf, | 497 | .free_syncpt_buf = gk20a_fifo_free_syncpt_buf, |
diff --git a/drivers/gpu/nvgpu/gp10b/gr_gp10b.c b/drivers/gpu/nvgpu/gp10b/gr_gp10b.c index 17685f59..8cbda409 100644 --- a/drivers/gpu/nvgpu/gp10b/gr_gp10b.c +++ b/drivers/gpu/nvgpu/gp10b/gr_gp10b.c | |||
@@ -1814,8 +1814,8 @@ int gr_gp10b_set_cilp_preempt_pending(struct gk20a *g, | |||
1814 | 1814 | ||
1815 | tsg = &g->fifo.tsg[fault_ch->tsgid]; | 1815 | tsg = &g->fifo.tsg[fault_ch->tsgid]; |
1816 | 1816 | ||
1817 | gk20a_tsg_event_id_post_event(tsg, | 1817 | g->ops.fifo.post_event_id(tsg, |
1818 | NVGPU_EVENT_ID_CILP_PREEMPTION_STARTED); | 1818 | NVGPU_EVENT_ID_CILP_PREEMPTION_STARTED); |
1819 | 1819 | ||
1820 | return 0; | 1820 | return 0; |
1821 | } | 1821 | } |
@@ -2036,8 +2036,8 @@ int gr_gp10b_handle_fecs_error(struct gk20a *g, | |||
2036 | 2036 | ||
2037 | tsg = &g->fifo.tsg[ch->tsgid]; | 2037 | tsg = &g->fifo.tsg[ch->tsgid]; |
2038 | 2038 | ||
2039 | gk20a_tsg_event_id_post_event(tsg, | 2039 | g->ops.fifo.post_event_id(tsg, |
2040 | NVGPU_EVENT_ID_CILP_PREEMPTION_COMPLETE); | 2040 | NVGPU_EVENT_ID_CILP_PREEMPTION_COMPLETE); |
2041 | 2041 | ||
2042 | gk20a_channel_put(ch); | 2042 | gk20a_channel_put(ch); |
2043 | } | 2043 | } |
diff --git a/drivers/gpu/nvgpu/gp10b/hal_gp10b.c b/drivers/gpu/nvgpu/gp10b/hal_gp10b.c index 65fdf714..783dfcdd 100644 --- a/drivers/gpu/nvgpu/gp10b/hal_gp10b.c +++ b/drivers/gpu/nvgpu/gp10b/hal_gp10b.c | |||
@@ -464,6 +464,7 @@ static const struct gpu_ops gp10b_ops = { | |||
464 | .handle_pbdma_intr_1 = gk20a_fifo_handle_pbdma_intr_1, | 464 | .handle_pbdma_intr_1 = gk20a_fifo_handle_pbdma_intr_1, |
465 | .tsg_bind_channel = gk20a_tsg_bind_channel, | 465 | .tsg_bind_channel = gk20a_tsg_bind_channel, |
466 | .tsg_unbind_channel = gk20a_fifo_tsg_unbind_channel, | 466 | .tsg_unbind_channel = gk20a_fifo_tsg_unbind_channel, |
467 | .post_event_id = gk20a_tsg_event_id_post_event, | ||
467 | #ifdef CONFIG_TEGRA_GK20A_NVHOST | 468 | #ifdef CONFIG_TEGRA_GK20A_NVHOST |
468 | .alloc_syncpt_buf = gk20a_fifo_alloc_syncpt_buf, | 469 | .alloc_syncpt_buf = gk20a_fifo_alloc_syncpt_buf, |
469 | .free_syncpt_buf = gk20a_fifo_free_syncpt_buf, | 470 | .free_syncpt_buf = gk20a_fifo_free_syncpt_buf, |
diff --git a/drivers/gpu/nvgpu/gv100/hal_gv100.c b/drivers/gpu/nvgpu/gv100/hal_gv100.c index 6598d7f6..677f2a89 100644 --- a/drivers/gpu/nvgpu/gv100/hal_gv100.c +++ b/drivers/gpu/nvgpu/gv100/hal_gv100.c | |||
@@ -506,6 +506,7 @@ static const struct gpu_ops gv100_ops = { | |||
506 | gv11b_fifo_deinit_eng_method_buffers, | 506 | gv11b_fifo_deinit_eng_method_buffers, |
507 | .tsg_bind_channel = gk20a_tsg_bind_channel, | 507 | .tsg_bind_channel = gk20a_tsg_bind_channel, |
508 | .tsg_unbind_channel = gk20a_fifo_tsg_unbind_channel, | 508 | .tsg_unbind_channel = gk20a_fifo_tsg_unbind_channel, |
509 | .post_event_id = gk20a_tsg_event_id_post_event, | ||
509 | #ifdef CONFIG_TEGRA_GK20A_NVHOST | 510 | #ifdef CONFIG_TEGRA_GK20A_NVHOST |
510 | .alloc_syncpt_buf = gv11b_fifo_alloc_syncpt_buf, | 511 | .alloc_syncpt_buf = gv11b_fifo_alloc_syncpt_buf, |
511 | .free_syncpt_buf = gv11b_fifo_free_syncpt_buf, | 512 | .free_syncpt_buf = gv11b_fifo_free_syncpt_buf, |
diff --git a/drivers/gpu/nvgpu/gv11b/hal_gv11b.c b/drivers/gpu/nvgpu/gv11b/hal_gv11b.c index 700dc7fc..d55d51ba 100644 --- a/drivers/gpu/nvgpu/gv11b/hal_gv11b.c +++ b/drivers/gpu/nvgpu/gv11b/hal_gv11b.c | |||
@@ -522,6 +522,7 @@ static const struct gpu_ops gv11b_ops = { | |||
522 | gv11b_fifo_deinit_eng_method_buffers, | 522 | gv11b_fifo_deinit_eng_method_buffers, |
523 | .tsg_bind_channel = gk20a_tsg_bind_channel, | 523 | .tsg_bind_channel = gk20a_tsg_bind_channel, |
524 | .tsg_unbind_channel = gk20a_fifo_tsg_unbind_channel, | 524 | .tsg_unbind_channel = gk20a_fifo_tsg_unbind_channel, |
525 | .post_event_id = gk20a_tsg_event_id_post_event, | ||
525 | #ifdef CONFIG_TEGRA_GK20A_NVHOST | 526 | #ifdef CONFIG_TEGRA_GK20A_NVHOST |
526 | .alloc_syncpt_buf = gv11b_fifo_alloc_syncpt_buf, | 527 | .alloc_syncpt_buf = gv11b_fifo_alloc_syncpt_buf, |
527 | .free_syncpt_buf = gv11b_fifo_free_syncpt_buf, | 528 | .free_syncpt_buf = gv11b_fifo_free_syncpt_buf, |
diff --git a/drivers/gpu/nvgpu/vgpu/gp10b/vgpu_hal_gp10b.c b/drivers/gpu/nvgpu/vgpu/gp10b/vgpu_hal_gp10b.c index f1ced1c8..bfdd0788 100644 --- a/drivers/gpu/nvgpu/vgpu/gp10b/vgpu_hal_gp10b.c +++ b/drivers/gpu/nvgpu/vgpu/gp10b/vgpu_hal_gp10b.c | |||
@@ -340,6 +340,7 @@ static const struct gpu_ops vgpu_gp10b_ops = { | |||
340 | .handle_pbdma_intr_1 = gk20a_fifo_handle_pbdma_intr_1, | 340 | .handle_pbdma_intr_1 = gk20a_fifo_handle_pbdma_intr_1, |
341 | .tsg_bind_channel = vgpu_tsg_bind_channel, | 341 | .tsg_bind_channel = vgpu_tsg_bind_channel, |
342 | .tsg_unbind_channel = vgpu_tsg_unbind_channel, | 342 | .tsg_unbind_channel = vgpu_tsg_unbind_channel, |
343 | .post_event_id = gk20a_tsg_event_id_post_event, | ||
343 | #ifdef CONFIG_TEGRA_GK20A_NVHOST | 344 | #ifdef CONFIG_TEGRA_GK20A_NVHOST |
344 | .alloc_syncpt_buf = gk20a_fifo_alloc_syncpt_buf, | 345 | .alloc_syncpt_buf = gk20a_fifo_alloc_syncpt_buf, |
345 | .free_syncpt_buf = gk20a_fifo_free_syncpt_buf, | 346 | .free_syncpt_buf = gk20a_fifo_free_syncpt_buf, |
diff --git a/drivers/gpu/nvgpu/vgpu/gv11b/vgpu_hal_gv11b.c b/drivers/gpu/nvgpu/vgpu/gv11b/vgpu_hal_gv11b.c index 76f7b389..b4e03ecd 100644 --- a/drivers/gpu/nvgpu/vgpu/gv11b/vgpu_hal_gv11b.c +++ b/drivers/gpu/nvgpu/vgpu/gv11b/vgpu_hal_gv11b.c | |||
@@ -383,6 +383,7 @@ static const struct gpu_ops vgpu_gv11b_ops = { | |||
383 | gv11b_fifo_deinit_eng_method_buffers, | 383 | gv11b_fifo_deinit_eng_method_buffers, |
384 | .tsg_bind_channel = vgpu_gv11b_tsg_bind_channel, | 384 | .tsg_bind_channel = vgpu_gv11b_tsg_bind_channel, |
385 | .tsg_unbind_channel = vgpu_tsg_unbind_channel, | 385 | .tsg_unbind_channel = vgpu_tsg_unbind_channel, |
386 | .post_event_id = gk20a_tsg_event_id_post_event, | ||
386 | #ifdef CONFIG_TEGRA_GK20A_NVHOST | 387 | #ifdef CONFIG_TEGRA_GK20A_NVHOST |
387 | .alloc_syncpt_buf = vgpu_gv11b_fifo_alloc_syncpt_buf, | 388 | .alloc_syncpt_buf = vgpu_gv11b_fifo_alloc_syncpt_buf, |
388 | .free_syncpt_buf = gv11b_fifo_free_syncpt_buf, | 389 | .free_syncpt_buf = gv11b_fifo_free_syncpt_buf, |