diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/fifo_gk20a.c | 5 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/fifo_gk20a.h | 3 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.h | 1 |
3 files changed, 7 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c index 078a7158..04695d11 100644 --- a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c | |||
@@ -279,7 +279,7 @@ int gk20a_fifo_engine_enum_from_type(struct gk20a *g, u32 engine_type, | |||
279 | return ret; | 279 | return ret; |
280 | } | 280 | } |
281 | 281 | ||
282 | static int init_engine_info(struct fifo_gk20a *f) | 282 | int gk20a_fifo_init_engine_info(struct fifo_gk20a *f) |
283 | { | 283 | { |
284 | struct gk20a *g = f->g; | 284 | struct gk20a *g = f->g; |
285 | struct device *d = dev_from_gk20a(g); | 285 | struct device *d = dev_from_gk20a(g); |
@@ -796,7 +796,7 @@ static int gk20a_init_fifo_setup_sw(struct gk20a *g) | |||
796 | for (i = 0; i < f->num_pbdma; ++i) | 796 | for (i = 0; i < f->num_pbdma; ++i) |
797 | f->pbdma_map[i] = gk20a_readl(g, fifo_pbdma_map_r(i)); | 797 | f->pbdma_map[i] = gk20a_readl(g, fifo_pbdma_map_r(i)); |
798 | 798 | ||
799 | init_engine_info(f); | 799 | g->ops.fifo.init_engine_info(f); |
800 | 800 | ||
801 | init_runlist(g, f); | 801 | init_runlist(g, f); |
802 | 802 | ||
@@ -3082,4 +3082,5 @@ void gk20a_init_fifo(struct gpu_ops *gops) | |||
3082 | /* gk20a doesn't support device_info_data packet parsing */ | 3082 | /* gk20a doesn't support device_info_data packet parsing */ |
3083 | gops->fifo.device_info_data_parse = NULL; | 3083 | gops->fifo.device_info_data_parse = NULL; |
3084 | gops->fifo.eng_runlist_base_size = fifo_eng_runlist_base__size_1_v; | 3084 | gops->fifo.eng_runlist_base_size = fifo_eng_runlist_base__size_1_v; |
3085 | gops->fifo.init_engine_info = gk20a_fifo_init_engine_info; | ||
3085 | } | 3086 | } |
diff --git a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.h b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.h index e6ae0bdc..3473bc78 100644 --- a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.h | |||
@@ -250,4 +250,7 @@ bool gk20a_fifo_is_valid_runlist_id(struct gk20a *g, u32 runlist_id); | |||
250 | 250 | ||
251 | int gk20a_fifo_update_runlist_ids(struct gk20a *g, u32 runlist_ids, u32 hw_chid, | 251 | int gk20a_fifo_update_runlist_ids(struct gk20a *g, u32 runlist_ids, u32 hw_chid, |
252 | bool add, bool wait_for_finish); | 252 | bool add, bool wait_for_finish); |
253 | |||
254 | int gk20a_fifo_init_engine_info(struct fifo_gk20a *f); | ||
255 | |||
253 | #endif /*__GR_GK20A_H__*/ | 256 | #endif /*__GR_GK20A_H__*/ |
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index 74ffab61..997da125 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h | |||
@@ -352,6 +352,7 @@ struct gpu_ops { | |||
352 | struct channel_gk20a *ch); | 352 | struct channel_gk20a *ch); |
353 | int (*tsg_unbind_channel)(struct channel_gk20a *ch); | 353 | int (*tsg_unbind_channel)(struct channel_gk20a *ch); |
354 | u32 (*eng_runlist_base_size)(void); | 354 | u32 (*eng_runlist_base_size)(void); |
355 | int (*init_engine_info)(struct fifo_gk20a *f); | ||
355 | } fifo; | 356 | } fifo; |
356 | struct pmu_v { | 357 | struct pmu_v { |
357 | /*used for change of enum zbc update cmd id from ver 0 to ver1*/ | 358 | /*used for change of enum zbc update cmd id from ver 0 to ver1*/ |