From 5923ef686a61c7ac15ed990487e4a4fd312ddeec Mon Sep 17 00:00:00 2001
From: =?utf8?q?Pali=20Roh=C3=A1r?= <pali@kernel.org>
Date: Mon, 25 Oct 2021 15:12:54 +0200
Subject: [PATCH] tools: kwboot: Reserve enough space for patching kwbimage in
 memory
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

SPI image header and data parts do not have to be aligned to 128 byte
xmodem block size. So reserve additional memory for aligning header part
and additional memory for aligning data part.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Marek Behún <marek.behun@nic.cz>
Reviewed-by: Stefan Roese <sr@denx.de>
---
 tools/kwboot.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tools/kwboot.c b/tools/kwboot.c
index c55b41025b..4e29317f10 100644
--- a/tools/kwboot.c
+++ b/tools/kwboot.c
@@ -1672,8 +1672,10 @@ main(int argc, char **argv)
 	else
 		/* ensure we have enough space for baudrate change code */
 		after_img_rsv += KWBOOT_BAUDRATE_BIN_HEADER_SZ +
+				 KWBOOT_XM_BLKSZ +
 				 sizeof(kwboot_pre_baud_code) +
-				 sizeof(kwboot_baud_code);
+				 sizeof(kwboot_baud_code) +
+				 KWBOOT_XM_BLKSZ;
 
 	if (imgpath) {
 		img = kwboot_read_image(imgpath, &size, after_img_rsv);
-- 
2.39.5