diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gv11b/fifo_gv11b.c')
-rw-r--r-- | drivers/gpu/nvgpu/gv11b/fifo_gv11b.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c b/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c index bc413a9e..b9276e09 100644 --- a/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c +++ b/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c | |||
@@ -19,6 +19,8 @@ | |||
19 | #include "gp10b/fifo_gp10b.h" | 19 | #include "gp10b/fifo_gp10b.h" |
20 | #include "hw_pbdma_gv11b.h" | 20 | #include "hw_pbdma_gv11b.h" |
21 | #include "fifo_gv11b.h" | 21 | #include "fifo_gv11b.h" |
22 | #include "subctx_gv11b.h" | ||
23 | #include "gr_gv11b.h" | ||
22 | #include "hw_fifo_gv11b.h" | 24 | #include "hw_fifo_gv11b.h" |
23 | #include "hw_ram_gv11b.h" | 25 | #include "hw_ram_gv11b.h" |
24 | #include "hw_ccsr_gv11b.h" | 26 | #include "hw_ccsr_gv11b.h" |
@@ -200,6 +202,15 @@ static void gv11b_userd_gp_put(struct gk20a *g, struct channel_gk20a *c) | |||
200 | 202 | ||
201 | } | 203 | } |
202 | 204 | ||
205 | static void channel_gv11b_unbind(struct channel_gk20a *ch) | ||
206 | { | ||
207 | gk20a_dbg_fn(""); | ||
208 | |||
209 | gv11b_free_subctx_header(ch); | ||
210 | |||
211 | channel_gk20a_unbind(ch); | ||
212 | |||
213 | } | ||
203 | 214 | ||
204 | static u32 gv11b_fifo_get_num_fifos(struct gk20a *g) | 215 | static u32 gv11b_fifo_get_num_fifos(struct gk20a *g) |
205 | { | 216 | { |
@@ -218,4 +229,5 @@ void gv11b_init_fifo(struct gpu_ops *gops) | |||
218 | gops->fifo.userd_gp_get = gv11b_userd_gp_get; | 229 | gops->fifo.userd_gp_get = gv11b_userd_gp_get; |
219 | gops->fifo.userd_gp_put = gv11b_userd_gp_put; | 230 | gops->fifo.userd_gp_put = gv11b_userd_gp_put; |
220 | gops->fifo.setup_ramfc = channel_gv11b_setup_ramfc; | 231 | gops->fifo.setup_ramfc = channel_gv11b_setup_ramfc; |
232 | gops->fifo.unbind_channel = channel_gv11b_unbind; | ||
221 | } | 233 | } |