summaryrefslogtreecommitdiff
path: root/board/trab/auto_update.c
diff options
context:
space:
mode:
authorJon Loeliger <jdl@freescale.com>2007-08-13 11:01:52 -0500
committerJon Loeliger <jdl@freescale.com>2007-08-13 11:01:52 -0500
commit8e2dd87eee01bb1b83beab7caf22b851c5cafb2c (patch)
tree47a43e05d90de7d64ed356bab5f15e8d89f5b5cc /board/trab/auto_update.c
parentcca34967cbd13ff6bd352be29e3f1cc88ab24c05 (diff)
parent9986bc3e40e899bea372a99a2bca4071bdf2e24b (diff)
downloadu-boot-imx-8e2dd87eee01bb1b83beab7caf22b851c5cafb2c.zip
u-boot-imx-8e2dd87eee01bb1b83beab7caf22b851c5cafb2c.tar.gz
u-boot-imx-8e2dd87eee01bb1b83beab7caf22b851c5cafb2c.tar.bz2
Merge commit 'remotes/wd/master'
Conflicts: MAKEALL With any luck, this is the last MAKEALL merge conflict!
Diffstat (limited to 'board/trab/auto_update.c')
-rw-r--r--board/trab/auto_update.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/board/trab/auto_update.c b/board/trab/auto_update.c
index 92120b0..54d3645 100644
--- a/board/trab/auto_update.c
+++ b/board/trab/auto_update.c
@@ -450,7 +450,7 @@ do_auto_update(void)
{
block_dev_desc_t *stor_dev;
long sz;
- int i, res, bitmap_first, cnt, old_ctrlc, got_ctrlc;
+ int i, res = 0, bitmap_first, cnt, old_ctrlc, got_ctrlc;
char *env;
long start, end;
@@ -477,18 +477,21 @@ do_auto_update(void)
au_usb_stor_curr_dev = usb_stor_scan(0);
if (au_usb_stor_curr_dev == -1) {
debug ("No device found. Not initialized?\n");
- return -1;
+ res = -1;
+ goto xit;
}
/* check whether it has a partition table */
stor_dev = get_dev("usb", 0);
if (stor_dev == NULL) {
debug ("uknown device type\n");
- return -1;
+ res = -1;
+ goto xit;
}
if (fat_register_device(stor_dev, 1) != 0) {
debug ("Unable to use USB %d:%d for fatls\n",
au_usb_stor_curr_dev, 1);
- return -1;
+ res = -1;
+ goto xit;
}
if (file_fat_detectfs() != 0) {
debug ("file_fat_detectfs failed\n");
@@ -648,9 +651,10 @@ do_auto_update(void)
/* enable the power switch */
*CPLD_VFD_BK &= ~POWER_OFF;
}
- usb_stop();
/* restore the old state */
disable_ctrlc(old_ctrlc);
- return 0;
+xit:
+ usb_stop();
+ return res;
}
#endif /* CONFIG_AUTO_UPDATE */