/***** Critical section *****/
/* Declare for critical section */
#ifndef ZM_HALPLUS_LOCK
-#define zmw_get_wlan_dev(dev) struct zsWlanDev *wd = (struct zsWlanDev*) ((((struct usbdrv_private*)dev->priv)->wd))
+#define zmw_get_wlan_dev(dev) struct zsWlanDev *wd = (struct zsWlanDev *) \
+ ((((struct usbdrv_private *)dev->priv)->wd))
#define zmw_declare_for_critical_section() unsigned long irqFlag;
/* Enter critical section */
-#define zmw_enter_critical_section(dev) \
- spin_lock_irqsave(&(((struct usbdrv_private *)(dev->priv))->cs_lock), irqFlag);
+#define zmw_enter_critical_section(dev) spin_lock_irqsave( \
+ &(((struct usbdrv_private *)(dev->priv))->cs_lock), irqFlag);
/* leave critical section */
#define zmw_leave_critical_section(dev) \
- spin_unlock_irqrestore(&(((struct usbdrv_private *)(dev->priv))->cs_lock), irqFlag);
+ spin_unlock_irqrestore(&(((struct usbdrv_private *) \
+ (dev->priv))->cs_lock), irqFlag);
#else
#define zmw_get_wlan_dev(dev) struct zsWlanDev *wd = zfwGetWlanDev(dev);
#define zmw_declare_for_critical_section()
/* Enter critical section */
-#define zmw_enter_critical_section(dev) \
- zfwEnterCriticalSection(dev);
+#define zmw_enter_critical_section(dev) zfwEnterCriticalSection(dev);
/* leave critical section */
-#define zmw_leave_critical_section(dev) \
- zfwLeaveCriticalSection(dev);
+#define zmw_leave_critical_section(dev) zfwLeaveCriticalSection(dev);
#endif
/***** Byte order converting *****/
#ifdef ZM_CONFIG_BIG_ENDIAN
-#define zmw_cpu_to_le32(v) (((v & 0xff000000) >> 24) | \
- ((v & 0x00ff0000) >> 8) | \
- ((v & 0x0000ff00) << 8) | \
- ((v & 0x000000ff) << 24))
+#define zmw_cpu_to_le32(v) (((v & 0xff000000) >> 24) | \
+ ((v & 0x00ff0000) >> 8) | \
+ ((v & 0x0000ff00) << 8) | \
+ ((v & 0x000000ff) << 24))
-#define zmw_le32_to_cpu(v) (((v & 0xff000000) >> 24) | \
- ((v & 0x00ff0000) >> 8) | \
- ((v & 0x0000ff00) << 8) | \
- ((v & 0x000000ff) << 24))
+#define zmw_le32_to_cpu(v) (((v & 0xff000000) >> 24) | \
+ ((v & 0x00ff0000) >> 8) | \
+ ((v & 0x0000ff00) << 8) | \
+ ((v & 0x000000ff) << 24))
#define zmw_cpu_to_le16(v) (((v & 0xff00) >> 8) | \
- ((v & 0x00ff) << 8))
+ ((v & 0x00ff) << 8))
#define zmw_le16_to_cpu(v) (((v & 0xff00) >> 8) | \
- ((v & 0x00ff) << 8))
+ ((v & 0x00ff) << 8))
#else
#define zmw_cpu_to_le32(v) (v)
#define zmw_le32_to_cpu(v) (v)
/* Called to read/write buffer */
#ifndef ZM_HALPLUS_LOCK
-#define zmw_buf_readb(dev, buf, offset) *(u8_t*)((u8_t*)buf->data+offset)
-#define zmw_buf_readh(dev, buf, offset) zmw_cpu_to_le16(*(u16_t*)((u8_t*)buf->data+offset))
-#define zmw_buf_writeb(dev, buf, offset, value) *(u8_t*)((u8_t*)buf->data+offset) = value
-#define zmw_buf_writeh(dev, buf, offset, value) *(u16_t*)((u8_t*)buf->data+offset) = zmw_cpu_to_le16(value)
-#define zmw_buf_get_buffer(dev, buf) (u8_t*)(buf->data)
+#define zmw_buf_readb(dev, buf, offset) (*(u8_t *)((u8_t *)buf->data+offset))
+#define zmw_buf_readh(dev, buf, offset) zmw_cpu_to_le16(*(u16_t *) \
+ ((u8_t *)buf->data+offset))
+#define zmw_buf_writeb(dev, buf, offset, value) (*(u8_t *) \
+ ((u8_t *)buf->data+offset) = value)
+#define zmw_buf_writeh(dev, buf, offset, value) (*(u16_t *) \
+ ((u8_t *)buf->data+offset) = zmw_cpu_to_le16(value))
+#define zmw_buf_get_buffer(dev, buf) (u8_t *)(buf->data)
#else
#define zmw_buf_readb(dev, buf, offset) zfwBufReadByte(dev, buf, offset)
#define zmw_buf_readh(dev, buf, offset) zfwBufReadHalfWord(dev, buf, offset)
-#define zmw_buf_writeb(dev, buf, offset, value) zfwBufWriteByte(dev, buf, offset, value)
-#define zmw_buf_writeh(dev, buf, offset, value) zfwBufWriteHalfWord(dev, buf, offset, value)
+#define zmw_buf_writeb(dev, buf, offset, value) \
+ zfwBufWriteByte(dev, buf, offset, value)
+#define zmw_buf_writeh(dev, buf, offset, value) \
+ zfwBufWriteHalfWord(dev, buf, offset, value)
#define zmw_buf_get_buffer(dev, buf) zfwGetBuffer(dev, buf)
#endif
/***** Debug message *****/
#if 0
-#define zm_debug_msg0(msg) printk("%s:%s\n", __func__, msg);
-#define zm_debug_msg1(msg, val) printk("%s:%s%ld\n", __func__, \
- msg, (u32_t)val);
-#define zm_debug_msg2(msg, val) printk("%s:%s%lxh\n", __func__, \
- msg, (u32_t)val);
-#define zm_debug_msg_s(msg, val) printk("%s:%s%s\n", __func__, \
- msg, val);
-#define zm_debug_msg_p(msg, val1, val2) printk("%s:%s%01ld.%02ld\n", __func__, \
- msg, (val1/val2), (((val1*100)/val2)%100));
+#define zm_debug_msg0(msg) printk(KERN_DEBUG "%s:%s\n", __func__, msg);
+#define zm_debug_msg1(msg, val) printk(KERN_DEBUG "%s:%s%ld\n", __func__, \
+ msg, (u32_t)val);
+#define zm_debug_msg2(msg, val) printk(KERN_DEBUG "%s:%s%lxh\n", __func__, \
+ msg, (u32_t)val);
+#define zm_debug_msg_s(msg, val) printk(KERN_DEBUG "%s:%s%s\n", __func__, \
+ msg, val);
+#define zm_debug_msg_p(msg, val1, val2) do { \
+ printk(KERN_DEBUG "%s:%s%01ld.%02ld\n", \
+ __func__, \
+ msg, (val1/val2), (((val1*100)/val2)%100));
+ } while (0)
#define zm_dbg(S) printk S
#else
#define zm_debug_msg0(msg)
#define zm_dbg(S)
#endif
-#define zm_assert(expr) if(!(expr)) { \
- printk( "Atheors Assertion failed! %s,%s,%s,line=%d\n", \
- #expr,__FILE__,__func__,__LINE__); \
- }
+#define zm_assert(expr) if (!(expr)) { \
+ printk(KERN_ERR "Atheors Assertion failed! %s, %s, %s,line=%d\n",\
+ #expr, __FILE__, __func__, __LINE__); \
+ }
#define DbgPrint printk
#include "oal_dt.h"
#include "oal_marc.h"
#include "80211core/pub_zfi.h"
-//#include "pub_zfw.h"
+/* #include "pub_zfw.h" */
#include "80211core/pub_usb.h"
#include <linux/usb.h>
#define ZM_MAX_RX_URB_NUM 16
#define ZM_MAX_TX_BUF_NUM 128
-typedef struct UsbTxQ
-{
+typedef struct UsbTxQ {
zbuf_t *buf;
u8_t hdr[80];
u16_t hdrlen;
struct zdap_ioctl {
- u16_t cmd; /* Command to run */
- u32_t addr; /* Length of the data buffer */
- u32_t value; /* Pointer to the data buffer */
+ u16_t cmd; /* Command to run */
+ u32_t addr; /* Length of the data buffer */
+ u32_t value; /* Pointer to the data buffer */
u8_t data[0x100];
};
#define ZM_OAL_MAX_STA_SUPPORT 16
-struct usbdrv_private
-{
- //linux used
+struct usbdrv_private {
+ /* linux used */
struct net_device *device;
#if (WLAN_HOSTIF == WLAN_PCI)
struct pci_dev *pdev;
#endif
struct driver_stats drv_stats;
char ifname[IFNAMSIZ];
- int using_dac;
+ int using_dac;
u8_t rev_id; /* adapter PCI revision ID */
rwlock_t isolate_lock;
spinlock_t cs_lock;
void *regp;
#endif
- /* timer for heart beat */
+ /* timer for heart beat */
struct timer_list hbTimer10ms;
/* For driver core */
- void* wd;
+ void *wd;
#if (WLAN_HOSTIF == WLAN_USB)
- u8_t txUsbBuf[ZM_MAX_TX_URB_NUM][ZM_USB_TX_BUF_SIZE];
- u8_t regUsbReadBuf[ZM_USB_REG_MAX_BUF_SIZE];
- u8_t regUsbWriteBuf[ZM_USB_REG_MAX_BUF_SIZE];
+ u8_t txUsbBuf[ZM_MAX_TX_URB_NUM][ZM_USB_TX_BUF_SIZE];
+ u8_t regUsbReadBuf[ZM_USB_REG_MAX_BUF_SIZE];
+ u8_t regUsbWriteBuf[ZM_USB_REG_MAX_BUF_SIZE];
urb_t *WlanTxDataUrb[ZM_MAX_TX_URB_NUM];
urb_t *WlanRxDataUrb[ZM_MAX_RX_URB_NUM];
urb_t *RegOutUrb;
urb_t *RegInUrb;
- UsbTxQ_t UsbTxBufQ[ZM_MAX_TX_BUF_NUM];
- zbuf_t *UsbRxBufQ[ZM_MAX_RX_URB_NUM];
- u16_t TxBufHead;
- u16_t TxBufTail;
- u16_t TxBufCnt;
- u16_t TxUrbHead;
- u16_t TxUrbTail;
- u16_t TxUrbCnt;
- u16_t RxBufHead;
- u16_t RxBufTail;
- u16_t RxBufCnt;
+ UsbTxQ_t UsbTxBufQ[ZM_MAX_TX_BUF_NUM];
+ zbuf_t *UsbRxBufQ[ZM_MAX_RX_URB_NUM];
+ u16_t TxBufHead;
+ u16_t TxBufTail;
+ u16_t TxBufCnt;
+ u16_t TxUrbHead;
+ u16_t TxUrbTail;
+ u16_t TxUrbCnt;
+ u16_t RxBufHead;
+ u16_t RxBufTail;
+ u16_t RxBufCnt;
#endif
#if ZM_USB_STREAM_MODE == 1
- zbuf_t *reamin_buf;
+ zbuf_t *reamin_buf;
#endif
#ifdef ZM_HOSTAPD_SUPPORT
- struct athr_wlan_param athr_wpa_req;
+ struct athr_wlan_param athr_wpa_req;
#endif
- struct sock *netlink_sk;
- u8_t DeviceOpened; //CWYang(+)
- u8_t supIe[50];
- u8_t supLen;
- struct ieee80211req_wpaie stawpaie[ZM_OAL_MAX_STA_SUPPORT];
- u8_t forwardMgmt;
-
- struct zfCbUsbFuncTbl usbCbFunctions;
-
- /* For keventd */
- u32_t flags;
- unsigned long kevent_flags;
- u16_t kevent_ready;
-
- struct semaphore ioctl_sem;
- struct work_struct kevent;
- wait_queue_head_t wait_queue_event;
+ struct sock *netlink_sk;
+ u8_t DeviceOpened; /* CWYang(+) */
+ u8_t supIe[50];
+ u8_t supLen;
+ struct ieee80211req_wpaie stawpaie[ZM_OAL_MAX_STA_SUPPORT];
+ u8_t forwardMgmt;
+
+ struct zfCbUsbFuncTbl usbCbFunctions;
+
+ /* For keventd */
+ u32_t flags;
+ unsigned long kevent_flags;
+ u16_t kevent_ready;
+
+ struct semaphore ioctl_sem;
+ struct work_struct kevent;
+ wait_queue_head_t wait_queue_event;
#ifdef ZM_HALPLUS_LOCK
- unsigned long hal_irqFlag;
+ unsigned long hal_irqFlag;
#endif
- u16_t adapterState;
+ u16_t adapterState;
};
/* WDS */
#define ZM_WDS_PORT_NUMBER 6
-struct zsWdsStruct
-{
- struct net_device* dev;
+struct zsWdsStruct {
+ struct net_device *dev;
u16_t openFlag;
};
/* VAP */
#define ZM_VAP_PORT_NUMBER 7
-struct zsVapStruct
-{
- struct net_device* dev;
+struct zsVapStruct {
+ struct net_device *dev;
u16_t openFlag;
};
#define ZM_IOCTL_RXD_DUMP 0x07
#define ZM_IOCTL_MEM_READ 0x0B
#define ZM_IOCTL_MEM_WRITE 0x0C
-#define ZM_IOCTL_DMA_TEST 0x10
-#define ZM_IOCTL_REG_TEST 0x11
-#define ZM_IOCTL_TEST 0x80
-#define ZM_IOCTL_TALLY 0x81 //CWYang(+)
-#define ZM_IOCTL_RTS 0xA0
-#define ZM_IOCTL_MIX_MODE 0xA1
-#define ZM_IOCTL_FRAG 0xA2
-#define ZM_IOCTL_SCAN 0xA3
-#define ZM_IOCTL_KEY 0xA4
-#define ZM_IOCTL_RATE 0xA5
-#define ZM_IOCTL_ENCRYPTION_MODE 0xA6
-#define ZM_IOCTL_GET_TXCNT 0xA7
-#define ZM_IOCTL_GET_DEAGG_CNT 0xA8
-#define ZM_IOCTL_DURATION_MODE 0xA9
-#define ZM_IOCTL_SET_AES_KEY 0xAA
-#define ZM_IOCTL_SET_AES_MODE 0xAB
-#define ZM_IOCTL_SIGNAL_STRENGTH 0xAC //CWYang(+)
-#define ZM_IOCTL_SIGNAL_QUALITY 0xAD //CWYang(+)
-#define ZM_IOCTL_SET_PIBSS_MODE 0xAE
+#define ZM_IOCTL_DMA_TEST 0x10
+#define ZM_IOCTL_REG_TEST 0x11
+#define ZM_IOCTL_TEST 0x80
+#define ZM_IOCTL_TALLY 0x81 /* CWYang(+) */
+#define ZM_IOCTL_RTS 0xA0
+#define ZM_IOCTL_MIX_MODE 0xA1
+#define ZM_IOCTL_FRAG 0xA2
+#define ZM_IOCTL_SCAN 0xA3
+#define ZM_IOCTL_KEY 0xA4
+#define ZM_IOCTL_RATE 0xA5
+#define ZM_IOCTL_ENCRYPTION_MODE 0xA6
+#define ZM_IOCTL_GET_TXCNT 0xA7
+#define ZM_IOCTL_GET_DEAGG_CNT 0xA8
+#define ZM_IOCTL_DURATION_MODE 0xA9
+#define ZM_IOCTL_SET_AES_KEY 0xAA
+#define ZM_IOCTL_SET_AES_MODE 0xAB
+#define ZM_IOCTL_SIGNAL_STRENGTH 0xAC /* CWYang(+) */
+#define ZM_IOCTL_SIGNAL_QUALITY 0xAD /* CWYang(+) */
+#define ZM_IOCTL_SET_PIBSS_MODE 0xAE
#define ZDAPIOCTL SIOCDEVPRIVATE