diff options
author | Tom Rini <trini@konsulko.com> | 2019-11-01 09:34:35 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2019-11-01 09:34:35 -0400 |
commit | bb1bb4bb5df9df4d3f07e39a632daaff79e4b77e (patch) | |
tree | 1ed8d0b3622961997a32cd648d5d1bd3de7a855a /lib/tiny-printf.c | |
parent | 82679624f9aa6d1be733c46f3555d5166b6f5b72 (diff) | |
parent | d60ae4c59df55c08dc96202ff58fed21ab3afb7d (diff) |
Merge tag 'dm-pull-29oct19' of git://git.denx.de/u-boot-dm
- Fix for patman with email addresses containing commas
- Bootstage improvements for TPL, SPL
- Various sandbox and dm improvements and fixes
Diffstat (limited to 'lib/tiny-printf.c')
-rw-r--r-- | lib/tiny-printf.c | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/lib/tiny-printf.c b/lib/tiny-printf.c index 62e6381961..1138c7012a 100644 --- a/lib/tiny-printf.c +++ b/lib/tiny-printf.c @@ -157,7 +157,8 @@ static void ip4_addr_string(struct printf_info *info, u8 *addr) * decimal). */ -static void pointer(struct printf_info *info, const char *fmt, void *ptr) +static void __maybe_unused pointer(struct printf_info *info, const char *fmt, + void *ptr) { #ifdef DEBUG unsigned long num = (uintptr_t)ptr; @@ -266,6 +267,21 @@ static int _vprintf(struct printf_info *info, const char *fmt, va_list va) div_out(info, &num, div); } break; + case 'p': +#ifdef DEBUG + pointer(info, fmt, va_arg(va, void *)); + /* + * Skip this because it pulls in _ctype which is + * 256 bytes, and we don't generally implement + * pointer anyway + */ + while (isalnum(fmt[0])) + fmt++; + break; +#else + islong = true; + /* no break */ +#endif case 'x': if (islong) { num = va_arg(va, unsigned long); @@ -287,11 +303,6 @@ static int _vprintf(struct printf_info *info, const char *fmt, va_list va) case 's': p = va_arg(va, char*); break; - case 'p': - pointer(info, fmt, va_arg(va, void *)); - while (isalnum(fmt[0])) - fmt++; - break; case '%': out(info, '%'); default: @@ -398,3 +409,9 @@ int snprintf(char *buf, size_t size, const char *fmt, ...) return ret; } + +void print_grouped_ull(unsigned long long int_val, int digits) +{ + /* Don't try to print the upper 32-bits */ + printf("%ld ", (ulong)int_val); +} |