diff mbox series

[U-Boot] arm64: zynqmp: Simplify boot_target variable composition

Message ID 259c5c653b90ed88aabd3a8017168623af0b30f7.1524659698.git.michal.simek@xilinx.com
State Accepted
Commit 0478b0b9b674da35948d7500b595ae14387068ac
Delegated to: Michal Simek
Headers show
Series [U-Boot] arm64: zynqmp: Simplify boot_target variable composition | expand

Commit Message

Michal Simek April 25, 2018, 12:35 p.m. UTC
Call calloc for space allocation only at one location and include if/else
to sprintf. This will simplify run time device adding based on id aliases.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
---

 board/xilinx/zynqmp/zynqmp.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

Comments

Alexander Graf April 26, 2018, 6:03 a.m. UTC | #1
On 25.04.18 14:35, Michal Simek wrote:
> Call calloc for space allocation only at one location and include if/else
> to sprintf. This will simplify run time device adding based on id aliases.
> 
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>

Reviewed-by: Alexander Graf <agraf@suse.de>


Alex
diff mbox series

Patch

diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c
index 6d09a4c73139..f7fe1fdfff7b 100644
--- a/board/xilinx/zynqmp/zynqmp.c
+++ b/board/xilinx/zynqmp/zynqmp.c
@@ -454,6 +454,7 @@  int board_late_init(void)
 {
 	u32 reg = 0;
 	u8 bootmode;
+	int env_targets_len = 0;
 	const char *mode;
 	char *new_targets;
 	char *env_targets;
@@ -530,14 +531,13 @@  int board_late_init(void)
 	 * and default boot_targets
 	 */
 	env_targets = env_get("boot_targets");
-	if (env_targets) {
-		new_targets = calloc(1, strlen(mode) +
-				     strlen(env_targets) + 2);
-		sprintf(new_targets, "%s %s", mode, env_targets);
-	} else {
-		new_targets = calloc(1, strlen(mode) + 2);
-		sprintf(new_targets, "%s", mode);
-	}
+	if (env_targets)
+		env_targets_len = strlen(env_targets);
+
+	new_targets = calloc(1, strlen(mode) + env_targets_len + 2);
+
+	sprintf(new_targets, "%s %s", mode,
+		env_targets ? env_targets : "");
 
 	env_set("boot_targets", new_targets);