From fe1f1c2d21a22e8fa8efcbdabdf9dafcd02b4e67 Mon Sep 17 00:00:00 2001 From: Rong Chang Date: Fri, 2 Mar 2012 20:06:57 +0800 Subject: [PATCH] Add %b format output via uart_printf Useful when debug dump binary flags. BUG=chrome-os-partner:8287 TEST=none Change-Id: I646d80befafca07074847f2f09eeb23126533f67 --- common/uart_buffering.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/common/uart_buffering.c b/common/uart_buffering.c index b9c7f6d1ff..5f6580d73c 100644 --- a/common/uart_buffering.c +++ b/common/uart_buffering.c @@ -385,7 +385,10 @@ int uart_printf(const char *format, ...) { static const char int_chars[] = "0123456789abcdef"; static const char error_str[] = "ERROR"; - char intbuf[21]; /* Longest uint64 */ + char intbuf[33]; + /* Longest uint64 in decimal = 20 + * longest uint32 in binary = 32 + */ int dropped_chars = 0; int is_left; int pad_zero; @@ -468,8 +471,11 @@ int uart_printf(const char *format, ...) break; case 'x': case 'p': - base = 16; - break; + base = 16; + break; + case 'b': + base = 2; + break; default: format = error_str; }