diff options
| author | Haavard Skinnemoen <hskinnemoen@atmel.com> | 2007-08-13 16:34:33 +0200 | 
|---|---|---|
| committer | Haavard Skinnemoen <hskinnemoen@atmel.com> | 2007-08-13 16:34:33 +0200 | 
| commit | 375c2c9e57ea5b8d678475379378f4774aa9cb88 (patch) | |
| tree | c8499eaec089c8fe7c9eda562131f45b4a7738c6 /drivers/nand/nand_util.c | |
| parent | f0d1246ed7cb5a88522244c596d7ae7e6f161283 (diff) | |
| parent | 9986bc3e40e899bea372a99a2bca4071bdf2e24b (diff) | |
| download | olio-uboot-2014.01-375c2c9e57ea5b8d678475379378f4774aa9cb88.tar.xz olio-uboot-2014.01-375c2c9e57ea5b8d678475379378f4774aa9cb88.zip | |
Merge commit 'upstream/master'
Diffstat (limited to 'drivers/nand/nand_util.c')
| -rw-r--r-- | drivers/nand/nand_util.c | 25 | 
1 files changed, 12 insertions, 13 deletions
| diff --git a/drivers/nand/nand_util.c b/drivers/nand/nand_util.c index 10bf03659..aee872703 100644 --- a/drivers/nand/nand_util.c +++ b/drivers/nand/nand_util.c @@ -32,11 +32,12 @@  #include <common.h> -#if (CONFIG_COMMANDS & CFG_CMD_NAND) && !defined(CFG_NAND_LEGACY) +#if defined(CONFIG_CMD_NAND) && !defined(CFG_NAND_LEGACY)  #include <command.h>  #include <watchdog.h>  #include <malloc.h> +#include <div64.h>  #include <nand.h>  #include <jffs2/jffs2.h> @@ -208,10 +209,10 @@ int nand_erase_opts(nand_info_t *meminfo, const nand_erase_options_t *opts)  		}  		if (!opts->quiet) { -			int percent = (int) -				((unsigned long long) +                        unsigned long long n =(unsigned long long)  				 (erase.addr+meminfo->erasesize-opts->offset) -				 * 100 / erase_length); +				 * 100; +			int percent = (int)do_div(n, erase_length);  			/* output progress message only at whole percent  			 * steps to reduce the number of messages printed @@ -475,10 +476,9 @@ int nand_write_opts(nand_info_t *meminfo, const nand_write_options_t *opts)  		imglen -= readlen;  		if (!opts->quiet) { -			int percent = (int) -				((unsigned long long) -				 (opts->length-imglen) * 100 -				 / opts->length); +                        unsigned long long n = (unsigned long long) +			         (opts->length-imglen) * 100; +			int percent = (int)do_div(n, opts->length);  			/* output progress message only at whole percent  			 * steps to reduce the number of messages printed  			 * on (slow) serial consoles @@ -651,10 +651,9 @@ int nand_read_opts(nand_info_t *meminfo, const nand_read_options_t *opts)  		}  		if (!opts->quiet) { -			int percent = (int) -				((unsigned long long) -				 (opts->length-imglen) * 100 -				 / opts->length); +                        unsigned long long n = (unsigned long long) +			         (opts->length-imglen) * 100; +			int percent = (int)do_div(n ,opts->length);  			/* output progress message only at whole percent  			 * steps to reduce the number of messages printed  			 * on (slow) serial consoles @@ -859,4 +858,4 @@ int nand_unlock(nand_info_t *meminfo, ulong start, ulong length)  	return ret;  } -#endif /* (CONFIG_COMMANDS & CFG_CMD_NAND) && !defined(CFG_NAND_LEGACY) */ +#endif |