aboutsummaryrefslogtreecommitdiff
path: root/drivers/dfu
diff options
context:
space:
mode:
authorLukasz Majewski2014-06-10 12:25:59 +0200
committerMarek Vasut2014-06-11 02:31:48 +0200
commit3d83e6752d5595351a47309aab0749984c5909b7 (patch)
tree881d0ecf4a7c3ed323eef6a1a05c651b30df5c7c /drivers/dfu
parente0672b3c3ae4fdd48a66af9f7932d2c8e839e459 (diff)
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>
Diffstat (limited to 'drivers/dfu')
-rw-r--r--drivers/dfu/dfu.c20
1 files changed, 7 insertions, 13 deletions
diff --git a/drivers/dfu/dfu.c b/drivers/dfu/dfu.c
index 5878f991d92..dc09ff6466e 100644
--- a/drivers/dfu/dfu.c
+++ b/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;
}