From a883c9bcbc8c4c52bed0b093559d48fd20c7d79d Mon Sep 17 00:00:00 2001 From: dak664 Date: Sun, 13 Mar 2011 11:57:39 -0400 Subject: [PATCH] Add PRINTA so direct calls to debug routines will always print --- core/net/uip-debug.c | 15 +++++++-------- core/net/uip-debug.h | 13 +++++++++---- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/core/net/uip-debug.c b/core/net/uip-debug.c index 60ec30f86..bc611f383 100644 --- a/core/net/uip-debug.c +++ b/core/net/uip-debug.c @@ -26,7 +26,6 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: uip-debug.c,v 1.1 2010/04/30 13:20:57 joxe Exp $ */ /** @@ -39,7 +38,7 @@ */ #include "net/uip-debug.h" -#include + /*---------------------------------------------------------------------------*/ void uip_debug_ipaddr_print(const uip_ipaddr_t *addr) @@ -52,19 +51,19 @@ uip_debug_ipaddr_print(const uip_ipaddr_t *addr) a = (addr->u8[i] << 8) + addr->u8[i + 1]; if(a == 0 && f >= 0) { if(f++ == 0) { - printf("::"); + PRINTA("::"); } } else { if(f > 0) { f = -1; } else if(i > 0) { - printf(":"); + PRINTA(":"); } - printf("%x", a); + PRINTA("%x", a); } } #else /* UIP_CONF_IPV6 */ - printf("%u.%u.%u.%u", addr->u8[0], addr->u8[1], addr->u8[2], addr->u8[3]); + PRINTA("%u.%u.%u.%u", addr->u8[0], addr->u8[1], addr->u8[2], addr->u8[3]); #endif /* UIP_CONF_IPV6 */ } /*---------------------------------------------------------------------------*/ @@ -74,9 +73,9 @@ uip_debug_lladdr_print(const uip_lladdr_t *addr) unsigned int i; for(i = 0; i < sizeof(uip_lladdr_t); i++) { if(i > 0) { - printf(":"); + PRINTA(":"); } - printf("%02x", addr->addr[i]); + PRINTA("%02x", addr->addr[i]); } } /*---------------------------------------------------------------------------*/ diff --git a/core/net/uip-debug.h b/core/net/uip-debug.h index 7ee280156..8015c03f1 100644 --- a/core/net/uip-debug.h +++ b/core/net/uip-debug.h @@ -43,6 +43,7 @@ #define UIP_DEBUG_H #include "net/uip.h" +#include void uip_debug_ipaddr_print(const uip_ipaddr_t *addr); void uip_debug_lladdr_print(const uip_lladdr_t *addr); @@ -52,10 +53,16 @@ void uip_debug_lladdr_print(const uip_lladdr_t *addr); #define DEBUG_ANNOTATE 2 #define DEBUG_FULL DEBUG_ANNOTATE | DEBUG_PRINT -#if (DEBUG) & DEBUG_ANNOTATE -#include +/* PRINTA will always print if the debug routines are called directly */ #ifdef __AVR__ #include +#define PRINTA(FORMAT,args...) printf_P(PSTR(FORMAT),##args) +#else +#define PRINTA(...) printf(__VA_ARGS__) +#endif + +#if (DEBUG) & DEBUG_ANNOTATE +#ifdef __AVR__ #define ANNOTATE(FORMAT,args...) printf_P(PSTR(FORMAT),##args) #else #define ANNOTATE(...) printf(__VA_ARGS__) @@ -65,9 +72,7 @@ void uip_debug_lladdr_print(const uip_lladdr_t *addr); #endif /* (DEBUG) & DEBUG_ANNOTATE */ #if (DEBUG) & DEBUG_PRINT -#include #ifdef __AVR__ -#include #define PRINTF(FORMAT,args...) printf_P(PSTR(FORMAT),##args) #else #define PRINTF(...) printf(__VA_ARGS__)