diff options
Diffstat (limited to 'drivers/staging/csr/unifi_sme.h')
-rw-r--r-- | drivers/staging/csr/unifi_sme.h | 245 |
1 files changed, 0 insertions, 245 deletions
diff --git a/drivers/staging/csr/unifi_sme.h b/drivers/staging/csr/unifi_sme.h deleted file mode 100644 index aff9aa178124..000000000000 --- a/drivers/staging/csr/unifi_sme.h +++ /dev/null @@ -1,245 +0,0 @@ -/* - * *************************************************************************** - * FILE: unifi_sme.h - * - * PURPOSE: SME related definitions. - * - * Copyright (C) 2007-2011 by Cambridge Silicon Radio Ltd. - * - * Refer to LICENSE.txt included with this source code for details on - * the license terms. - * - * *************************************************************************** - */ -#ifndef __LINUX_UNIFI_SME_H__ -#define __LINUX_UNIFI_SME_H__ 1 - -#include <linux/kernel.h> - -#ifdef CSR_SME_USERSPACE -#include "sme_userspace.h" -#endif - -#include "csr_wifi_sme_lib.h" - -typedef int unifi_data_port_action; - -typedef struct unifi_port_cfg -{ - /* TRUE if this port entry is allocated */ - u8 in_use; - CsrWifiRouterCtrlPortAction port_action; - CsrWifiMacAddress mac_address; -} unifi_port_cfg_t; - -#define UNIFI_MAX_CONNECTIONS 8 -#define UNIFI_MAX_RETRY_LIMIT 5 -#define UF_DATA_PORT_NOT_OVERIDE 0 -#define UF_DATA_PORT_OVERIDE 1 - -typedef struct unifi_port_config -{ - int entries_in_use; - int overide_action; - unifi_port_cfg_t port_cfg[UNIFI_MAX_CONNECTIONS]; -} unifi_port_config_t; - - -enum sme_request_status { - SME_REQUEST_EMPTY, - SME_REQUEST_PENDING, - SME_REQUEST_RECEIVED, - SME_REQUEST_TIMEDOUT, - SME_REQUEST_CANCELLED, -}; - -/* Structure to hold a UDI logged signal */ -typedef struct { - - /* The current status of the request */ - enum sme_request_status request_status; - - /* The status the SME has passed to us */ - CsrResult reply_status; - - /* SME's reply to a get request */ - CsrWifiSmeVersions versions; - CsrWifiSmePowerConfig powerConfig; - CsrWifiSmeHostConfig hostConfig; - CsrWifiSmeStaConfig staConfig; - CsrWifiSmeDeviceConfig deviceConfig; - CsrWifiSmeCoexInfo coexInfo; - CsrWifiSmeCoexConfig coexConfig; - CsrWifiSmeMibConfig mibConfig; - CsrWifiSmeConnectionInfo connectionInfo; - CsrWifiSmeConnectionConfig connectionConfig; - CsrWifiSmeConnectionStats connectionStats; - - - /* SME's reply to a scan request */ - u16 reply_scan_results_count; - CsrWifiSmeScanResult* reply_scan_results; - -} sme_reply_t; - - -typedef struct { - u16 appHandle; - CsrWifiRouterEncapsulation encapsulation; - u16 protocol; - u8 oui[3]; - u8 in_use; -} sme_ma_unidata_ind_filter_t; - - -CsrWifiRouterCtrlPortAction uf_sme_port_state(unifi_priv_t *priv, - unsigned char *address, - int queue, - u16 interfaceTag); -unifi_port_cfg_t *uf_sme_port_config_handle(unifi_priv_t *priv, - unsigned char *address, - int queue, - u16 interfaceTag); - - - -/* Callback for event logging to SME clients */ -void sme_log_event(ul_client_t *client, const u8 *signal, int signal_len, - const bulk_data_param_t *bulkdata, int dir); - -/* The workqueue task to the set the multicast addresses list */ -void uf_multicast_list_wq(struct work_struct *work); - -/* The workqueue task to execute the TA module */ -void uf_ta_wq(struct work_struct *work); - - -/* - * SME blocking helper functions - */ -#ifdef UNIFI_DEBUG -# define sme_complete_request(priv, status) uf_sme_complete_request(priv, status, __func__) -#else -# define sme_complete_request(priv, status) uf_sme_complete_request(priv, status, NULL) -#endif - -void uf_sme_complete_request(unifi_priv_t *priv, CsrResult reply_status, const char *func); -void uf_sme_cancel_request(unifi_priv_t *priv, CsrResult reply_status); - - -/* - * Blocking functions using the SME SYS API. - */ -int sme_sys_suspend(unifi_priv_t *priv); -int sme_sys_resume(unifi_priv_t *priv); - - -/* - * Traffic Analysis workqueue jobs - */ -void uf_ta_ind_wq(struct work_struct *work); -void uf_ta_sample_ind_wq(struct work_struct *work); - -/* - * SME config workqueue job - */ -void uf_sme_config_wq(struct work_struct *work); - -/* - * To send M4 read to send IND - */ -void uf_send_m4_ready_wq(struct work_struct *work); - -#if (defined(CSR_WIFI_SECURITY_WAPI_ENABLE) && defined(CSR_WIFI_SECURITY_WAPI_SW_ENCRYPTION)) -/* - * To send data pkt to Sme for encryption - */ -void uf_send_pkt_to_encrypt(struct work_struct *work); -#endif - -int sme_mgt_power_config_set(unifi_priv_t *priv, CsrWifiSmePowerConfig *powerConfig); -int sme_mgt_power_config_get(unifi_priv_t *priv, CsrWifiSmePowerConfig *powerConfig); -int sme_mgt_host_config_set(unifi_priv_t *priv, CsrWifiSmeHostConfig *hostConfig); -int sme_mgt_host_config_get(unifi_priv_t *priv, CsrWifiSmeHostConfig *hostConfig); -int sme_mgt_sme_config_set(unifi_priv_t *priv, CsrWifiSmeStaConfig *staConfig, CsrWifiSmeDeviceConfig *deviceConfig); -int sme_mgt_sme_config_get(unifi_priv_t *priv, CsrWifiSmeStaConfig *staConfig, CsrWifiSmeDeviceConfig *deviceConfig); -int sme_mgt_coex_info_get(unifi_priv_t *priv, CsrWifiSmeCoexInfo *coexInfo); -int sme_mgt_packet_filter_set(unifi_priv_t *priv); -int sme_mgt_tspec(unifi_priv_t *priv, CsrWifiSmeListAction action, - u32 tid, CsrWifiSmeDataBlock *tspec, CsrWifiSmeDataBlock *tclas); - -#ifdef CSR_SUPPORT_WEXT -/* - * Blocking functions using the SME MGT API. - */ -int sme_mgt_wifi_on(unifi_priv_t *priv); -int sme_mgt_wifi_off(unifi_priv_t *priv); -/*int sme_mgt_set_value_async(unifi_priv_t *priv, unifi_AppValue *app_value); -int sme_mgt_get_value_async(unifi_priv_t *priv, unifi_AppValue *app_value); -int sme_mgt_get_value(unifi_priv_t *priv, unifi_AppValue *app_value); -int sme_mgt_set_value(unifi_priv_t *priv, unifi_AppValue *app_value); -*/ -int sme_mgt_coex_config_set(unifi_priv_t *priv, CsrWifiSmeCoexConfig *coexConfig); -int sme_mgt_coex_config_get(unifi_priv_t *priv, CsrWifiSmeCoexConfig *coexConfig); -int sme_mgt_mib_config_set(unifi_priv_t *priv, CsrWifiSmeMibConfig *mibConfig); -int sme_mgt_mib_config_get(unifi_priv_t *priv, CsrWifiSmeMibConfig *mibConfig); - -int sme_mgt_connection_info_set(unifi_priv_t *priv, CsrWifiSmeConnectionInfo *connectionInfo); -int sme_mgt_connection_info_get(unifi_priv_t *priv, CsrWifiSmeConnectionInfo *connectionInfo); -int sme_mgt_connection_config_set(unifi_priv_t *priv, CsrWifiSmeConnectionConfig *connectionConfig); -int sme_mgt_connection_config_get(unifi_priv_t *priv, CsrWifiSmeConnectionConfig *connectionConfig); -int sme_mgt_connection_stats_get(unifi_priv_t *priv, CsrWifiSmeConnectionStats *connectionStats); - -int sme_mgt_versions_get(unifi_priv_t *priv, CsrWifiSmeVersions *versions); - - -int sme_mgt_scan_full(unifi_priv_t *priv, CsrWifiSsid *specific_ssid, - int num_channels, unsigned char *channel_list); -int sme_mgt_scan_results_get_async(unifi_priv_t *priv, - struct iw_request_info *info, - char *scan_results, - long scan_results_len); -int sme_mgt_disconnect(unifi_priv_t *priv); -int sme_mgt_connect(unifi_priv_t *priv); -int sme_mgt_key(unifi_priv_t *priv, CsrWifiSmeKey *sme_key, - CsrWifiSmeListAction action); -int sme_mgt_pmkid(unifi_priv_t *priv, CsrWifiSmeListAction action, - CsrWifiSmePmkidList *pmkid_list); -int sme_mgt_mib_get(unifi_priv_t *priv, - unsigned char *varbind, int *length); -int sme_mgt_mib_set(unifi_priv_t *priv, - unsigned char *varbind, int length); -#ifdef CSR_SUPPORT_WEXT_AP -int sme_ap_start(unifi_priv_t *priv, u16 interface_tag, CsrWifiSmeApConfig_t *ap_config); -int sme_ap_stop(unifi_priv_t *priv, u16 interface_tag); -int sme_ap_config(unifi_priv_t *priv, CsrWifiSmeApMacConfig *ap_mac_config, CsrWifiNmeApConfig *group_security_config); -int uf_configure_supported_rates(u8 * supportedRates, u8 phySupportedBitmap); -#endif -int unifi_translate_scan(struct net_device *dev, - struct iw_request_info *info, - char *current_ev, char *end_buf, - CsrWifiSmeScanResult *scan_data, - int scan_index); - -#endif /* CSR_SUPPORT_WEXT */ - -int unifi_cfg_power(unifi_priv_t *priv, unsigned char *arg); -int unifi_cfg_power_save(unifi_priv_t *priv, unsigned char *arg); -int unifi_cfg_power_supply(unifi_priv_t *priv, unsigned char *arg); -int unifi_cfg_packet_filters(unifi_priv_t *priv, unsigned char *arg); -int unifi_cfg_wmm_qos_info(unifi_priv_t *priv, unsigned char *arg); -int unifi_cfg_wmm_addts(unifi_priv_t *priv, unsigned char *arg); -int unifi_cfg_wmm_delts(unifi_priv_t *priv, unsigned char *arg); -int unifi_cfg_get_info(unifi_priv_t *priv, unsigned char *arg); -int unifi_cfg_strict_draft_n(unifi_priv_t *priv, unsigned char *arg); -int unifi_cfg_enable_okc(unifi_priv_t *priv, unsigned char *arg); -#ifdef CSR_SUPPORT_WEXT_AP -int unifi_cfg_set_ap_config(unifi_priv_t * priv, unsigned char* arg); -#endif - - - -int convert_sme_error(CsrResult error); - - -#endif /* __LINUX_UNIFI_SME_H__ */ |