Overhaul kdump().
[bertos.git] / bertos / drv / kdebug.c
index d929bbbf2cd611ca8adcb0210481f80127cdb655..9c210343bc149f03235032d68ff3dc90d7a80aa7 100644 (file)
  *
  * Copyright 2003, 2004, 2005, 2006, 2007 Develer S.r.l. (http://www.develer.com/)
  * Copyright 2000, 2001, 2002 Bernie Innocenti <bernie@codewiz.org>
- *
  * -->
  *
  * \brief General pourpose debug support for embedded systems (implementation).
  *
- * \version $Id$
  * \author Bernie Innocenti <bernie@codewiz.org>
  * \author Stefano Fedrigo <aleph@develer.com>
  */
@@ -43,7 +41,6 @@
 #include <cfg/debug.h>
 #include <cfg/os.h>
 
-#include <cpu/irq.h>
 #include <cpu/attr.h>
 #include <cpu/types.h>
 
@@ -277,8 +274,14 @@ void kdump(const void *_buf, size_t len)
 {
        const unsigned char *buf = (const unsigned char *)_buf;
 
+       kprintf("Dumping buffer at addr [%p], %z bytes", buf, len);
+       size_t i=0;
        while (len--)
-               kprintf("%02X", *buf++);
+       {
+               if ((i % 16) == 0)
+                       kputs("\n");
+               kprintf("%02X ", *buf++);
+       }
        kputchar('\n');
 }