summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorStefan Roese <sr@denx.de>2008-03-19 07:09:26 +0100
committerStefan Roese <sr@denx.de>2008-03-19 13:41:25 +0100
commitf0105727d132f56a21fa3ed8b162309cca6cac44 (patch)
tree41b34838d9842a42f3318ca1725bce969af3ef27 /drivers
parent9a042e9ca512beaaa2cb450274313fc477141241 (diff)
CFI: Small cleanup for FLASH_SHOW_PROGRESS
With this patch we don't need that many #ifdef's in the code. It moves the subtraction into the macro and defines a NOP-macro when CONFIG_FLASH_SHOW_PROGRESS is not defined. Signed-off-by: Stefan Roese <sr@denx.de> Acked-by: Gerald Van Baren <vanbaren@cideas.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mtd/cfi_flash.c22
1 files changed, 9 insertions, 13 deletions
diff --git a/drivers/mtd/cfi_flash.c b/drivers/mtd/cfi_flash.c
index 48286e5803..f04c72d05a 100644
--- a/drivers/mtd/cfi_flash.c
+++ b/drivers/mtd/cfi_flash.c
@@ -1185,7 +1185,9 @@ void flash_print_info (flash_info_t * info)
* effect updates to digit and dots. Repeated code is nasty too, so
* we define it once here.
*/
-#define FLASH_SHOW_PROGRESS(scale, dots, digit) \
+#ifdef CONFIG_FLASH_SHOW_PROGRESS
+#define FLASH_SHOW_PROGRESS(scale, dots, digit, dots_sub) \
+ dots -= dots_sub; \
if ((scale > 0) && (dots <= 0)) { \
if ((digit % 5) == 0) \
printf ("%d", digit / 5); \
@@ -1194,6 +1196,9 @@ void flash_print_info (flash_info_t * info)
digit--; \
dots += scale; \
}
+#else
+#define FLASH_SHOW_PROGRESS(scale, dots, digit, dots_sub)
+#endif
/*-----------------------------------------------------------------------
* Copy memory to flash, returns:
@@ -1248,10 +1253,7 @@ int write_buff (flash_info_t * info, uchar * src, ulong addr, ulong cnt)
return rc;
wp += i;
-#ifdef CONFIG_FLASH_SHOW_PROGRESS
- dots -= i;
- FLASH_SHOW_PROGRESS(scale, dots, digit);
-#endif
+ FLASH_SHOW_PROGRESS(scale, dots, digit, i);
}
/* handle the aligned part */
@@ -1281,10 +1283,7 @@ int write_buff (flash_info_t * info, uchar * src, ulong addr, ulong cnt)
wp += i;
src += i;
cnt -= i;
-#ifdef CONFIG_FLASH_SHOW_PROGRESS
- dots -= i;
- FLASH_SHOW_PROGRESS(scale, dots, digit);
-#endif
+ FLASH_SHOW_PROGRESS(scale, dots, digit, i);
}
#else
while (cnt >= info->portwidth) {
@@ -1296,10 +1295,7 @@ int write_buff (flash_info_t * info, uchar * src, ulong addr, ulong cnt)
return rc;
wp += info->portwidth;
cnt -= info->portwidth;
-#ifdef CONFIG_FLASH_SHOW_PROGRESS
- dots -= info->portwidth;
- FLASH_SHOW_PROGRESS(scale, dots, digit);
-#endif
+ FLASH_SHOW_PROGRESS(scale, dots, digit, info->portwidth);
}
#endif /* CFG_FLASH_USE_BUFFER_WRITE */