From: Pali Rohár <pali@kernel.org>
Date: Fri, 22 Oct 2021 10:37:47 +0000 (+0200)
Subject: tools: kwboot: Patch nandpagesize to zero also for v1 image
X-Git-Tag: v2025.01-rc5-pxa1908~1662^2~2
X-Git-Url: http://git.dujemihanovic.xyz/img/static/html/%7B%7B?a=commitdiff_plain;h=0089f61e2dad50650d848ce8625d2b2141f56984;p=u-boot.git

tools: kwboot: Patch nandpagesize to zero also for v1 image

kwbimage v1 has also nandpagesize field. So set it to zero for both image
versions when image is not signed.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Stefan Roese <sr@denx.de>
---

diff --git a/tools/kwboot.c b/tools/kwboot.c
index eb4f5ab879..7e1be29623 100644
--- a/tools/kwboot.c
+++ b/tools/kwboot.c
@@ -1428,13 +1428,6 @@ kwboot_img_patch(void *img, size_t *size, int baudrate)
 	if (csum != hdr->checksum)
 		goto err;
 
-	if (image_ver == 0) {
-		struct main_hdr_v0 *hdr_v0 = img;
-
-		hdr_v0->nandeccmode = IBR_HDR_ECC_DISABLED;
-		hdr_v0->nandpagesize = 0;
-	}
-
 	srcaddr = le32_to_cpu(hdr->srcaddr);
 
 	switch (hdr->blockid) {
@@ -1480,6 +1473,12 @@ kwboot_img_patch(void *img, size_t *size, int baudrate)
 		hdr->blockid = IBR_HDR_UART_ID;
 	}
 
+	if (!is_secure) {
+		if (image_ver == 0)
+			((struct main_hdr_v0 *)img)->nandeccmode = IBR_HDR_ECC_DISABLED;
+		hdr->nandpagesize = 0;
+	}
+
 	if (baudrate) {
 		uint32_t codesz = sizeof(kwboot_baud_code);
 		void *code;