summaryrefslogtreecommitdiff
path: root/common/cmd_sata.c
diff options
context:
space:
mode:
authorStefano Babic <sbabic@denx.de>2012-02-22 00:24:37 +0000
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2012-05-15 08:31:30 +0200
commit71cadda3ff8e0607c7b927582e1d9c9913857e6a (patch)
tree4423ecdd6e34c399ddeab25e4d48ca1c37673943 /common/cmd_sata.c
parentd87c85ce4314cab49bf2664bb094df748a90cb29 (diff)
downloadu-boot-imx-71cadda3ff8e0607c7b927582e1d9c9913857e6a.zip
u-boot-imx-71cadda3ff8e0607c7b927582e1d9c9913857e6a.tar.gz
u-boot-imx-71cadda3ff8e0607c7b927582e1d9c9913857e6a.tar.bz2
SATA: check for return value from sata functions
sata functions are called even if previous functions failed because return value is not checked. Signed-off-by: Stefano Babic <sbabic@denx.de> CC: Dirk Behme <dirk.behme@de.bosch.com> CC: Fabio Estevam <fabio.estevam@freescale.com>
Diffstat (limited to 'common/cmd_sata.c')
-rw-r--r--common/cmd_sata.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/common/cmd_sata.c b/common/cmd_sata.c
index 7b1703f..3f98235 100644
--- a/common/cmd_sata.c
+++ b/common/cmd_sata.c
@@ -48,9 +48,12 @@ int __sata_initialize(void)
sata_dev_desc[i].block_write = sata_write;
rc = init_sata(i);
- rc = scan_sata(i);
- if ((sata_dev_desc[i].lba > 0) && (sata_dev_desc[i].blksz > 0))
- init_part(&sata_dev_desc[i]);
+ if (!rc) {
+ rc = scan_sata(i);
+ if (!rc && (sata_dev_desc[i].lba > 0) &&
+ (sata_dev_desc[i].blksz > 0))
+ init_part(&sata_dev_desc[i]);
+ }
}
sata_curr_device = 0;
return rc;