#ifndef WILC_WLAN_IF_H
#define WILC_WLAN_IF_H
-/* #define MEMORY_STATIC */
-/* #define USE_OLD_SPI_SW */
-
-#include "wilc_oswrapper.h"
+#include <linux/semaphore.h>
#include "linux_wlan_common.h"
/********************************************
u32 block_size;
} sdio_cmd53_t;
-typedef struct {
- void (*os_debug)(u8 *);
- int (*os_wait)(void *, u32);
-} wilc_wlan_os_func_t;
-
typedef struct {
int io_type;
int (*io_init)(void *);
} u;
} wilc_wlan_io_func_t;
-typedef struct {
- void (*rx_indicate)(u8 *, u32, u32);
- void (*rx_complete)(void);
-} wilc_wlan_net_func_t;
-
-typedef struct {
- void (*mac_indicate)(int);
-} wilc_wlan_indicate_func_t;
#define WILC_MAC_INDICATE_STATUS 0x1
#define WILC_MAC_STATUS_INIT -1
#define WILC_MAC_STATUS_READY 0
typedef struct {
void *os_private;
-
- struct mutex *hif_critical_section;
-
- u32 tx_buffer_size;
- void *txq_critical_section;
-
- void *txq_add_to_head_critical_section;
- void *txq_spin_lock;
-
- void *txq_wait_event;
-
-#if defined(MEMORY_STATIC)
- u32 rx_buffer_size;
-#endif
- void *rxq_critical_section;
-
- struct semaphore *cfg_wait_event;
} wilc_wlan_os_context_t;
typedef struct {
wilc_wlan_os_context_t os_context;
- wilc_wlan_os_func_t os_func;
wilc_wlan_io_func_t io_func;
- wilc_wlan_net_func_t net_func;
- wilc_wlan_indicate_func_t indicate_func;
} wilc_wlan_inp_t;
struct tx_complete_data {
#define WILC_TX_ERR_NO_BUF (-2)
-typedef struct {
- int (*wlan_firmware_download)(const u8 *, u32);
- int (*wlan_start)(void);
- int (*wlan_stop)(void);
- int (*wlan_add_to_tx_que)(void *, u8 *, u32, wilc_tx_complete_func_t);
- int (*wlan_handle_tx_que)(u32 *);
- void (*wlan_handle_rx_isr)(void);
- void (*wlan_cleanup)(void);
- int (*wlan_cfg_set)(int, u32, u8 *, u32, int, u32);
- int (*wlan_cfg_get)(int, u32, int, u32);
- int (*wlan_cfg_get_value)(u32, u8 *, u32);
- int (*wlan_add_mgmt_to_tx_que)(void *, u8 *, u32,
- wilc_tx_complete_func_t);
-} wilc_wlan_oup_t;
-
/********************************************
*
* Wlan Configuration ID
#define INFINITE_SLEEP_TIME ((u32)0xFFFFFFFF)
-#ifdef WILC_PARSE_SCAN_IN_HOST
typedef enum {
SUPP_RATES_IE = 1,
EXT_SUPP_RATES_IE = 50,
WMM_IE = 221,
P2P_IE = 221,
} BEACON_IE;
-#endif
+
typedef enum {
INFRASTRUCTURE = 0,
INDEPENDENT,
WPA2_AES_TKIP = 0x71, /* Aes or Tkip */
} SECURITY_T;
-typedef enum {
+enum AUTHTYPE {
OPEN_SYSTEM = 1,
SHARED_KEY = 2,
ANY = 3,
IEEE8021 = 5
-} AUTHTYPE_T;
+};
typedef enum {
SITE_SURVEY_1CH = 0,
WID_MAX = 0xFFFF
} WID_T;
-int wilc_wlan_init(wilc_wlan_inp_t *inp, wilc_wlan_oup_t *oup);
+int wilc_wlan_init(wilc_wlan_inp_t *inp);
void wilc_bus_set_max_speed(void);
void wilc_bus_set_default_speed(void);
u32 wilc_get_chipid(u8 update);
-extern wilc_wlan_oup_t *gpstrWlanOps;
#endif