diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/channel_gk20a.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index 7cfb3c24..1570e12c 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |||
@@ -1416,6 +1416,18 @@ void gk20a_channel_update(struct channel_gk20a *c, int nr_completed) | |||
1416 | gk20a_idle(c->g->dev); | 1416 | gk20a_idle(c->g->dev); |
1417 | } | 1417 | } |
1418 | 1418 | ||
1419 | void add_wait_cmd(u32 *ptr, u32 id, u32 thresh) | ||
1420 | { | ||
1421 | /* syncpoint_a */ | ||
1422 | ptr[0] = 0x2001001C; | ||
1423 | /* payload */ | ||
1424 | ptr[1] = thresh; | ||
1425 | /* syncpoint_b */ | ||
1426 | ptr[2] = 0x2001001D; | ||
1427 | /* syncpt_id, switch_en, wait */ | ||
1428 | ptr[3] = (id << 8) | 0x10; | ||
1429 | } | ||
1430 | |||
1419 | static int gk20a_submit_channel_gpfifo(struct channel_gk20a *c, | 1431 | static int gk20a_submit_channel_gpfifo(struct channel_gk20a *c, |
1420 | struct nvhost_gpfifo *gpfifo, | 1432 | struct nvhost_gpfifo *gpfifo, |
1421 | u32 num_entries, | 1433 | u32 num_entries, |