diff options
Diffstat (limited to 'common/cmd_sata.c')
| -rw-r--r-- | common/cmd_sata.c | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/common/cmd_sata.c b/common/cmd_sata.c index 7b1703fe4..3f98235a3 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; |