CFI: Small cleanup for FLASH_SHOW_PROGRESS
PATCH 1/1 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.
---
Jerry, what do you think? If you are ok with to this one, and nobody else has some objections, I'll submit both patches.
drivers/mtd/cfi_flash.c | 22 +++++++++------------- 1 files changed, 9 insertions(+), 13 deletions(-)
drivers/mtd/cfi_flash.c +9 -13
@@ -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 */
Signature · 1 line
1.5.4.4
PATCH 1/1 CFI: Small cleanup for FLASH_SHOW_PROGRESS
Quoted 4 lines · Stefan Roese
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_PROGRESSis not defined.
Quoted 8 lines
Signed-off-by Stefan Roese <[email protected]>---
Jerry, what do you think? If you are ok with to this one, and nobody else has some objections, I'll submit both patches.
drivers/mtd/cfi_flash.c | 22 +++++++++------------- 1 files changed, 9 insertions(+), 13 deletions(-)
Yes, there was that little birdie in the back of my mind saying this could be cleaner when I moved the code into the macro and didn't move the increment in too (because the increment was different amounts). Thanks for chirping louder. :-)