mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 02:22:34 +03:00
gpu: nvgpu: nvgpu_memcpy changes to clk 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. This change switches non-offending memcpy usage in clk code over to to use nvgpu_memcpy() with appropriate casts applied to maintain consistency within nvgpu. JIRA NVGPU-849 Signed-off-by: Scott Long <scottl@nvidia.com> Change-Id: I7b859a59a594e873d673ba38e0692c61c9811907 Reviewed-on: https://git-master.nvidia.com/r/1946268 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
9834fb40fe
commit
359a8b82d9
@@ -764,9 +764,9 @@ static int clk_prog_pmudatainit_35_master(struct gk20a *g,
|
||||
pset = (struct nv_pmu_clk_clk_prog_35_master_boardobj_set *)(void *)
|
||||
ppmudata;
|
||||
|
||||
memcpy(pset->voltrail_sec_vf_entries,
|
||||
pclk_prog_35_master->p_voltrail_sec_vf_entries,
|
||||
voltrail_sec_vfsize);
|
||||
nvgpu_memcpy((u8 *)pset->voltrail_sec_vf_entries,
|
||||
(u8 *)pclk_prog_35_master->p_voltrail_sec_vf_entries,
|
||||
voltrail_sec_vfsize);
|
||||
|
||||
return status;
|
||||
}
|
||||
@@ -823,8 +823,9 @@ static int clk_prog_pmudatainit_35_master_ratio(struct gk20a *g,
|
||||
pset = (struct nv_pmu_clk_clk_prog_35_master_ratio_boardobj_set *)
|
||||
(void *)ppmudata;
|
||||
|
||||
(void) memcpy(pset->ratio.slave_entries,
|
||||
pclk_prog_35_master_ratio->ratio.p_slave_entries, slavesize);
|
||||
nvgpu_memcpy((u8 *)pset->ratio.slave_entries,
|
||||
(u8 *)pclk_prog_35_master_ratio->ratio.p_slave_entries,
|
||||
slavesize);
|
||||
|
||||
return status;
|
||||
}
|
||||
@@ -879,8 +880,9 @@ static int clk_prog_pmudatainit_35_master_table(struct gk20a *g,
|
||||
|
||||
pset = (struct nv_pmu_clk_clk_prog_35_master_table_boardobj_set *)
|
||||
(void *)ppmudata;
|
||||
(void) memcpy(pset->table.slave_entries,
|
||||
pclk_prog_35_master_table->table.p_slave_entries, slavesize);
|
||||
nvgpu_memcpy((u8 *)pset->table.slave_entries,
|
||||
(u8 *)pclk_prog_35_master_table->table.p_slave_entries,
|
||||
slavesize);
|
||||
|
||||
return status;
|
||||
}
|
||||
@@ -1087,10 +1089,8 @@ static int clk_prog_construct_35_master(struct gk20a *g,
|
||||
memset(pclkprog->p_voltrail_sec_vf_entries,
|
||||
CTRL_CLK_CLK_DOMAIN_INDEX_INVALID, voltrail_sec_vfsize);
|
||||
|
||||
if ((memcpy(pclkprog->p_voltrail_sec_vf_entries,
|
||||
ptmpprog->p_voltrail_sec_vf_entries, voltrail_sec_vfsize)) == NULL) {
|
||||
status = -EINVAL;
|
||||
}
|
||||
nvgpu_memcpy((u8 *)pclkprog->p_voltrail_sec_vf_entries,
|
||||
(u8 *)ptmpprog->p_voltrail_sec_vf_entries, voltrail_sec_vfsize);
|
||||
|
||||
return status;
|
||||
}
|
||||
@@ -1175,10 +1175,8 @@ static int clk_prog_construct_35_master_ratio(struct gk20a *g,
|
||||
(void) memset(pclkprog->ratio.p_slave_entries,
|
||||
CTRL_CLK_CLK_DOMAIN_INDEX_INVALID, slavesize);
|
||||
|
||||
if ((memcpy(pclkprog->ratio.p_slave_entries,
|
||||
ptmpprog->ratio.p_slave_entries, slavesize)) == NULL) {
|
||||
status = -EINVAL;
|
||||
}
|
||||
nvgpu_memcpy((u8 *)pclkprog->ratio.p_slave_entries,
|
||||
(u8 *)ptmpprog->ratio.p_slave_entries, slavesize);
|
||||
|
||||
return status;
|
||||
}
|
||||
@@ -1276,10 +1274,8 @@ static int clk_prog_construct_35_master_table(struct gk20a *g,
|
||||
memset(pclkprog->table.p_slave_entries,
|
||||
CTRL_CLK_CLK_DOMAIN_INDEX_INVALID, slavesize);
|
||||
|
||||
if ((memcpy(pclkprog->table.p_slave_entries,
|
||||
ptmpprog->table.p_slave_entries,slavesize)) == NULL) {
|
||||
status = -EINVAL;
|
||||
}
|
||||
nvgpu_memcpy((u8 *)pclkprog->table.p_slave_entries,
|
||||
(u8 *)ptmpprog->table.p_slave_entries, slavesize);
|
||||
|
||||
exit:
|
||||
if (status != 0) {
|
||||
|
||||
Reference in New Issue
Block a user