When negative return codes are used in commands (do_foo()), the shell prints these messages:
exit not allowed from main input shell. Change the return codes in the new mtd commands to use only positive values and these annoying warnings are gone. Signed-off-by: Stefan Roese <s...@denx.de> Cc: Miquel Raynal <miquel.ray...@bootlin.com> Cc: Boris Brezillon <boris.brezil...@bootlin.com> Cc: Jagan Teki <ja...@openedev.com> --- v2: - Use CMD_RET_FAILURE as return value as suggested by Boris cmd/mtd.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/cmd/mtd.c b/cmd/mtd.c index 999d686e66..b29aec18ca 100644 --- a/cmd/mtd.c +++ b/cmd/mtd.c @@ -188,7 +188,7 @@ static int do_mtd_list(void) if (!dev_nb) { printf("No MTD device found\n"); - return -EINVAL; + return CMD_RET_FAILURE; } return 0; @@ -269,13 +269,13 @@ static int do_mtd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) if (mtd_is_aligned_with_min_io_size(mtd, off)) { printf("Offset not aligned with a page (0x%x)\n", mtd->writesize); - return -EINVAL; + return CMD_RET_FAILURE; } if (mtd_is_aligned_with_min_io_size(mtd, len)) { printf("Size not a multiple of a page (0x%x)\n", mtd->writesize); - return -EINVAL; + return CMD_RET_FAILURE; } if (dump) @@ -285,7 +285,7 @@ static int do_mtd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) if (!buf) { printf("Could not map/allocate the user buffer\n"); - return -ENOMEM; + return CMD_RET_FAILURE; } printf("%s %lldB (%d page(s)) at offset 0x%08llx%s%s\n", @@ -306,7 +306,7 @@ static int do_mtd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) if (ret) { printf("%s on %s failed with error %d\n", read ? "Read" : "Write", mtd->name, ret); - return ret; + return CMD_RET_FAILURE; } if (dump) { @@ -346,13 +346,13 @@ static int do_mtd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) if (mtd_is_aligned_with_block_size(mtd, off)) { printf("Offset not aligned with a block (0x%x)\n", mtd->erasesize); - return -EINVAL; + return CMD_RET_FAILURE; } if (mtd_is_aligned_with_block_size(mtd, len)) { printf("Size not a multiple of a block (0x%x)\n", mtd->erasesize); - return -EINVAL; + return CMD_RET_FAILURE; } erase_op.mtd = mtd; @@ -366,7 +366,9 @@ static int do_mtd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) return CMD_RET_USAGE; } - return ret; + if (ret) + return CMD_RET_FAILURE; + return 0; } static char mtd_help_text[] = -- 2.18.0 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot