fix kernel version detection in switch driver
[openwrt/svn-archive/archive.git] / openwrt / target / linux / package / switch / src / switch-core.h
index c878d47868909e596add44a9ac9fb9ef10bc31c3..9927e851922d78b8d96879a762d2f457bdf3a9a4 100644 (file)
@@ -1,6 +1,7 @@
 #ifndef __SWITCH_CORE_H
 #define __SWITCH_CORE_H
 
 #ifndef __SWITCH_CORE_H
 #define __SWITCH_CORE_H
 
+#include <linux/version.h>
 #include <linux/list.h>
 #define SWITCH_MAX_BUFSZ       4096
 
 #include <linux/list.h>
 #define SWITCH_MAX_BUFSZ       4096
 
@@ -8,6 +9,14 @@
 #define SWITCH_MEDIA_100       2
 #define SWITCH_MEDIA_FD                4
 
 #define SWITCH_MEDIA_100       2
 #define SWITCH_MEDIA_FD                4
 
+#ifndef KERNEL_VERSION
+#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
+#endif
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
+#define LINUX_2_4
+#endif
+
 typedef int (*switch_handler)(char *buf, int nr);
 
 typedef struct {
 typedef int (*switch_handler)(char *buf, int nr);
 
 typedef struct {