📄 wlan_compat.h
字号:
#define WLAN_LOG_INFO4(x,n1,n2,n3,n4) printk(KERN_INFO x, (n1), (n2), (n3), (n4)); #define WLAN_LOG_INFO5(x,n1,n2,n3,n4,n5) printk(KERN_INFO x, (n1), (n2), (n3), (n4), (n5)); #if defined(WLAN_INCLUDE_DEBUG) #define WLAN_ASSERT(c) if ((!(c)) && WLAN_DBVAR >= 1) { \ WLAN_LOG_DEBUG0(1, "Assertion failure!\n"); } #define WLAN_HEX_DUMP( l, x, p, n) if( WLAN_DBVAR >= (l) ){ \ int __i__; \ printk(KERN_DEBUG x ":"); \ for( __i__=0; __i__ < (n); __i__++) \ printk( " %02x", ((UINT8*)(p))[__i__]); \ printk("\n"); } #define DBFENTER { if ( WLAN_DBVAR >= 4 ){ WLAN_LOG_DEBUG0(3,"Enter\n"); } } #define DBFEXIT { if ( WLAN_DBVAR >= 4 ){ WLAN_LOG_DEBUG0(3,"Exit\n"); } } #define WLAN_LOG_DEBUG0(l,x) if ( WLAN_DBVAR >= (l)) printk(KERN_DEBUG "%s: " x , __FUNCTION__ ); #define WLAN_LOG_DEBUG1(l,x,n) if ( WLAN_DBVAR >= (l)) printk(KERN_DEBUG "%s: " x , __FUNCTION__ , (n)); #define WLAN_LOG_DEBUG2(l,x,n1,n2) if ( WLAN_DBVAR >= (l)) printk(KERN_DEBUG "%s: " x , __FUNCTION__ , (n1), (n2)); #define WLAN_LOG_DEBUG3(l,x,n1,n2,n3) if ( WLAN_DBVAR >= (l)) printk(KERN_DEBUG "%s: " x , __FUNCTION__ , (n1), (n2), (n3)); #define WLAN_LOG_DEBUG4(l,x,n1,n2,n3,n4) if ( WLAN_DBVAR >= (l)) printk(KERN_DEBUG "%s: " x , __FUNCTION__ , (n1), (n2), (n3), (n4)); #define WLAN_LOG_DEBUG5(l,x,n1,n2,n3,n4,n5) if ( WLAN_DBVAR >= (l)) printk(KERN_DEBUG "%s: " x , __FUNCTION__ , (n1), (n2), (n3), (n4), (n5)); #define WLAN_LOG_DEBUG6(l,x,n1,n2,n3,n4,n5,n6) if ( WLAN_DBVAR >= (l)) printk(KERN_DEBUG "%s: " x , __FUNCTION__ , (n1), (n2), (n3), (n4), (n5), (n6)); #else #define WLAN_ASSERT(c) #define WLAN_HEX_DUMP( l, s, p, n) #define DBFENTER #define DBFEXIT #define WLAN_LOG_DEBUG0(l, s) #define WLAN_LOG_DEBUG1(l, s,n) #define WLAN_LOG_DEBUG2(l, s,n1,n2) #define WLAN_LOG_DEBUG3(l, s,n1,n2,n3) #define WLAN_LOG_DEBUG4(l, s,n1,n2,n3,n4) #define WLAN_LOG_DEBUG5(l, s,n1,n2,n3,n4,n5) #endif#else #define WLAN_LOG_ERROR0(s) #define WLAN_LOG_ERROR1(s,n) #define WLAN_LOG_ERROR2(s,n1,n2) #define WLAN_LOG_ERROR3(s,n1,n2,n3) #define WLAN_LOG_ERROR4(s,n1,n2,n3,n4) #define WLAN_LOG_WARNING0(s) #define WLAN_LOG_WARNING1(s,n) #define WLAN_LOG_WARNING2(s,n1,n2) #define WLAN_LOG_WARNING3(s,n1,n2,n3) #define WLAN_LOG_WARNING4(s,n1,n2,n3,n4) #define WLAN_LOG_NOTICE0(s) #define WLAN_LOG_NOTICE1(s,n) #define WLAN_LOG_NOTICE2(s,n1,n2) #define WLAN_LOG_NOTICE3(s,n1,n2,n3) #define WLAN_LOG_NOTICE4(s,n1,n2,n3,n4) #define WLAN_ASSERT(c) #define WLAN_HEX_DUMP( l, s, p, n) #define DBFENTER #define DBFEXIT #define WLAN_LOG_INFO0(s) #define WLAN_LOG_INFO1(s,n) #define WLAN_LOG_INFO2(s,n1,n2) #define WLAN_LOG_INFO3(s,n1,n2,n3) #define WLAN_LOG_INFO4(s,n1,n2,n3,n4) #define WLAN_LOG_INFO5(s,n1,n2,n3,n4,n5) #define WLAN_LOG_DEBUG0(l, s) #define WLAN_LOG_DEBUG1(l, s,n) #define WLAN_LOG_DEBUG2(l, s,n1,n2) #define WLAN_LOG_DEBUG3(l, s,n1,n2,n3) #define WLAN_LOG_DEBUG4(l, s,n1,n2,n3,n4) #define WLAN_LOG_DEBUG5(l, s,n1,n2,n3,n4,n5)#endif#define wlan_ms_per_tick (1000UL / (wlan_ticks_per_sec))#define wlan_ms_to_ticks(n) ( (n) / (wlan_ms_per_tick))#define wlan_tu2ticks(n) ( (n) / (wlan_ms_per_tick))#define WLAN_INT_DISABLE(n) { save_flags((n)); cli(); }#define WLAN_INT_ENABLE(n) { sti(); restore_flags((n)); }#ifdef CONFIG_MODVERSIONS#define MODVERSIONS 1#include <linux/modversions.h>#endif#ifdef CONFIG_SMP#define __SMP__ 1#endif #ifndef KERNEL_VERSION#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))#endif#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,17))#define CONFIG_NETLINK 1#endif#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0))#define kfree_s(a, b) kfree((a))#endif#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,2,18))#ifndef init_waitqueue_head#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,0,16))#define init_waitqueue_head(p) (*(p) = NULL)#else#define init_waitqueue_head(p) init_waitqueue(p)#endiftypedef struct wait_queue *wait_queue_head_t;typedef struct wait_queue wait_queue_t;#define set_current_state(b) { current->state = (b); mb(); }#define init_waitqueue_entry(a, b) { (a)->task = current; }#endif#endif#ifndef wait_event_interruptible_timeout// retval == 0; signal met; we're good.// retval < 0; interrupted by signal.// retval > 0; timed out.#define __wait_event_interruptible_timeout(wq, condition, timeout, ret) \do { \ int __ret = 0; \ if (!(condition)) { \ wait_queue_t __wait; \ unsigned long expire; \ init_waitqueue_entry(&__wait, current); \ \ expire = timeout + jiffies; \ add_wait_queue(&wq, &__wait); \ for (;;) { \ set_current_state(TASK_INTERRUPTIBLE); \ if (condition) \ break; \ if (jiffies > expire) { \ ret = jiffies - expire; \ break; \ } \ if (!signal_pending(current)) { \ schedule_timeout(timeout); \ continue; \ } \ ret = -ERESTARTSYS; \ break; \ } \ set_current_state(TASK_RUNNING); \ remove_wait_queue(&wq, &__wait); \ } \} while (0)#define wait_event_interruptible_timeout(wq, condition, timeout) \({ \ int __ret = 0; \ if (!(condition)) \ __wait_event_interruptible_timeout(wq, condition, \ timeout, __ret); \ __ret; \})#endif#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,1,90))#define spin_lock(l) do { } while (0)#define spin_unlock(l) do { } while (0)#define spin_lock_irqsave(l,f) do { save_flags(f); cli(); } while (0)#define spin_unlock_irqrestore(l,f) do { restore_flags(f); } while (0)#define spin_lock_init(s) do { } while (0)#define spin_trylock(l) (1)typedef int spinlock_t;#endif#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,4,0))#ifdef CONFIG_SMP#define spin_is_locked(x) (*(volatile char *)(&(x)->lock) <= 0)#else#define spin_is_locked(l) (0)#endif#endif#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,3,38))typedef struct device netdevice_t;#elif (LINUX_VERSION_CODE < KERNEL_VERSION(2,4,4))typedef struct net_device netdevice_t;#else#undef netdevice_ttypedef struct net_device netdevice_t;#endif#ifdef WIRELESS_EXT#if (WIRELESS_EXT < 13)struct iw_request_info{ __u16 cmd; /* Wireless Extension command */ __u16 flags; /* More to come ;-) */};#endif#endif#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,1,18))#define MODULE_PARM(a,b) extern int __bogus_decl#define MODULE_AUTHOR(a) extern int __bogus_decl#define MODULE_DESCRIPTION(a) extern int __bogus_decl#define MODULE_SUPPORTED_DEVICE(a) extern int __bogus_decl#undef GET_USE_COUNT#define GET_USE_COUNT(m) mod_use_count_#endif#ifndef MODULE_LICENSE#define MODULE_LICENSE(m) extern int __bogus_decl#endif/* TODO: Do we care about this? */#ifndef MODULE_DEVICE_TABLE#define MODULE_DEVICE_TABLE(foo,bar)#endif#define wlan_minutes2ticks(a) ((a)*(wlan_ticks_per_sec * 60))#define wlan_seconds2ticks(a) ((a)*(wlan_ticks_per_sec))/*=============================================================*//*------ Hardware Portability Macros --------------------------*//*=============================================================*/#define ieee2host16(n) __le16_to_cpu(n)#define ieee2host32(n) __le32_to_cpu(n)#define host2ieee16(n) __cpu_to_le16(n)#define host2ieee32(n) __cpu_to_le32(n)#if (WLAN_CPU_FAMILY == WLAN_PPC) #define wlan_inw(a) in_be16((unsigned short *)((a)+_IO_BASE)) #define wlan_inw_le16_to_cpu(a) inw((a)) #define wlan_outw(v,a) out_be16((unsigned short *)((a)+_IO_BASE), (v)) #define wlan_outw_cpu_to_le16(v,a) outw((v),(a))#else #define wlan_inw(a) inw((a)) #define wlan_inw_le16_to_cpu(a) __cpu_to_le16(inw((a))) #define wlan_outw(v,a) outw((v),(a)) #define wlan_outw_cpu_to_le16(v,a) outw(__cpu_to_le16((v)),(a))#endif/*=============================================================*//*--- General Macros ------------------------------------------*//*=============================================================*/#define wlan_max(a, b) (((a) > (b)) ? (a) : (b))#define wlan_min(a, b) (((a) < (b)) ? (a) : (b))#define wlan_isprint(c) (((c) > (0x19)) && ((c) < (0x7f)))#define wlan_hexchar(x) (((x) < 0x0a) ? ('0' + (x)) : ('a' + ((x) - 0x0a)))/* Create a string of printable chars from something that might not be *//* It's recommended that the str be 4*len + 1 bytes long */#define wlan_mkprintstr(buf, buflen, str, strlen) \{ \ int i = 0; \ int j = 0; \ memset(str, 0, (strlen)); \ for (i = 0; i < (buflen); i++) { \ if ( wlan_isprint((buf)[i]) ) { \ (str)[j] = (buf)[i]; \ j++; \ } else { \ (str)[j] = '\\'; \ (str)[j+1] = 'x'; \ (str)[j+2] = wlan_hexchar(((buf)[i] & 0xf0) >> 4); \ (str)[j+3] = wlan_hexchar(((buf)[i] & 0x0f)); \ j += 4; \ } \ } \}/*=============================================================*//*--- Variables -----------------------------------------------*//*=============================================================*/extern int wlan_debug;extern int wlan_ethconv; /* What's the default ethconv? *//*=============================================================*//*--- Functions -----------------------------------------------*//*=============================================================*/#endif /* _WLAN_COMPAT_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -