[PATCH 4/6] drivers: tee: optee: separate local variables for each resource

Ahmad Fatoum a.fatoum at barebox.org
Wed May 21 05:53:07 PDT 2025


Not reusing the same local variable makes the code arguably clearer and
ensures we don't inherit flags by mistake from the previous use of the
variable.

Signed-off-by: Ahmad Fatoum <a.fatoum at barebox.org>
---
 drivers/tee/optee/of_fixup.c | 30 +++++++++++++++---------------
 1 file changed, 15 insertions(+), 15 deletions(-)

diff --git a/drivers/tee/optee/of_fixup.c b/drivers/tee/optee/of_fixup.c
index 045b5a0bb754..e801c4c95070 100644
--- a/drivers/tee/optee/of_fixup.c
+++ b/drivers/tee/optee/of_fixup.c
@@ -10,7 +10,7 @@ int of_optee_fixup(struct device_node *root, void *_data)
 {
 	struct of_optee_fixup_data *fixup_data = _data;
 	const char *optee_of_path = "/firmware/optee";
-	struct resource res = {};
+	struct resource res_core = {}, res_shm = {};
 	struct device_node *node;
 	u64 optee_membase;
 	int ret;
@@ -31,16 +31,16 @@ int of_optee_fixup(struct device_node *root, void *_data)
 		return ret;
 
 	if (!optee_get_membase(&optee_membase)) {
-		res.start = optee_membase;
-		res.end = optee_membase + OPTEE_SIZE - fixup_data->shm_size - 1;
+		res_core.start = optee_membase;
+		res_core.end = optee_membase + OPTEE_SIZE - fixup_data->shm_size - 1;
 	} else {
-		res.start = arm_mem_endmem_get() - OPTEE_SIZE;
-		res.end = arm_mem_endmem_get() - fixup_data->shm_size - 1;
+		res_core.start = arm_mem_endmem_get() - OPTEE_SIZE;
+		res_core.end = arm_mem_endmem_get() - fixup_data->shm_size - 1;
 	}
-	res.flags = IORESOURCE_BUSY;
-	res.name = "optee_core";
+	res_core.flags = IORESOURCE_MEM | IORESOURCE_BUSY;
+	res_core.name = "optee_core";
 
-	ret = of_fixup_reserved_memory(root, &res);
+	ret = of_fixup_reserved_memory(root, &res_core);
 	if (ret)
 		return ret;
 
@@ -48,14 +48,14 @@ int of_optee_fixup(struct device_node *root, void *_data)
 		return 0;
 
 	if (!optee_get_membase(&optee_membase)) {
-		res.start = optee_membase + OPTEE_SIZE - fixup_data->shm_size;
-		res.end = optee_membase + OPTEE_SIZE - 1;
+		res_shm.start = optee_membase + OPTEE_SIZE - fixup_data->shm_size;
+		res_shm.end = optee_membase + OPTEE_SIZE - 1;
 	} else {
-		res.start = arm_mem_endmem_get() - fixup_data->shm_size;
-		res.end = arm_mem_endmem_get() - 1;
+		res_shm.start = arm_mem_endmem_get() - fixup_data->shm_size;
+		res_shm.end = arm_mem_endmem_get() - 1;
 	}
-	res.flags &= ~IORESOURCE_BUSY;
-	res.name = "optee_shm";
+	res_shm.flags = IORESOURCE_MEM;
+	res_shm.name = "optee_shm";
 
-	return of_fixup_reserved_memory(root, &res);
+	return of_fixup_reserved_memory(root, &res_shm);
 }
-- 
2.39.5




More information about the barebox mailing list