summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/common/falcon/falcon.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/common/falcon/falcon.c')
-rw-r--r--drivers/gpu/nvgpu/common/falcon/falcon.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/common/falcon/falcon.c b/drivers/gpu/nvgpu/common/falcon/falcon.c
index 3795dd09..74d78e86 100644
--- a/drivers/gpu/nvgpu/common/falcon/falcon.c
+++ b/drivers/gpu/nvgpu/common/falcon/falcon.c
@@ -180,6 +180,22 @@ int nvgpu_flcn_copy_to_dmem(struct nvgpu_falcon *flcn,
180 return flcn_ops->copy_to_dmem(flcn, dst, src, size, port); 180 return flcn_ops->copy_to_dmem(flcn, dst, src, size, port);
181} 181}
182 182
183int nvgpu_flcn_copy_to_imem(struct nvgpu_falcon *flcn,
184 u32 dst, u8 *src, u32 size, u8 port, bool sec, u32 tag)
185{
186 struct nvgpu_falcon_ops *flcn_ops = &flcn->flcn_ops;
187 int status = -EINVAL;
188
189 if (flcn_ops->copy_to_imem)
190 status = flcn_ops->copy_to_imem(flcn, dst, src, size, port,
191 sec, tag);
192 else
193 nvgpu_warn(flcn->g, "Invalid op on falcon 0x%x ",
194 flcn->flcn_id);
195
196 return status;
197}
198
183void nvgpu_flcn_sw_init(struct gk20a *g, u32 flcn_id) 199void nvgpu_flcn_sw_init(struct gk20a *g, u32 flcn_id)
184{ 200{
185 struct nvgpu_falcon *flcn = NULL; 201 struct nvgpu_falcon *flcn = NULL;