aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ixgbe/ixgbe_osdep.h
diff options
context:
space:
mode:
authorSteven Hartland <smh@FreeBSD.org>2016-01-25 16:18:53 +0000
committerSteven Hartland <smh@FreeBSD.org>2016-01-25 16:18:53 +0000
commit94241c6011483ad7aef133e9a00148489d28e51e (patch)
tree8a7c5eef6a112f3d3efd369278edc47cd8d06159 /sys/dev/ixgbe/ixgbe_osdep.h
parent3593a18a9103f21782eb2eabc63fe3bca38fdeaa (diff)
Notes
Diffstat (limited to 'sys/dev/ixgbe/ixgbe_osdep.h')
-rw-r--r--sys/dev/ixgbe/ixgbe_osdep.h29
1 files changed, 26 insertions, 3 deletions
diff --git a/sys/dev/ixgbe/ixgbe_osdep.h b/sys/dev/ixgbe/ixgbe_osdep.h
index b767e7375259e..79d11665ee10f 100644
--- a/sys/dev/ixgbe/ixgbe_osdep.h
+++ b/sys/dev/ixgbe/ixgbe_osdep.h
@@ -57,6 +57,15 @@
#define ASSERT(x) if(!(x)) panic("IXGBE: x")
#define EWARN(H, W, S) printf(W)
+enum {
+ IXGBE_ERROR_SOFTWARE,
+ IXGBE_ERROR_POLLING,
+ IXGBE_ERROR_INVALID_STATE,
+ IXGBE_ERROR_UNSUPPORTED,
+ IXGBE_ERROR_ARGUMENT,
+ IXGBE_ERROR_CAUTION,
+};
+
/* The happy-fun DELAY macro is defined in /usr/src/sys/i386/include/clock.h */
#define usec_delay(x) DELAY(x)
#define msec_delay(x) DELAY(1000*(x))
@@ -73,9 +82,23 @@
#define DEBUGOUT5(S,A,B,C,D,E) printf(S "\n",A,B,C,D,E)
#define DEBUGOUT6(S,A,B,C,D,E,F) printf(S "\n",A,B,C,D,E,F)
#define DEBUGOUT7(S,A,B,C,D,E,F,G) printf(S "\n",A,B,C,D,E,F,G)
- #define ERROR_REPORT1(S,A) printf(S "\n",A)
- #define ERROR_REPORT2(S,A,B) printf(S "\n",A,B)
- #define ERROR_REPORT3(S,A,B,C) printf(S "\n",A,B,C)
+ #define ERROR_REPORT1 ERROR_REPORT
+ #define ERROR_REPORT2 ERROR_REPORT
+ #define ERROR_REPORT3 ERROR_REPORT
+ #define ERROR_REPORT(level, format, arg...) do { \
+ switch (level) { \
+ case IXGBE_ERROR_SOFTWARE: \
+ case IXGBE_ERROR_CAUTION: \
+ case IXGBE_ERROR_POLLING: \
+ case IXGBE_ERROR_INVALID_STATE: \
+ case IXGBE_ERROR_UNSUPPORTED: \
+ case IXGBE_ERROR_ARGUMENT: \
+ device_printf(ixgbe_dev_from_hw(hw), format, ## arg); \
+ break; \
+ default: \
+ break; \
+ } \
+ } while (0)
#else
#define DEBUGOUT(S)
#define DEBUGOUT1(S,A)