summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c
index d87b8661..bf467210 100644
--- a/drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/channel_sync_gk20a.c
@@ -646,7 +646,18 @@ static int gk20a_channel_semaphore_incr_user(
646 646
647static void gk20a_channel_semaphore_set_min_eq_max(struct gk20a_channel_sync *s) 647static void gk20a_channel_semaphore_set_min_eq_max(struct gk20a_channel_sync *s)
648{ 648{
649 /* Nothing to do. */ 649 struct gk20a_channel_semaphore *sp =
650 container_of(s, struct gk20a_channel_semaphore, ops);
651 struct channel_gk20a *c = sp->c;
652 bool updated;
653
654 if (!c->hw_sema)
655 return;
656
657 updated = nvgpu_semaphore_reset(c->hw_sema);
658
659 if (updated)
660 nvgpu_cond_broadcast_interruptible(&c->semaphore_wq);
650} 661}
651 662
652static void gk20a_channel_semaphore_set_safe_state(struct gk20a_channel_sync *s) 663static void gk20a_channel_semaphore_set_safe_state(struct gk20a_channel_sync *s)