From: Gary Bisson Date: Wed, 11 Jan 2017 15:51:53 +0000 (+0100) Subject: cmd: sata: fix init command return value X-Git-Tag: v2025.01-rc5-pxa1908~7728 X-Git-Url: http://git.dujemihanovic.xyz/img/sics.gif?a=commitdiff_plain;h=8547f45bc54b1a96bfa539f3e1070c5046c54764;p=u-boot.git cmd: sata: fix init command return value Since commit aa6ab905b2, sata_initialize returns -1 if init_sata or scan_sata fails. But this return value becomes the do_sata return value which is equivalent to CMD_RET_USAGE. In case one issues 'sata init' and that the hardware fails to initialize, there's no need to display the command usage. Instead the command shoud just return the CMD_RET_FAILURE value. Fixes: aa6ab905b2 (sata: fix sata command can not being executed bug) Signed-off-by: Gary Bisson Reviewed-by: Eric Nelson Reviewed-by: Simon Glass --- diff --git a/cmd/sata.c b/cmd/sata.c index f56622acc2..4c53022ff6 100644 --- a/cmd/sata.c +++ b/cmd/sata.c @@ -28,14 +28,15 @@ static int do_sata(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) if (sata_curr_device != -1) sata_stop(); - return sata_initialize(); + return (sata_initialize() < 0) ? + CMD_RET_FAILURE : CMD_RET_SUCCESS; } /* If the user has not yet run `sata init`, do it now */ if (sata_curr_device == -1) { rc = sata_initialize(); if (rc == -1) - return rc; + return CMD_RET_FAILURE; sata_curr_device = rc; }