diff options
Diffstat (limited to 'drivers/gpu/nvgpu/common/falcon')
-rw-r--r-- | drivers/gpu/nvgpu/common/falcon/falcon.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/common/falcon/falcon.c b/drivers/gpu/nvgpu/common/falcon/falcon.c index a0f88de3..b1d6558a 100644 --- a/drivers/gpu/nvgpu/common/falcon/falcon.c +++ b/drivers/gpu/nvgpu/common/falcon/falcon.c | |||
@@ -219,6 +219,34 @@ bool nvgpu_flcn_get_idle_status(struct nvgpu_falcon *flcn) | |||
219 | return status; | 219 | return status; |
220 | } | 220 | } |
221 | 221 | ||
222 | int nvgpu_flcn_copy_from_emem(struct nvgpu_falcon *flcn, | ||
223 | u32 src, u8 *dst, u32 size, u8 port) | ||
224 | { | ||
225 | struct nvgpu_falcon_engine_dependency_ops *flcn_dops = | ||
226 | &flcn->flcn_engine_dep_ops; | ||
227 | int status = -EINVAL; | ||
228 | |||
229 | if (flcn_dops->copy_from_emem != NULL) { | ||
230 | status = flcn_dops->copy_from_emem(flcn, src, dst, size, port); | ||
231 | } | ||
232 | |||
233 | return status; | ||
234 | } | ||
235 | |||
236 | int nvgpu_flcn_copy_to_emem(struct nvgpu_falcon *flcn, | ||
237 | u32 dst, u8 *src, u32 size, u8 port) | ||
238 | { | ||
239 | struct nvgpu_falcon_engine_dependency_ops *flcn_dops = | ||
240 | &flcn->flcn_engine_dep_ops; | ||
241 | int status = -EINVAL; | ||
242 | |||
243 | if (flcn_dops->copy_to_emem != NULL) { | ||
244 | status = flcn_dops->copy_to_emem(flcn, dst, src, size, port); | ||
245 | } | ||
246 | |||
247 | return status; | ||
248 | } | ||
249 | |||
222 | int nvgpu_flcn_copy_from_dmem(struct nvgpu_falcon *flcn, | 250 | int nvgpu_flcn_copy_from_dmem(struct nvgpu_falcon *flcn, |
223 | u32 src, u8 *dst, u32 size, u8 port) | 251 | u32 src, u8 *dst, u32 size, u8 port) |
224 | { | 252 | { |