debug_uart: Add printdec
authorJagan Teki <jagan@amarulasolutions.com>
Mon, 15 Jul 2019 18:28:47 +0000 (23:58 +0530)
committerKever Yang <kever.yang@rock-chips.com>
Fri, 19 Jul 2019 03:11:09 +0000 (11:11 +0800)
Add printdec, this would help to print an
output a decimalism value.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: YouMin Chen <cym@rock-chips.com>
Reviewed-by: Kever Yang <Kever.yang@rock-chips.com>
include/debug_uart.h

index 34e8b2fc810170ec54cb7176cb2155b696f3d144..cd70ae1a0447703e7f57021ee1ed910a97d83712 100644 (file)
@@ -104,6 +104,13 @@ void printhex4(uint value);
  */
 void printhex8(uint value);
 
+/**
+ * printdec() - Output a decimalism value
+ *
+ * @value:     Value to output
+ */
+void printdec(uint value);
+
 #ifdef CONFIG_DEBUG_UART_ANNOUNCE
 #define _DEBUG_UART_ANNOUNCE   printascii("<debug_uart> ");
 #else
@@ -170,6 +177,18 @@ void printhex8(uint value);
        { \
                printhex(value, 8); \
        } \
+\
+       void printdec(uint value) \
+       { \
+               if (value > 10) { \
+                       printdec(value / 10); \
+                       value %= 10; \
+               } else if (value == 10) { \
+                       _debug_uart_putc('1'); \
+                       value = 0; \
+               } \
+               _debug_uart_putc('0' + value); \
+       } \
 \
        void debug_uart_init(void) \
        { \