From a3802a2ae9d5ffeaec038a9ce7fc9fa333f1a68c Mon Sep 17 00:00:00 2001 From: Mahantesh Kumbar Date: Tue, 4 Jul 2017 23:36:55 +0530 Subject: gpu: nvgpu: falcon copy to IMEM support - Added falcon interface/HAL copy to IMEM method - Deleted copy to IMEM code & then replaced with nvgpu_flcn_copy_to_imem() in multiple files - Code cleanup JIRA NVGPU-117 Change-Id: Ic47197ef7dc449e5bf1f418ac02598500c96da21 Signed-off-by: Mahantesh Kumbar Reviewed-on: https://git-master/r/1513273 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom --- drivers/gpu/nvgpu/common/falcon/falcon.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'drivers/gpu/nvgpu/common') 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, return flcn_ops->copy_to_dmem(flcn, dst, src, size, port); } +int nvgpu_flcn_copy_to_imem(struct nvgpu_falcon *flcn, + u32 dst, u8 *src, u32 size, u8 port, bool sec, u32 tag) +{ + struct nvgpu_falcon_ops *flcn_ops = &flcn->flcn_ops; + int status = -EINVAL; + + if (flcn_ops->copy_to_imem) + status = flcn_ops->copy_to_imem(flcn, dst, src, size, port, + sec, tag); + else + nvgpu_warn(flcn->g, "Invalid op on falcon 0x%x ", + flcn->flcn_id); + + return status; +} + void nvgpu_flcn_sw_init(struct gk20a *g, u32 flcn_id) { struct nvgpu_falcon *flcn = NULL; -- cgit v1.2.2