master/slave.h
changeset 2037 ea0319750e13
parent 1921 d9cf40facbc4
child 2045 ff2a13a4603c
--- a/master/slave.h	Thu Jan 06 17:19:15 2011 +0100
+++ b/master/slave.h	Wed Jan 12 14:56:53 2011 +0100
@@ -59,9 +59,19 @@
  * \param fmt format string (like in printf())
  * \param args arguments (optional)
  */
+#ifdef USE_TRACE_PRINTK
+#define EC_SLAVE_INFO(slave, fmt, args...) \
+    do { \
+        __trace_printk(_THIS_IP_,"EtherCAT %u-%u: " fmt, slave->master->index, \
+                slave->ring_position, ##args); \
+        printk(KERN_INFO "EtherCAT %u-%u: " fmt, slave->master->index, \
+                slave->ring_position, ##args);  \
+    } while (0)
+#else
 #define EC_SLAVE_INFO(slave, fmt, args...) \
     printk(KERN_INFO "EtherCAT %u-%u: " fmt, slave->master->index, \
             slave->ring_position, ##args)
+#endif
 
 /** Convenience macro for printing slave-specific errors to syslog.
  *
@@ -73,9 +83,19 @@
  * \param fmt format string (like in printf())
  * \param args arguments (optional)
  */
+#ifdef USE_TRACE_PRINTK
+#define EC_SLAVE_ERR(slave, fmt, args...) \
+    do { \
+        __trace_printk(_THIS_IP_,"EtherCAT ERROR %u-%u: " fmt, slave->master->index, \
+                slave->ring_position, ##args); \
+        printk(KERN_ERR "EtherCAT ERROR %u-%u: " fmt, slave->master->index, \
+                slave->ring_position, ##args);  \
+    } while (0)
+#else
 #define EC_SLAVE_ERR(slave, fmt, args...) \
     printk(KERN_ERR "EtherCAT ERROR %u-%u: " fmt, slave->master->index, \
             slave->ring_position, ##args)
+#endif
 
 /** Convenience macro for printing slave-specific warnings to syslog.
  *
@@ -87,9 +107,19 @@
  * \param fmt format string (like in printf())
  * \param args arguments (optional)
  */
+#ifdef USE_TRACE_PRINTK
+#define EC_SLAVE_WARN(slave, fmt, args...) \
+    do { \
+        __trace_printk(_THIS_IP_,"EtherCAT WARNING %u-%u: " fmt, \
+                slave->master->index, slave->ring_position, ##args); \
+        printk(KERN_WARNING "EtherCAT WARNING %u-%u: " fmt, \
+                slave->master->index, slave->ring_position, ##args);    \
+    } while (0)
+#else
 #define EC_SLAVE_WARN(slave, fmt, args...) \
     printk(KERN_WARNING "EtherCAT WARNING %u-%u: " fmt, \
             slave->master->index, slave->ring_position, ##args)
+#endif
 
 /** Convenience macro for printing slave-specific debug messages to syslog.
  *
@@ -101,13 +131,25 @@
  * \param fmt format string (like in printf())
  * \param args arguments (optional)
  */
+#ifdef USE_TRACE_PRINTK
 #define EC_SLAVE_DBG(slave, level, fmt, args...) \
     do { \
+        __trace_printk(_THIS_IP_,"EtherCAT DEBUG%u %u-%u: " fmt, \
+            level,slave->master->index, slave->ring_position, ##args); \
         if (slave->master->debug_level >= level) { \
             printk(KERN_DEBUG "EtherCAT DEBUG %u-%u: " fmt, \
                     slave->master->index, slave->ring_position, ##args); \
         } \
     } while (0)
+#else
+#define EC_SLAVE_DBG(slave, level, fmt, args...) \
+    do { \
+        if (slave->master->debug_level >= level) { \
+            printk(KERN_DEBUG "EtherCAT DEBUG %u-%u: " fmt, \
+                    slave->master->index, slave->ring_position, ##args); \
+        } \
+    } while (0)
+#endif
 
 /*****************************************************************************/