aboutsummaryrefslogtreecommitdiffstats
path: root/package/boot/tfa-layerscape/patches/010-gcc11.patch
blob: 1cdc21a49346c38f65671447417064d2b4a373cd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
--- a/common/runtime_svc.c
+++ b/common/runtime_svc.c
@@ -38,7 +38,7 @@ uintptr_t handle_runtime_svc(uint32_t smc_fid,
 	u_register_t x1, x2, x3, x4;
 	int index;
 	unsigned int idx;
-	const rt_svc_desc_t *rt_svc_descs;
+	rt_svc_desc_t *rt_svc_descs = NULL;
 
 	assert(handle);
 	idx = get_unique_oen_from_smc_fid(smc_fid);
@@ -48,7 +48,7 @@ uintptr_t handle_runtime_svc(uint32_t smc_fid,
 	if (index < 0 || index >= (int)RT_SVC_DECS_NUM)
 		SMC_RET1(handle, SMC_UNK);
 
-	rt_svc_descs = (rt_svc_desc_t *) RT_SVC_DESCS_START;
+	memcpy(rt_svc_descs, (rt_svc_desc_t *)RT_SVC_DESCS_START, MAX_RT_SVCS);
 
 	get_smc_params_from_ctx(handle, x1, x2, x3, x4);