Browse Source

dfu: Disable default calculation of CRC32

Patch (SHA1: bd694244db7bc969954)
dfu: Introduction of the "dfu_hash_algo" env variable for checksum method
setting

already introduced more generic handling of the crc32 calculation.
Up till now the CRC32 of received data was calculated unconditionally.
This patch changes this and from now - by default the crc32 is NOT
calculated anymore.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Cc: Marek Vasut <marex@denx.de>
Lukasz Majewski 11 năm trước cách đây
mục cha
commit
3d83e6752d
1 tập tin đã thay đổi với 7 bổ sung13 xóa
  1. 7 13
      drivers/dfu/dfu.c

+ 7 - 13
drivers/dfu/dfu.c

@@ -106,21 +106,15 @@ static char *dfu_get_hash_algo(void)
 	char *s;
 
 	s = getenv("dfu_hash_algo");
-	/*
-	 * By default the legacy behaviour to calculate the crc32 hash
-	 * value is preserved.
-	 *
-	 * To disable calculation of the hash algorithm for received data
-	 * specify the "dfu_hash_algo = disabled" at your board envs.
-	 */
-	debug("%s: DFU hash method: %s\n", __func__, s ? s : "not specified");
-
-	if (!s || !strcmp(s, "crc32"))
-		return "crc32";
-
-	if (!strcmp(s, "disabled"))
+	if (!s)
 		return NULL;
 
+	if (!strcmp(s, "crc32")) {
+		debug("%s: DFU hash method: %s\n", __func__, s);
+		return s;
+	}
+
+	error("DFU hash method: %s not supported!\n", s);
 	return NULL;
 }