qcacmn: Add WIN Driver compilation fix.

Fix compilation errors for WIN driver.

Change-Id: Iae6201b06c3b9931f3f6af78c2e1691755b8bcf7
CRs-Fixed: 981187
This commit is contained in:
Anurag Chouhan
2016-03-21 19:18:37 +05:30
parent 915c270701
commit 85bc91a97b
13 changed files with 123 additions and 141 deletions

View File

@@ -79,7 +79,7 @@
* fall back to using the immediate work queue. * fall back to using the immediate work queue.
*/ */
#define qdf_sysctl_decl(f, ctl, write, filp, buffer, lenp, ppos) \ #define qdf_sysctl_decl(f, ctl, write, filp, buffer, lenp, ppos) \
f(struct ctl_table *ctl, int write, void *buffer, \ f(struct ctl_table *ctl, int32_t write, void *buffer, \
size_t *lenp, loff_t *ppos) size_t *lenp, loff_t *ppos)
#define QDF_SYSCTL_PROC_DOINTVEC(ctl, write, filp, buffer, lenp, ppos) \ #define QDF_SYSCTL_PROC_DOINTVEC(ctl, write, filp, buffer, lenp, ppos) \
@@ -134,10 +134,11 @@ static inline qdf_time_t os_get_timestamp(void)
struct _NIC_DEV; struct _NIC_DEV;
static inline unsigned char *os_malloc(osdev_t pNicDev, static inline unsigned char *os_malloc(osdev_t nic_dev,
unsigned long ulSizeInBytes, int gfp) unsigned long size_in_bytes,
int32_t gfp)
{ {
return qdf_mem_malloc(ulSizeInBytes); return qdf_mem_malloc(size_in_bytes);
} }
#define OS_FREE(_p) qdf_mem_free(_p) #define OS_FREE(_p) qdf_mem_free(_p)

View File

@@ -325,6 +325,8 @@ qdf_nbuf_frag_push_head(qdf_nbuf_t buf,
__qdf_nbuf_frag_push_head(buf, frag_len, frag_vaddr, frag_paddr); __qdf_nbuf_frag_push_head(buf, frag_len, frag_vaddr, frag_paddr);
} }
#define qdf_nbuf_num_frags_init(_nbuf) __qdf_nbuf_num_frags_init((_nbuf))
/* For efficiency, it is the responsibility of the caller to ensure that val /* For efficiency, it is the responsibility of the caller to ensure that val
* is either 0 or 1. * is either 0 or 1.
*/ */
@@ -1178,13 +1180,6 @@ qdf_nbuf_tx_cksum_info(qdf_nbuf_t buf, uint8_t **hdr_off, uint8_t **where)
return __qdf_nbuf_tx_cksum_info(buf, hdr_off, where); return __qdf_nbuf_tx_cksum_info(buf, hdr_off, where);
} }
static inline QDF_STATUS
qdf_nbuf_get_vlan_info(qdf_net_handle_t hdl, qdf_nbuf_t buf,
qdf_net_vlanhdr_t *vlan)
{
return __qdf_nbuf_get_vlan_info(hdl, buf, vlan);
}
static inline void qdf_nbuf_reset_ctxt(__qdf_nbuf_t nbuf) static inline void qdf_nbuf_reset_ctxt(__qdf_nbuf_t nbuf)
{ {
__qdf_nbuf_reset_ctxt(nbuf); __qdf_nbuf_reset_ctxt(nbuf);

View File

@@ -51,33 +51,6 @@ enum qdf_nbuf_exemption_type {
QDF_NBUF_EXEMPT_ON_KEY_MAPPING_KEY_UNAVAILABLE QDF_NBUF_EXEMPT_ON_KEY_MAPPING_KEY_UNAVAILABLE
}; };
/**
* QDF_NET_CMD - These control/get info from the device
*/
#define QDF_NET_CMD(_x) \
QDF_NET_CMD_GET_##_x, \
QDF_NET_CMD_SET_##_x
/**
* qdf_net_cmd_t - Get/Set commands from anet to qdf_drv
*/
typedef enum {
QDF_NET_CMD(LINK_INFO),
QDF_NET_CMD(POLL_INFO),
QDF_NET_CMD(CKSUM_INFO),
QDF_NET_CMD(RING_INFO),
QDF_NET_CMD(MAC_ADDR),
QDF_NET_CMD(MTU),
QDF_NET_CMD_GET_DMA_INFO,
QDF_NET_CMD_GET_OFFLOAD_CAP,
QDF_NET_CMD_GET_STATS,
QDF_NET_CMD_ADD_VID,
QDF_NET_CMD_DEL_VID,
QDF_NET_CMD_SET_MCAST,
QDF_NET_CMD_GET_MCAST_CAP
} qdf_net_cmd_t;
typedef __wsum_t wsum_t; typedef __wsum_t wsum_t;
typedef __in6_addr_t in6_addr_t; typedef __in6_addr_t in6_addr_t;
@@ -93,6 +66,11 @@ typedef __in6_addr_t in6_addr_t;
#define QDF_ETH_TYPE_IPV4 0x0800 /* IPV4 */ #define QDF_ETH_TYPE_IPV4 0x0800 /* IPV4 */
#define QDF_ETH_TYPE_IPV6 0x86dd /* IPV6 */ #define QDF_ETH_TYPE_IPV6 0x86dd /* IPV6 */
typedef struct qdf_net_ethaddr {
uint8_t addr[QDF_NET_ETH_LEN];
} qdf_net_ethaddr_t;
typedef struct { typedef struct {
uint16_t source; uint16_t source;
uint16_t dest; uint16_t dest;
@@ -163,18 +141,6 @@ typedef struct {
*/ */
typedef uint16_t qdf_net_cmd_vid_t ; /*get/set vlan id*/ typedef uint16_t qdf_net_cmd_vid_t ; /*get/set vlan id*/
/**
* qdf_net_devaddr_t - Command for getting general stats from a device
* @num: No. of mcast addresses
* @da_addr: Destination address
*/
typedef struct qdf_net_devaddr {
uint32_t num;
uint8_t *da_addr[QDF_NET_MAX_MCAST_ADDR];
} qdf_net_devaddr_t;
typedef qdf_net_devaddr_t qdf_net_cmd_mcaddr_t;
/** /**
* typedef qdf_nbuf_tx_cksum_t - transmit checksum offload types * typedef qdf_nbuf_tx_cksum_t - transmit checksum offload types
* @QDF_NBUF_TX_CKSUM_NONE: No checksum offload * @QDF_NBUF_TX_CKSUM_NONE: No checksum offload

View File

@@ -72,6 +72,18 @@ typedef enum {
QDF_TRACE_LEVEL_MAX QDF_TRACE_LEVEL_MAX
} QDF_TRACE_LEVEL; } QDF_TRACE_LEVEL;
/*
* Log levels
*/
#define QDF_DEBUG_FUNCTRACE 0x01
#define QDF_DEBUG_LEVEL0 0x02
#define QDF_DEBUG_LEVEL1 0x04
#define QDF_DEBUG_LEVEL2 0x08
#define QDF_DEBUG_LEVEL3 0x10
#define QDF_DEBUG_ERROR 0x20
#define QDF_DEBUG_CFG 0x40
#ifdef CONFIG_MCL
/* By default Data Path module will have all log levels enabled, except debug /* By default Data Path module will have all log levels enabled, except debug
* log level. Debug level will be left up to the framework or user space modules * log level. Debug level will be left up to the framework or user space modules
* to be enabled when issue is detected * to be enabled when issue is detected
@@ -188,17 +200,6 @@ enum QDF_DP_TRACE_ID {
}; };
/*
* Log levels
*/
#define QDF_DEBUG_FUNCTRACE 0x01
#define QDF_DEBUG_LEVEL0 0x02
#define QDF_DEBUG_LEVEL1 0x04
#define QDF_DEBUG_LEVEL2 0x08
#define QDF_DEBUG_LEVEL3 0x10
#define QDF_DEBUG_ERROR 0x20
#define QDF_DEBUG_CFG 0x40
/** /**
* struct qdf_dp_trace_record_s - Describes a record in DP trace * struct qdf_dp_trace_record_s - Describes a record in DP trace
* @time: time when it got stored * @time: time when it got stored
@@ -323,39 +324,10 @@ void qdf_trace_set_value(QDF_MODULE_ID module, QDF_TRACE_LEVEL level,
void qdf_trace_set_module_trace_level(QDF_MODULE_ID module, uint32_t level); void qdf_trace_set_module_trace_level(QDF_MODULE_ID module, uint32_t level);
/* QDF_TRACE is the macro invoked to add trace messages to code. See the
* documenation for qdf_trace_msg() for the parameters etc. for this function.
*
* NOTE: Code QDF_TRACE() macros into the source code. Do not code directly
* to the qdf_trace_msg() function.
*
* NOTE 2: qdf tracing is totally turned off if WLAN_DEBUG is *not* defined.
* This allows us to build 'performance' builds where we can measure performance
* without being bogged down by all the tracing in the code
*/
#ifdef CONFIG_MCL
#if defined(WLAN_DEBUG)
#define QDF_TRACE qdf_trace_msg
#define QDF_TRACE_HEX_DUMP qdf_trace_hex_dump
#else
#define QDF_TRACE(arg ...)
#define QDF_TRACE_HEX_DUMP(arg ...)
#endif
#else
#define QDF_TRACE qdf_trace
#define qdf_trace(log_level, args...) \
do { \
extern int qdf_dbg_mask; \
if (qdf_dbg_mask >= log_level) { \
printk("qdf: "args); \
printk("\n"); \
} \
} while (0)
#endif
void __printf(3, 4) qdf_snprintf(char *str_buffer, unsigned int size, void __printf(3, 4) qdf_snprintf(char *str_buffer, unsigned int size,
char *str_format, ...); char *str_format, ...);
#define QDF_SNPRINTF qdf_snprintf #define QDF_SNPRINTF qdf_snprintf
#endif /* CONFIG_MCL */
#endif /* __QDF_TRACE_H */ #endif /* __QDF_TRACE_H */

View File

@@ -56,20 +56,6 @@ typedef struct qdf_sglist {
#define QDF_MAX_SCATTER __QDF_MAX_SCATTER #define QDF_MAX_SCATTER __QDF_MAX_SCATTER
/**
* QDF_MAX - get maximum of two values
* @_x: 1st arguement
* @_y: 2nd arguement
*/
#define QDF_MAX(_x, _y) (((_x) > (_y)) ? (_x) : (_y))
/**
* QDF_MIN - get minimum of two values
* @_x: 1st arguement
* @_y: 2nd arguement
*/
#define QDF_MIN(_x, _y) (((_x) < (_y)) ? (_x) : (_y))
/** /**
* QDF_SWAP_U16 - swap input u16 value * QDF_SWAP_U16 - swap input u16 value
* @_x: variable to swap * @_x: variable to swap
@@ -229,6 +215,7 @@ typedef void (*qdf_timer_func_t)(void *);
#define qdf_offsetof(type, field) offsetof(type, field) #define qdf_offsetof(type, field) offsetof(type, field)
#ifdef CONFIG_MCL
/** /**
* typedef QDF_MODULE_ID - QDF Module IDs * typedef QDF_MODULE_ID - QDF Module IDs
* @QDF_MODULE_ID_TLSHIM: TLSHIM module ID * @QDF_MODULE_ID_TLSHIM: TLSHIM module ID
@@ -284,12 +271,6 @@ typedef enum {
QDF_MODULE_ID_MAX QDF_MODULE_ID_MAX
} QDF_MODULE_ID; } QDF_MODULE_ID;
#define qdf_print(args...) \
QDF_TRACE(QDF_MODULE_ID_QDF, QDF_TRACE_LEVEL_ERROR, ## args)
#define qdf_vprint __qdf_vprint
#define qdf_snprint __qdf_snprint
/** /**
* enum tQDF_ADAPTER_MODE - Concurrency role. * enum tQDF_ADAPTER_MODE - Concurrency role.
* @QDF_STA_MODE: STA mode * @QDF_STA_MODE: STA mode
@@ -335,6 +316,17 @@ enum tQDF_GLOBAL_CON_MODE {
QDF_GLOBAL_MAX_MODE QDF_GLOBAL_MAX_MODE
}; };
#define qdf_print(args...) \
QDF_TRACE(QDF_MODULE_ID_QDF, QDF_TRACE_LEVEL_ERROR, ## args)
#define qdf_vprint __qdf_vprint
#define qdf_snprint __qdf_snprint
#else
#define qdf_print printk
#endif /* CONFIG_MCL */
#ifdef WLAN_OPEN_P2P_INTERFACE #ifdef WLAN_OPEN_P2P_INTERFACE

View File

@@ -71,6 +71,20 @@
*/ */
#define qdf_target_assert_always(expr) __qdf_target_assert(expr) #define qdf_target_assert_always(expr) __qdf_target_assert(expr)
/**
* QDF_MAX - get maximum of two values
* @_x: 1st arguement
* @_y: 2nd arguement
*/
#define QDF_MAX(_x, _y) (((_x) > (_y)) ? (_x) : (_y))
/**
* QDF_MIN - get minimum of two values
* @_x: 1st arguement
* @_y: 2nd arguement
*/
#define QDF_MIN(_x, _y) (((_x) < (_y)) ? (_x) : (_y))
/** /**
* qdf_status_to_os_return - returns the status to OS. * qdf_status_to_os_return - returns the status to OS.
* @status: enum QDF_STATUS * @status: enum QDF_STATUS

View File

@@ -94,8 +94,8 @@ typedef struct __qdf_mempool_ctxt {
u_int32_t max_elem; u_int32_t max_elem;
u_int32_t free_cnt; u_int32_t free_cnt;
} __qdf_mempool_ctxt_t; } __qdf_mempool_ctxt_t;
#endif
typedef __qdf_mempool_ctxt_t *__qdf_mempool_t; #endif /* __KERNEL__ */
/* typedef for dma_data_direction */ /* typedef for dma_data_direction */
typedef enum dma_data_direction __dma_data_direction; typedef enum dma_data_direction __dma_data_direction;

View File

@@ -39,9 +39,9 @@
#include <linux/dma-mapping.h> #include <linux/dma-mapping.h>
#include <asm/cacheflush.h> #include <asm/cacheflush.h>
#include <qdf_types.h> #include <qdf_types.h>
#include <qdf_net_types.h>
#include <qdf_status.h> #include <qdf_status.h>
#include <qdf_util.h> #include <qdf_util.h>
#include <qdf_net_types.h>
#include <qdf_mem.h> #include <qdf_mem.h>
#include <linux/tcp.h> #include <linux/tcp.h>
#include <qdf_util.h> #include <qdf_util.h>
@@ -473,10 +473,6 @@ void __qdf_nbuf_frag_info(struct sk_buff *skb, qdf_sglist_t *sg);
QDF_STATUS __qdf_nbuf_frag_map( QDF_STATUS __qdf_nbuf_frag_map(
qdf_device_t osdev, __qdf_nbuf_t nbuf, qdf_device_t osdev, __qdf_nbuf_t nbuf,
int offset, qdf_dma_dir_t dir, int cur_frag); int offset, qdf_dma_dir_t dir, int cur_frag);
QDF_STATUS
__qdf_nbuf_get_vlan_info(qdf_net_handle_t hdl, struct sk_buff *skb,
qdf_net_vlanhdr_t *vlan);
#ifdef QCA_PKT_PROTO_TRACE #ifdef QCA_PKT_PROTO_TRACE
void __qdf_nbuf_trace_update(struct sk_buff *buf, char *event_string); void __qdf_nbuf_trace_update(struct sk_buff *buf, char *event_string);

View File

@@ -39,9 +39,41 @@
#define __printf(a, b) #define __printf(a, b)
#endif #endif
#ifdef CONFIG_MCL
/* Include Files */ /* Include Files */
#include <cds_packet.h> #include <cds_packet.h>
/* QDF_TRACE is the macro invoked to add trace messages to code. See the
* documenation for qdf_trace_msg() for the parameters etc. for this function.
*
* NOTE: Code QDF_TRACE() macros into the source code. Do not code directly
* to the qdf_trace_msg() function.
*
* NOTE 2: qdf tracing is totally turned off if WLAN_DEBUG is *not* defined.
* This allows us to build 'performance' builds where we can measure performance
* without being bogged down by all the tracing in the code
*/
#if defined(WLAN_DEBUG)
#define QDF_TRACE qdf_trace_msg
#define QDF_TRACE_HEX_DUMP qdf_trace_hex_dump
#else
#define QDF_TRACE(arg ...)
#define QDF_TRACE_HEX_DUMP(arg ...)
#endif
#else
#define qdf_trace(log_level, args...) \
do { \
extern int qdf_dbg_mask; \
if (qdf_dbg_mask >= log_level) { \
printk("qdf: "args); \
printk("\n"); \
} \
} while (0)
#define QDF_TRACE printk
#endif /* CONFIG_MCL */
#define QDF_ENABLE_TRACING #define QDF_ENABLE_TRACING
#ifdef QDF_ENABLE_TRACING #ifdef QDF_ENABLE_TRACING

View File

@@ -32,6 +32,26 @@
#if !defined(__I_QDF_TYPES_H) #if !defined(__I_QDF_TYPES_H)
#define __I_QDF_TYPES_H #define __I_QDF_TYPES_H
#include <qdf_status.h>
#ifndef __KERNEL__
#define __iomem
#endif
#include <asm/types.h>
#include <asm/byteorder.h>
#include <linux/version.h>
#ifndef __ahdecl
#ifdef __i386__
#define __ahdecl __attribute__((regparm(0)))
#else
#define __ahdecl
#endif
#endif
#ifdef __KERNEL__
#include <generated/autoconf.h>
#include <linux/list.h> #include <linux/list.h>
#include <linux/mutex.h> #include <linux/mutex.h>
#include <linux/types.h> #include <linux/types.h>
@@ -42,17 +62,6 @@
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <linux/version.h> #include <linux/version.h>
#include <asm/div64.h> #include <asm/div64.h>
#include <qdf_status.h>
#ifndef __KERNEL__
#define __iomem
#endif
#include <asm/types.h>
#include <asm/byteorder.h>
#include <linux/version.h>
#ifdef __KERNEL__
#include <generated/autoconf.h>
#include <linux/compiler.h> #include <linux/compiler.h>
#include <linux/dma-mapping.h> #include <linux/dma-mapping.h>
#include <linux/wireless.h> #include <linux/wireless.h>
@@ -69,20 +78,13 @@
typedef unsigned long dma_addr_t; typedef unsigned long dma_addr_t;
#endif #endif
#ifndef __ahdecl
#ifdef __i386__
#define __ahdecl __attribute__((regparm(0)))
#else
#define __ahdecl
#endif
#endif
#define SIOCGIWAP 0 #define SIOCGIWAP 0
#define IWEVCUSTOM 0 #define IWEVCUSTOM 0
#define IWEVREGISTERED 0 #define IWEVREGISTERED 0
#define IWEVEXPIRED 0 #define IWEVEXPIRED 0
#define SIOCGIWSCAN 0 #define SIOCGIWSCAN 0
#define DMA_TO_DEVICE 0 #define DMA_TO_DEVICE 0
#define DMA_BIDIRECTIONAL 0
#define DMA_FROM_DEVICE 0 #define DMA_FROM_DEVICE 0
#define __iomem #define __iomem
#endif /* __KERNEL__ */ #endif /* __KERNEL__ */
@@ -233,7 +235,11 @@ enum __qdf_net_wireless_evcode {
#define __QDF_DMA_BIDIRECTIONAL DMA_BIDIRECTIONAL #define __QDF_DMA_BIDIRECTIONAL DMA_BIDIRECTIONAL
#define __QDF_DMA_TO_DEVICE DMA_TO_DEVICE #define __QDF_DMA_TO_DEVICE DMA_TO_DEVICE
#ifndef __ubicom32__
#define __QDF_DMA_FROM_DEVICE DMA_FROM_DEVICE #define __QDF_DMA_FROM_DEVICE DMA_FROM_DEVICE
#else
#define __QDF_DMA_FROM_DEVICE DMA_TO_DEVICE
#endif
#define __qdf_inline inline #define __qdf_inline inline
/* /*

View File

@@ -36,8 +36,8 @@
#ifdef CONFIG_MCL #ifdef CONFIG_MCL
#include <i_host_diag_core_event.h> #include <i_host_diag_core_event.h>
#include <cds_api.h> #include <cds_api.h>
#endif
#include <ani_global.h> #include <ani_global.h>
#endif
#include <i_qdf_lock.h> #include <i_qdf_lock.h>
#include <hif.h> #include <hif.h>
@@ -382,6 +382,7 @@ QDF_STATUS qdf_wake_lock_destroy(qdf_wake_lock_t *lock)
} }
EXPORT_SYMBOL(qdf_wake_lock_destroy); EXPORT_SYMBOL(qdf_wake_lock_destroy);
#ifdef CONFIG_MCL
/** /**
* qdf_runtime_pm_get() - do a get opperation on the device * qdf_runtime_pm_get() - do a get opperation on the device
* *
@@ -539,6 +540,8 @@ void qdf_runtime_lock_deinit(qdf_runtime_lock_t lock)
} }
EXPORT_SYMBOL(qdf_runtime_lock_deinit); EXPORT_SYMBOL(qdf_runtime_lock_deinit);
#endif /* CONFIG_MCL */
/** /**
* qdf_spinlock_acquire() - acquires a spin lock * qdf_spinlock_acquire() - acquires a spin lock
* @lock: Spin lock to acquire * @lock: Spin lock to acquire

View File

@@ -76,9 +76,11 @@ struct s_qdf_mem_struct {
int qdf_dbg_mask; int qdf_dbg_mask;
qdf_declare_param(qdf_dbg_mask, int); qdf_declare_param(qdf_dbg_mask, int);
EXPORT_SYMBOL(qdf_dbg_mask);
u_int8_t prealloc_disabled = 1; u_int8_t prealloc_disabled = 1;
qdf_declare_param(prealloc_disabled, byte); qdf_declare_param(prealloc_disabled, byte);
EXPORT_SYMBOL(prealloc_disabled);
/** /**
* __qdf_mempool_init() - Create and initialize memory pool * __qdf_mempool_init() - Create and initialize memory pool

View File

@@ -40,6 +40,7 @@
#include <linux/spinlock.h> #include <linux/spinlock.h>
#include <qdf_perf.h> #include <qdf_perf.h>
#ifdef QCA_PERF_PROFILING
qdf_perf_entry_t perf_root = {{0, 0} }; qdf_perf_entry_t perf_root = {{0, 0} };
@@ -193,3 +194,5 @@ void __qdf_perf_end(qdf_perf_id_t id)
api_tbl[entry->type].sample(entry, 1); api_tbl[entry->type].sample(entry, 1);
} }
EXPORT_SYMBOL(__qdf_perf_end); EXPORT_SYMBOL(__qdf_perf_end);
#endif /* QCA_PERF_PROFILING */