The function image_boot_mode_id() converts the name of a boot media into the corresponding Marvell specific code. However, 0 that we currently used to indicate that the boot media name wasn't found, could potentially be a valid value. So instead we use -1 to indicate a failure. This is also done in preparation to the introduction of image_nand_ecc_mode_id(), which will convert a NAND ECC mode name into the corresponding identifier. And in this case 0 is a valid identifier of a NAND ECC mode, so we cannot use it to indicate a failure. Since we want image_boot_mode_id() and image_nand_ecc_mode_id() to have a consistent behavior, we change the former in this commit. The latter is introduced in the next commit. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx> --- scripts/kwbimage.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/kwbimage.c b/scripts/kwbimage.c index 631f131..0127e2b 100644 --- a/scripts/kwbimage.c +++ b/scripts/kwbimage.c @@ -226,14 +226,14 @@ static const char *image_boot_mode_name(unsigned int id) return NULL; } -unsigned int image_boot_mode_id(const char *boot_mode_name) +int image_boot_mode_id(const char *boot_mode_name) { int i; for (i = 0; boot_modes[i].name; i++) if (!strcmp(boot_modes[i].name, boot_mode_name)) return boot_modes[i].id; - return 0; + return -1; } static const char *image_nand_ecc_mode_name(unsigned int id) @@ -987,7 +987,7 @@ static int image_create_config_parse_oneline(char *line, char *value = strtok_r(NULL, " ", &saveptr); el->type = IMAGE_CFG_BOOT_FROM; el->bootfrom = image_boot_mode_id(value); - if (!el->bootfrom) { + if (el->bootfrom < 0) { fprintf(stderr, "Invalid boot media '%s'\n", value); return -1; -- 1.7.9.5 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox