diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gm20b/fifo_gm20b.c')
-rw-r--r-- | drivers/gpu/nvgpu/gm20b/fifo_gm20b.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c b/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c index 07ad322a..a8934035 100644 --- a/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c +++ b/drivers/gpu/nvgpu/gm20b/fifo_gm20b.c | |||
@@ -32,7 +32,6 @@ static void channel_gm20b_bind(struct channel_gk20a *c) | |||
32 | gk20a_dbg_info("bind channel %d inst ptr 0x%08x", | 32 | gk20a_dbg_info("bind channel %d inst ptr 0x%08x", |
33 | c->hw_chid, inst_ptr); | 33 | c->hw_chid, inst_ptr); |
34 | 34 | ||
35 | c->bound = true; | ||
36 | 35 | ||
37 | gk20a_writel(g, ccsr_channel_inst_r(c->hw_chid), | 36 | gk20a_writel(g, ccsr_channel_inst_r(c->hw_chid), |
38 | ccsr_channel_inst_ptr_f(inst_ptr) | | 37 | ccsr_channel_inst_ptr_f(inst_ptr) | |
@@ -45,6 +44,8 @@ static void channel_gm20b_bind(struct channel_gk20a *c) | |||
45 | (gk20a_readl(g, ccsr_channel_r(c->hw_chid)) & | 44 | (gk20a_readl(g, ccsr_channel_r(c->hw_chid)) & |
46 | ~ccsr_channel_enable_set_f(~0)) | | 45 | ~ccsr_channel_enable_set_f(~0)) | |
47 | ccsr_channel_enable_set_true_f()); | 46 | ccsr_channel_enable_set_true_f()); |
47 | wmb(); | ||
48 | atomic_set(&c->bound, true); | ||
48 | } | 49 | } |
49 | 50 | ||
50 | static inline u32 gm20b_engine_id_to_mmu_id(struct gk20a *g, u32 engine_id) | 51 | static inline u32 gm20b_engine_id_to_mmu_id(struct gk20a *g, u32 engine_id) |