gpu: nvgpu: nvgpu_memcpy changes to linux os code

MISRA Rule 21.15 prohibits use of memcpy() with incompatible ptrs
to qualified/unqualified types.

To circumvent this issue we've introduced a new MISRA-compliant
nvgpu_memcpy() function.

While linux os code does not need to be MISRA-compliant this
change switches over all memcpy() uses to nvgpu_memcpy()
with appropriate casts applied to maintain consistency within
the nvgpu source base.

JIRA NVGPU-849

Change-Id: I2c21a7845df5709dafa19508c121f8afa27cc4fc
Signed-off-by: Scott Long <scottl@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1950995
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Nitin Kumbhar <nkumbhar@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Scott Long
2018-11-14 15:25:49 -08:00
committed by mobile promotions
parent df92b05e43
commit e24df49765
7 changed files with 28 additions and 16 deletions

View File

@@ -20,6 +20,7 @@
#include <nvgpu/bug.h>
#include <nvgpu/firmware.h>
#include <nvgpu/gk20a.h>
#include <nvgpu/string.h>
#include "platform_gk20a.h"
#include "os_linux.h"
@@ -93,7 +94,7 @@ struct nvgpu_firmware *nvgpu_request_firmware(struct gk20a *g,
if (!fw->data)
goto err_release;
(void) memcpy(fw->data, linux_fw->data, linux_fw->size);
nvgpu_memcpy((u8 *)fw->data, (u8 *)linux_fw->data, linux_fw->size);
fw->size = linux_fw->size;
release_firmware(linux_fw);