diff options
author | ntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2008-02-18 14:32:43 +0000 |
---|---|---|
committer | ntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2008-02-18 14:32:43 +0000 |
commit | a92d27afb0733f6280088bd79b048cbd87a2a0c4 (patch) | |
tree | dde6a6285965d2d4f68de044c04d64c121496542 /src/helper/log.h | |
parent | cf9646bda691ce39bd113383dc24c878de8d9c39 (diff) | |
download | riscv-openocd-a92d27afb0733f6280088bd79b048cbd87a2a0c4.zip riscv-openocd-a92d27afb0733f6280088bd79b048cbd87a2a0c4.tar.gz riscv-openocd-a92d27afb0733f6280088bd79b048cbd87a2a0c4.tar.bz2 |
- Added a "User:" debug level. These are messages that are intended for the user and are part of normal operation.
- Faster DEBUG/INFO() when they are disabled
- target_read/write_buffer() now uses 16 and 32 bit access for single word aligned requests. Other requests are serviced as quickly as possible.
- *much* faster read/write GDB packets, removing timeout problems.
- GDB read/write packets w/single word aligned 32/16 bit access now use 32/16 bit word access.
- working area can now be changed on the fly. Provides a way to move working area about as MMU is enabled/disabled.
- cleaned up error messages for verify_image.
Thanks Øyvind Harboe
git-svn-id: svn://svn.berlios.de/openocd/trunk@302 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/helper/log.h')
-rw-r--r-- | src/helper/log.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/helper/log.h b/src/helper/log.h index 09bc3a1..ab32760 100644 --- a/src/helper/log.h +++ b/src/helper/log.h @@ -26,6 +26,9 @@ #include <stdarg.h> /* logging priorities + * LOG_USER - user messages. Could be anything from information + * to progress messags. These messages do not represent + * incorrect or unexpected behaviour, just normal execution. * LOG_ERROR - fatal errors, that are likely to cause program abort * LOG_WARNING - non-fatal errors, that may be resolved later * LOG_INFO - state information, etc. @@ -33,6 +36,7 @@ */ enum log_levels { + LOG_USER = -1, LOG_ERROR = 0, LOG_WARNING = 1, LOG_INFO = 2, @@ -53,13 +57,16 @@ extern void log_setCallback(logCallback callback, void *priv); extern int debug_level; +/* Avoid fn call and building parameter list if we're not outputting the information. + * Matters on feeble CPUs for DEBUG/INFO statements that are involved frequently */ + #define DEBUG(expr ...) \ - do { \ + do { if (debug_level >= LOG_DEBUG) \ log_printf (LOG_DEBUG, __FILE__, __LINE__, __FUNCTION__, expr); \ } while(0) #define INFO(expr ...) \ - do { \ + do { if (debug_level >= LOG_INFO) \ log_printf (LOG_INFO, __FILE__, __LINE__, __FUNCTION__, expr); \ } while(0) @@ -73,6 +80,12 @@ extern int debug_level; log_printf (LOG_ERROR, __FILE__, __LINE__, __FUNCTION__, expr); \ } while(0) +#define USER(expr ...) \ + do { \ + log_printf (LOG_USER, __FILE__, __LINE__, __FUNCTION__, expr); \ + } while(0) + + /* general failures * error codes < 100 */ |