summaryrefslogtreecommitdiffstats
path: root/drivers/staging/csr/csr_wifi_nme_prim.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/csr/csr_wifi_nme_prim.h')
-rw-r--r--drivers/staging/csr/csr_wifi_nme_prim.h1657
1 files changed, 0 insertions, 1657 deletions
diff --git a/drivers/staging/csr/csr_wifi_nme_prim.h b/drivers/staging/csr/csr_wifi_nme_prim.h
deleted file mode 100644
index 9a7927a117ea..000000000000
--- a/drivers/staging/csr/csr_wifi_nme_prim.h
+++ /dev/null
@@ -1,1657 +0,0 @@
-/*****************************************************************************
-
- (c) Cambridge Silicon Radio Limited 2011
- All rights reserved and confidential information of CSR
-
- Refer to LICENSE.txt included with this source for details
- on the license terms.
-
-*****************************************************************************/
-
-/* Note: this is an auto-generated file. */
-
-#ifndef CSR_WIFI_NME_PRIM_H__
-#define CSR_WIFI_NME_PRIM_H__
-
-#include <linux/types.h>
-#include "csr_prim_defs.h"
-#include "csr_sched.h"
-#include "csr_wifi_common.h"
-#include "csr_result.h"
-#include "csr_wifi_fsm_event.h"
-#include "csr_wifi_sme_prim.h"
-
-#ifndef CSR_WIFI_NME_ENABLE
-#error CSR_WIFI_NME_ENABLE MUST be defined inorder to use csr_wifi_nme_prim.h
-#endif
-
-#define CSR_WIFI_NME_PRIM (0x0424)
-
-typedef CsrPrim CsrWifiNmePrim;
-
-typedef void (*CsrWifiNmeFrameFreeFunction)(void *frame);
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeAuthMode
-
- DESCRIPTION
- WiFi Authentication Mode
-
- VALUES
- CSR_WIFI_NME_AUTH_MODE_80211_OPEN
- - Connects to an open system network (i.e. no authentication,
- no encryption) or to a WEP enabled network.
- CSR_WIFI_NME_AUTH_MODE_80211_SHARED
- - Connect to a WEP enabled network.
- CSR_WIFI_NME_AUTH_MODE_8021X_WPA
- - Connects to a WPA Enterprise enabled network.
- CSR_WIFI_NME_AUTH_MODE_8021X_WPAPSK
- - Connects to a WPA with Pre-Shared Key enabled network.
- CSR_WIFI_NME_AUTH_MODE_8021X_WPA2
- - Connects to a WPA2 Enterprise enabled network.
- CSR_WIFI_NME_AUTH_MODE_8021X_WPA2PSK
- - Connects to a WPA2 with Pre-Shared Key enabled network.
- CSR_WIFI_NME_AUTH_MODE_8021X_CCKM
- - Connects to a CCKM enabled network.
- CSR_WIFI_NME_AUTH_MODE_WAPI_WAI
- - Connects to a WAPI Enterprise enabled network.
- CSR_WIFI_NME_AUTH_MODE_WAPI_WAIPSK
- - Connects to a WAPI with Pre-Shared Key enabled network.
- CSR_WIFI_NME_AUTH_MODE_8021X_OTHER1X
- - For future use.
-
-*******************************************************************************/
-typedef u16 CsrWifiNmeAuthMode;
-#define CSR_WIFI_NME_AUTH_MODE_80211_OPEN ((CsrWifiNmeAuthMode) 0x0001)
-#define CSR_WIFI_NME_AUTH_MODE_80211_SHARED ((CsrWifiNmeAuthMode) 0x0002)
-#define CSR_WIFI_NME_AUTH_MODE_8021X_WPA ((CsrWifiNmeAuthMode) 0x0004)
-#define CSR_WIFI_NME_AUTH_MODE_8021X_WPAPSK ((CsrWifiNmeAuthMode) 0x0008)
-#define CSR_WIFI_NME_AUTH_MODE_8021X_WPA2 ((CsrWifiNmeAuthMode) 0x0010)
-#define CSR_WIFI_NME_AUTH_MODE_8021X_WPA2PSK ((CsrWifiNmeAuthMode) 0x0020)
-#define CSR_WIFI_NME_AUTH_MODE_8021X_CCKM ((CsrWifiNmeAuthMode) 0x0040)
-#define CSR_WIFI_NME_AUTH_MODE_WAPI_WAI ((CsrWifiNmeAuthMode) 0x0080)
-#define CSR_WIFI_NME_AUTH_MODE_WAPI_WAIPSK ((CsrWifiNmeAuthMode) 0x0100)
-#define CSR_WIFI_NME_AUTH_MODE_8021X_OTHER1X ((CsrWifiNmeAuthMode) 0x0200)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeBssType
-
- DESCRIPTION
- Type of BSS
-
- VALUES
- CSR_WIFI_NME_BSS_TYPE_INFRASTRUCTURE
- - Infrastructure BSS type where access to the network is via
- one or several Access Points.
- CSR_WIFI_NME_BSS_TYPE_ADHOC
- - Adhoc or Independent BSS Type where one Station acts as a
- host and future stations can join the adhoc network without
- needing an access point.
- CSR_WIFI_NME_BSS_TYPE_RESERVED
- - To be in sync with SME.This is not used.
- CSR_WIFI_NME_BSS_TYPE_P2P
- - P2P mode of operation.
-
-*******************************************************************************/
-typedef u8 CsrWifiNmeBssType;
-#define CSR_WIFI_NME_BSS_TYPE_INFRASTRUCTURE ((CsrWifiNmeBssType) 0x00)
-#define CSR_WIFI_NME_BSS_TYPE_ADHOC ((CsrWifiNmeBssType) 0x01)
-#define CSR_WIFI_NME_BSS_TYPE_RESERVED ((CsrWifiNmeBssType) 0x02)
-#define CSR_WIFI_NME_BSS_TYPE_P2P ((CsrWifiNmeBssType) 0x03)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeCcxOptionsMask
-
- DESCRIPTION
- Enumeration type defining possible mask values for setting CCX options.
-
- VALUES
- CSR_WIFI_NME_CCX_OPTION_NONE - No CCX option is set.
- CSR_WIFI_NME_CCX_OPTION_CCKM - CCX option cckm is set.
-
-*******************************************************************************/
-typedef u8 CsrWifiNmeCcxOptionsMask;
-#define CSR_WIFI_NME_CCX_OPTION_NONE ((CsrWifiNmeCcxOptionsMask) 0x00)
-#define CSR_WIFI_NME_CCX_OPTION_CCKM ((CsrWifiNmeCcxOptionsMask) 0x01)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeConfigAction
-
- DESCRIPTION
-
- VALUES
- CSR_WIFI_PIN_ENTRY_PUSH_BUTTON -
- CSR_WIFI_PIN_ENTRY_DISPLAY_PIN -
- CSR_WIFI_PIN_ENTRY_ENTER_PIN -
-
-*******************************************************************************/
-typedef u8 CsrWifiNmeConfigAction;
-#define CSR_WIFI_PIN_ENTRY_PUSH_BUTTON ((CsrWifiNmeConfigAction) 0x00)
-#define CSR_WIFI_PIN_ENTRY_DISPLAY_PIN ((CsrWifiNmeConfigAction) 0x01)
-#define CSR_WIFI_PIN_ENTRY_ENTER_PIN ((CsrWifiNmeConfigAction) 0x02)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeConnectionStatus
-
- DESCRIPTION
- Indicate the NME Connection Status when connecting or when disconnecting
-
- VALUES
- CSR_WIFI_NME_CONNECTION_STATUS_CONNECTION_STATUS_DISCONNECTED
- - NME is disconnected.
- CSR_WIFI_NME_CONNECTION_STATUS_CONNECTION_STATUS_CONNECTING
- - NME is in the process of connecting.
- CSR_WIFI_NME_CONNECTION_STATUS_CONNECTION_STATUS_AUTHENTICATING
- - NME is in the authentication stage of a connection attempt.
- CSR_WIFI_NME_CONNECTION_STATUS_CONNECTION_STATUS_CONNECTED
- - NME is connected.
- CSR_WIFI_NME_CONNECTION_STATUS_CONNECTION_STATUS_DISCONNECTING
- - NME is in the process of disconnecting.
-
-*******************************************************************************/
-typedef u8 CsrWifiNmeConnectionStatus;
-#define CSR_WIFI_NME_CONNECTION_STATUS_CONNECTION_STATUS_DISCONNECTED ((CsrWifiNmeConnectionStatus) 0x00)
-#define CSR_WIFI_NME_CONNECTION_STATUS_CONNECTION_STATUS_CONNECTING ((CsrWifiNmeConnectionStatus) 0x01)
-#define CSR_WIFI_NME_CONNECTION_STATUS_CONNECTION_STATUS_AUTHENTICATING ((CsrWifiNmeConnectionStatus) 0x02)
-#define CSR_WIFI_NME_CONNECTION_STATUS_CONNECTION_STATUS_CONNECTED ((CsrWifiNmeConnectionStatus) 0x03)
-#define CSR_WIFI_NME_CONNECTION_STATUS_CONNECTION_STATUS_DISCONNECTING ((CsrWifiNmeConnectionStatus) 0x04)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeCredentialType
-
- DESCRIPTION
- NME Credential Types
-
- VALUES
- CSR_WIFI_NME_CREDENTIAL_TYPE_OPEN_SYSTEM
- - Credential Type Open System.
- CSR_WIFI_NME_CREDENTIAL_TYPE_WEP64
- - Credential Type WEP-64
- CSR_WIFI_NME_CREDENTIAL_TYPE_WEP128
- - Credential Type WEP-128
- CSR_WIFI_NME_CREDENTIAL_TYPE_WPA_PSK
- - Credential Type WPA Pre-Shared Key
- CSR_WIFI_NME_CREDENTIAL_TYPE_WPA_PASSPHRASE
- - Credential Type WPA pass phrase
- CSR_WIFI_NME_CREDENTIAL_TYPE_WPA2_PSK
- - Credential Type WPA2 Pre-Shared Key.
- CSR_WIFI_NME_CREDENTIAL_TYPE_WPA2_PASSPHRASE
- - Credential Type WPA2 pass phrase
- CSR_WIFI_NME_CREDENTIAL_TYPE_WAPI_PSK
- - Credential Type WAPI Pre-Shared Key.
- CSR_WIFI_NME_CREDENTIAL_TYPE_WAPI_PASSPHRASE
- - Credential Type WAPI pass phrase
- CSR_WIFI_NME_CREDENTIAL_TYPE_WAPI
- - Credential Type WAPI certificates
- CSR_WIFI_NME_CREDENTIAL_TYPE_8021X
- - Credential Type 802.1X: the associated type supports
- FAST/LEAP/TLS/TTLS/PEAP/etc.
-
-*******************************************************************************/
-typedef u16 CsrWifiNmeCredentialType;
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_OPEN_SYSTEM ((CsrWifiNmeCredentialType) 0x0000)
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_WEP64 ((CsrWifiNmeCredentialType) 0x0001)
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_WEP128 ((CsrWifiNmeCredentialType) 0x0002)
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_WPA_PSK ((CsrWifiNmeCredentialType) 0x0003)
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_WPA_PASSPHRASE ((CsrWifiNmeCredentialType) 0x0004)
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_WPA2_PSK ((CsrWifiNmeCredentialType) 0x0005)
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_WPA2_PASSPHRASE ((CsrWifiNmeCredentialType) 0x0006)
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_WAPI_PSK ((CsrWifiNmeCredentialType) 0x0007)
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_WAPI_PASSPHRASE ((CsrWifiNmeCredentialType) 0x0008)
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_WAPI ((CsrWifiNmeCredentialType) 0x0009)
-#define CSR_WIFI_NME_CREDENTIAL_TYPE_8021X ((CsrWifiNmeCredentialType) 0x000A)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeEapMethod
-
- DESCRIPTION
- Outer EAP method with possibly inner method.
-
- VALUES
- CSR_WIFI_NME_EAP_METHOD_TLS
- - EAP-TLS Method.
- CSR_WIFI_NME_EAP_METHOD_TTLS_MSCHAPV2
- - EAP-TTLS Method with MSCHAPV2.
- CSR_WIFI_NME_EAP_METHOD_PEAP_GTC
- - EAP-PEAP Method with GTC.
- CSR_WIFI_NME_EAP_METHOD_PEAP_MSCHAPV2
- - EAP-PEAP Method with MSCHAPV2.
- CSR_WIFI_NME_EAP_METHOD_SIM
- - EAP-SIM Method.
- CSR_WIFI_NME_EAP_METHOD_AKA
- - EAP-AKA Method.
- CSR_WIFI_NME_EAP_METHOD_FAST_GTC
- - EAP-FAST Method with GTC.
- CSR_WIFI_NME_EAP_METHOD_FAST_MSCHAPV2
- - EAP-FAST Method with MSCHAPV2.
- CSR_WIFI_NME_EAP_METHOD_LEAP
- - EAP-LEAP Method.
-
-*******************************************************************************/
-typedef u16 CsrWifiNmeEapMethod;
-#define CSR_WIFI_NME_EAP_METHOD_TLS ((CsrWifiNmeEapMethod) 0x0001)
-#define CSR_WIFI_NME_EAP_METHOD_TTLS_MSCHAPV2 ((CsrWifiNmeEapMethod) 0x0002)
-#define CSR_WIFI_NME_EAP_METHOD_PEAP_GTC ((CsrWifiNmeEapMethod) 0x0004)
-#define CSR_WIFI_NME_EAP_METHOD_PEAP_MSCHAPV2 ((CsrWifiNmeEapMethod) 0x0008)
-#define CSR_WIFI_NME_EAP_METHOD_SIM ((CsrWifiNmeEapMethod) 0x0010)
-#define CSR_WIFI_NME_EAP_METHOD_AKA ((CsrWifiNmeEapMethod) 0x0020)
-#define CSR_WIFI_NME_EAP_METHOD_FAST_GTC ((CsrWifiNmeEapMethod) 0x0040)
-#define CSR_WIFI_NME_EAP_METHOD_FAST_MSCHAPV2 ((CsrWifiNmeEapMethod) 0x0080)
-#define CSR_WIFI_NME_EAP_METHOD_LEAP ((CsrWifiNmeEapMethod) 0x0100)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeEncryption
-
- DESCRIPTION
- WiFi Encryption method
-
- VALUES
- CSR_WIFI_NME_ENCRYPTION_CIPHER_NONE
- - No encryprion set.
- CSR_WIFI_NME_ENCRYPTION_CIPHER_PAIRWISE_WEP40
- - 40 bytes WEP key for peer to peer communication.
- CSR_WIFI_NME_ENCRYPTION_CIPHER_PAIRWISE_WEP104
- - 104 bytes WEP key for peer to peer communication.
- CSR_WIFI_NME_ENCRYPTION_CIPHER_PAIRWISE_TKIP
- - TKIP key for peer to peer communication.
- CSR_WIFI_NME_ENCRYPTION_CIPHER_PAIRWISE_CCMP
- - CCMP key for peer to peer communication.
- CSR_WIFI_NME_ENCRYPTION_CIPHER_PAIRWISE_SMS4
- - SMS4 key for peer to peer communication.
- CSR_WIFI_NME_ENCRYPTION_CIPHER_GROUP_WEP40
- - 40 bytes WEP key for broadcast messages.
- CSR_WIFI_NME_ENCRYPTION_CIPHER_GROUP_WEP104
- - 104 bytes WEP key for broadcast messages.
- CSR_WIFI_NME_ENCRYPTION_CIPHER_GROUP_TKIP
- - TKIP key for broadcast messages.
- CSR_WIFI_NME_ENCRYPTION_CIPHER_GROUP_CCMP
- - CCMP key for broadcast messages
- CSR_WIFI_NME_ENCRYPTION_CIPHER_GROUP_SMS4
- - SMS4 key for broadcast messages.
-
-*******************************************************************************/
-typedef u16 CsrWifiNmeEncryption;
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_NONE ((CsrWifiNmeEncryption) 0x0000)
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_PAIRWISE_WEP40 ((CsrWifiNmeEncryption) 0x0001)
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_PAIRWISE_WEP104 ((CsrWifiNmeEncryption) 0x0002)
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_PAIRWISE_TKIP ((CsrWifiNmeEncryption) 0x0004)
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_PAIRWISE_CCMP ((CsrWifiNmeEncryption) 0x0008)
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_PAIRWISE_SMS4 ((CsrWifiNmeEncryption) 0x0010)
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_GROUP_WEP40 ((CsrWifiNmeEncryption) 0x0020)
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_GROUP_WEP104 ((CsrWifiNmeEncryption) 0x0040)
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_GROUP_TKIP ((CsrWifiNmeEncryption) 0x0080)
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_GROUP_CCMP ((CsrWifiNmeEncryption) 0x0100)
-#define CSR_WIFI_NME_ENCRYPTION_CIPHER_GROUP_SMS4 ((CsrWifiNmeEncryption) 0x0200)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeIndications
-
- DESCRIPTION
- NME indications
-
- VALUES
- CSR_WIFI_NME_INDICATIONS_IND_AP_STATION
- - NME AP Station Indication.
- CSR_WIFI_NME_INDICATIONS_IND_AP_STOP
- - NME AP Stop Indication.
- CSR_WIFI_NME_INDICATIONS_IND_SIM_UMTS_AUTH
- - NME UMTS Authentication Indication.
- CSR_WIFI_NME_INDICATIONS_IND_P2P_GROUP_START
- - NME P2P Group Start Indication.
- CSR_WIFI_NME_INDICATIONS_IND_P2P_GROUP_STATUS
- - NME P2P Group Status Indication.
- CSR_WIFI_NME_INDICATIONS_IND_P2P_GROUP_ROLE
- - NME P2P Group Role Indication.
- CSR_WIFI_NME_INDICATIONS_IND_PROFILE_DISCONNECT
- - NME Profile Disconnect Indication.
- CSR_WIFI_NME_INDICATIONS_IND_PROFILE_UPDATE
- - NME Profile Update Indication.
- CSR_WIFI_NME_INDICATIONS_IND_SIM_IMSI_GET
- - NME GET IMSI Indication.
- CSR_WIFI_NME_INDICATIONS_IND_SIM_GSM_AUTH
- - NME GSM Authentication Indication.
- CSR_WIFI_NME_INDICATIONS_ALL
- - Used to register for all available indications
-
-*******************************************************************************/
-typedef u32 CsrWifiNmeIndications;
-#define CSR_WIFI_NME_INDICATIONS_IND_AP_STATION ((CsrWifiNmeIndications) 0x00100000)
-#define CSR_WIFI_NME_INDICATIONS_IND_AP_STOP ((CsrWifiNmeIndications) 0x00200000)
-#define CSR_WIFI_NME_INDICATIONS_IND_SIM_UMTS_AUTH ((CsrWifiNmeIndications) 0x01000000)
-#define CSR_WIFI_NME_INDICATIONS_IND_P2P_GROUP_START ((CsrWifiNmeIndications) 0x02000000)
-#define CSR_WIFI_NME_INDICATIONS_IND_P2P_GROUP_STATUS ((CsrWifiNmeIndications) 0x04000000)
-#define CSR_WIFI_NME_INDICATIONS_IND_P2P_GROUP_ROLE ((CsrWifiNmeIndications) 0x08000000)
-#define CSR_WIFI_NME_INDICATIONS_IND_PROFILE_DISCONNECT ((CsrWifiNmeIndications) 0x10000000)
-#define CSR_WIFI_NME_INDICATIONS_IND_PROFILE_UPDATE ((CsrWifiNmeIndications) 0x20000000)
-#define CSR_WIFI_NME_INDICATIONS_IND_SIM_IMSI_GET ((CsrWifiNmeIndications) 0x40000000)
-#define CSR_WIFI_NME_INDICATIONS_IND_SIM_GSM_AUTH ((CsrWifiNmeIndications) 0x80000000)
-#define CSR_WIFI_NME_INDICATIONS_ALL ((CsrWifiNmeIndications) 0xFFFFFFFF)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeSecError
-
- DESCRIPTION
- NME Security Errors
- place holder for the security library abort reason
-
- VALUES
- CSR_WIFI_NME_SEC_ERROR_SEC_ERROR_UNKNOWN
- - Unknown Security Error.
-
-*******************************************************************************/
-typedef u8 CsrWifiNmeSecError;
-#define CSR_WIFI_NME_SEC_ERROR_SEC_ERROR_UNKNOWN ((CsrWifiNmeSecError) 0x00)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeSimCardType
-
- DESCRIPTION
- (U)SIM Card (or UICC) types
-
- VALUES
- CSR_WIFI_NME_SIM_CARD_TYPE_2G - 2G SIM card, capable of performing GSM
- authentication only.
- CSR_WIFI_NME_SIM_CARD_TYPE_3G - UICC supporting USIM application, capable
- of performing UMTS authentication only.
- CSR_WIFI_NME_SIM_CARD_TYPE_2G3G - UICC supporting both USIM and SIM
- applications, capable of performing both
- UMTS and GSM authentications.
-
-*******************************************************************************/
-typedef u8 CsrWifiNmeSimCardType;
-#define CSR_WIFI_NME_SIM_CARD_TYPE_2G ((CsrWifiNmeSimCardType) 0x01)
-#define CSR_WIFI_NME_SIM_CARD_TYPE_3G ((CsrWifiNmeSimCardType) 0x02)
-#define CSR_WIFI_NME_SIM_CARD_TYPE_2G3G ((CsrWifiNmeSimCardType) 0x03)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeUmtsAuthResult
-
- DESCRIPTION
- Only relevant for UMTS Authentication. It indicates if the UICC has
- successfully authenticated the network or otherwise.
-
- VALUES
- CSR_WIFI_NME_UMTS_AUTH_RESULT_SUCCESS
- - Successful outcome from USIM indicating that the card has
- successfully authenticated the network.
- CSR_WIFI_NME_UMTS_AUTH_RESULT_SYNC_FAIL
- - Unsuccessful outcome from USIM indicating that the card is
- requesting the network to synchronise and re-try again. If
- no further request is received an NME timer will expire and
- the authentication is aborted.
- CSR_WIFI_NME_UMTS_AUTH_RESULT_REJECT
- - Unsuccessful outcome from USIM indicating that the card has
- rejected the network and that the authentication is
- aborted.
-
-*******************************************************************************/
-typedef u8 CsrWifiNmeUmtsAuthResult;
-#define CSR_WIFI_NME_UMTS_AUTH_RESULT_SUCCESS ((CsrWifiNmeUmtsAuthResult) 0x00)
-#define CSR_WIFI_NME_UMTS_AUTH_RESULT_SYNC_FAIL ((CsrWifiNmeUmtsAuthResult) 0x01)
-#define CSR_WIFI_NME_UMTS_AUTH_RESULT_REJECT ((CsrWifiNmeUmtsAuthResult) 0x02)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWmmQosInfo
-
- DESCRIPTION
- Defines bits for the QoS Info octect as defined in the WMM specification.
- The values of this type are used across the NME/SME/Router API's and they
- must be kept consistent with the corresponding types in the .xml of the
- other interfaces
-
- VALUES
- CSR_WIFI_NME_WMM_QOS_INFO_AC_MAX_SP_ALL
- - WMM AP may deliver all buffered frames.
- CSR_WIFI_NME_WMM_QOS_INFO_AC_VO
- - To enable the triggering and delivery of QoS Voice.
- CSR_WIFI_NME_WMM_QOS_INFO_AC_VI
- - To enable the triggering and delivery of QoS Video.
- CSR_WIFI_NME_WMM_QOS_INFO_AC_BK
- - To enable the triggering and delivery of QoS Background.
- CSR_WIFI_NME_WMM_QOS_INFO_AC_BE
- - To enable the triggering and delivery of QoS Best Effort.
- CSR_WIFI_NME_WMM_QOS_INFO_AC_MAX_SP_TWO
- - WMM AP may deliver a maximum of 2 buffered frames per
- Unscheduled Service Period (USP).
- CSR_WIFI_NME_WMM_QOS_INFO_AC_MAX_SP_FOUR
- - WMM AP may deliver a maximum of 4 buffered frames per USP.
- CSR_WIFI_NME_WMM_QOS_INFO_AC_MAX_SP_SIX
- - WMM AP may deliver a maximum of 6 buffered frames per USP.
-
-*******************************************************************************/
-typedef u8 CsrWifiNmeWmmQosInfo;
-#define CSR_WIFI_NME_WMM_QOS_INFO_AC_MAX_SP_ALL ((CsrWifiNmeWmmQosInfo) 0x00)
-#define CSR_WIFI_NME_WMM_QOS_INFO_AC_VO ((CsrWifiNmeWmmQosInfo) 0x01)
-#define CSR_WIFI_NME_WMM_QOS_INFO_AC_VI ((CsrWifiNmeWmmQosInfo) 0x02)
-#define CSR_WIFI_NME_WMM_QOS_INFO_AC_BK ((CsrWifiNmeWmmQosInfo) 0x04)
-#define CSR_WIFI_NME_WMM_QOS_INFO_AC_BE ((CsrWifiNmeWmmQosInfo) 0x08)
-#define CSR_WIFI_NME_WMM_QOS_INFO_AC_MAX_SP_TWO ((CsrWifiNmeWmmQosInfo) 0x20)
-#define CSR_WIFI_NME_WMM_QOS_INFO_AC_MAX_SP_FOUR ((CsrWifiNmeWmmQosInfo) 0x40)
-#define CSR_WIFI_NME_WMM_QOS_INFO_AC_MAX_SP_SIX ((CsrWifiNmeWmmQosInfo) 0x60)
-
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeEapMethodMask
-
- DESCRIPTION
- Mask type for use with the values defined by CsrWifiNmeEapMethod.
-
-*******************************************************************************/
-typedef u16 CsrWifiNmeEapMethodMask;
-/*******************************************************************************
-
- NAME
- CsrWifiNmeEncryptionMask
-
- DESCRIPTION
- Mask type for use with the values defined by CsrWifiNmeEncryption
-
-*******************************************************************************/
-typedef u16 CsrWifiNmeEncryptionMask;
-/*******************************************************************************
-
- NAME
- CsrWifiNmeIndicationsMask
-
- DESCRIPTION
- Mask type for use with the values defined by CsrWifiNmeIndications
-
-*******************************************************************************/
-typedef u32 CsrWifiNmeIndicationsMask;
-/*******************************************************************************
-
- NAME
- CsrWifiNmeNmeIndicationsMask
-
- DESCRIPTION
- Mask type for use with the values defined by CsrWifiNmeNmeIndications.
- Used to overlap the unused portion of the unifi_IndicationsMask For NME
- specific indications
-
-*******************************************************************************/
-typedef u32 CsrWifiNmeNmeIndicationsMask;
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWmmQosInfoMask
-
- DESCRIPTION
- Mask type for use with the values defined by CsrWifiNmeWmmQosInfo
-
-*******************************************************************************/
-typedef u8 CsrWifiNmeWmmQosInfoMask;
-
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeEmpty
-
- DESCRIPTION
- Empty Structure to indicate that no credentials are available.
-
- MEMBERS
- empty - Only element of the empty structure (always set to 0).
-
-*******************************************************************************/
-typedef struct
-{
- u8 empty;
-} CsrWifiNmeEmpty;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmePassphrase
-
- DESCRIPTION
- Structure holding the ASCII Pass Phrase data.
-
- MEMBERS
- encryptionMode - Encryption type as defined in CsrWifiSmeEncryption.
- passphrase - Pass phrase ASCII value.
-
-*******************************************************************************/
-typedef struct
-{
- u16 encryptionMode;
- char *passphrase;
-} CsrWifiNmePassphrase;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmePsk
-
- DESCRIPTION
- Structure holding the Pre-Shared Key data.
-
- MEMBERS
- encryptionMode - Encryption type as defined in CsrWifiSmeEncryption.
- psk - Pre-Shared Key value.
-
-*******************************************************************************/
-typedef struct
-{
- u16 encryptionMode;
- u8 psk[32];
-} CsrWifiNmePsk;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWapiCredentials
-
- DESCRIPTION
- Structure holding WAPI credentials data.
-
- MEMBERS
- certificateLength - Length in bytes of the following client certificate.
- certificate - The actual client certificate data (if present).
- DER/PEM format supported.
- privateKeyLength - Length in bytes of the following private key.
- privateKey - The actual private key. DER/PEM format.
- caCertificateLength - Length in bytes of the following certificate authority
- certificate.
- caCertificate - The actual certificate authority certificate data. If
- not supplied the received certificate authority
- certificate is assumed to be validate, if present the
- received certificate is validated against it. DER/PEM
- format supported.
-
-*******************************************************************************/
-typedef struct
-{
- u32 certificateLength;
- u8 *certificate;
- u16 privateKeyLength;
- u8 *privateKey;
- u32 caCertificateLength;
- u8 *caCertificate;
-} CsrWifiNmeWapiCredentials;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeConnectAttempt
-
- DESCRIPTION
- Structure holding Connection attempt data.
-
- MEMBERS
- bssid - Id of Basic Service Set connections attempt have been made
- to.
- status - Status returned to indicate the success or otherwise of the
- connection attempt.
- securityError - Security error status indicating the nature of the failure
- to connect.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiMacAddress bssid;
- CsrResult status;
- CsrWifiNmeSecError securityError;
-} CsrWifiNmeConnectAttempt;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeEapCredentials
-
- DESCRIPTION
- Supports the use of multiple EAP methods via a single structure. The
- methods required are indicated by the value set in the eapMethodMask
-
- MEMBERS
- eapMethodMask
- - Bit mask of supported EAP methods
- Currently only supports the setting of one bit.
- Required for all the EAP methods.
- authMode
- - Bit mask representing the authentication types that may be
- supported by a suitable AP. An AP must support at least one
- of the authentication types specified to be considered for
- connection. Required for all EAP methods.
- encryptionMode
- - Bit mask representing the encryption types that may be
- supported by a suitable AP. An AP must support a suitable
- mix of the pairwise and group encryption types requested to
- be considered for connection. Required for all EAP methods.
- userName
- - User name. Required for all EAP methods except: SIM or AKA.
- userPassword
- - User Password. Required for all EAP methods except: TLS,
- SIM or AKA.
- authServerUserIdentity
- - Authentication server user Identity. Required for all EAP
- methods except: TLS, SIM, AKA or FAST.
- clientCertificateLength
- - Length in bytes of the following client certificate (if
- present). Only required for TLS.
- clientCertificate
- - The actual client certificate data (if present). Only
- required for TLS. DER/PEM format supported.
- certificateAuthorityCertificateLength
- - Length in bytes of the following certificate authority
- certificate (if present). Optional for TLS, TTLS, PEAP.
- certificateAuthorityCertificate
- - The actual certificate authority certificate data (if
- present). If not supplied the received certificate
- authority certificate is assumed to be valid, if present
- the received certificate is validated against it. Optional
- for TLS, TTLS, PEAP. DER/PEM format supported.
- privateKeyLength
- - Length in bytes of the following private key (if present).
- Only required for TLS.
- privateKey
- - The actual private key (if present). Only required for TLS.
- DER/PEM format, maybe password protected.
- privateKeyPassword
- - Optional password to protect the private key.
- sessionLength
- - Length in bytes of the following session field Supported
- for all EAP methods except: SIM or AKA.
- session
- - Session information to support faster re-authentication.
- Supported for all EAP methods except: SIM or AKA.
- allowPacProvisioning
- - If TRUE: PAC provisioning is allowed 'over-the_air';
- If FALSE: a PAC must be supplied.
- Only required for FAST.
- pacLength
- - Length the following PAC field. If allowPacProvisioning is
- FALSE then the PAC MUST be supplied (i.e. non-zero). Only
- required for FAST.
- pac
- - The actual PAC data. If allowPacProvisioning is FALSE then
- the PAC MUST be supplied. Only required for FAST.
- pacPassword
- - Optional password to protect the PAC. Only required for
- FAST.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiNmeEapMethodMask eapMethodMask;
- CsrWifiSmeAuthModeMask authMode;
- CsrWifiNmeEncryptionMask encryptionMode;
- char *userName;
- char *userPassword;
- char *authServerUserIdentity;
- u32 clientCertificateLength;
- u8 *clientCertificate;
- u32 certificateAuthorityCertificateLength;
- u8 *certificateAuthorityCertificate;
- u16 privateKeyLength;
- u8 *privateKey;
- char *privateKeyPassword;
- u32 sessionLength;
- u8 *session;
- u8 allowPacProvisioning;
- u32 pacLength;
- u8 *pac;
- char *pacPassword;
-} CsrWifiNmeEapCredentials;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmePeerConfig
-
- DESCRIPTION
- Structure holding Peer Config data.
-
- MEMBERS
- p2pDeviceId -
- groupCapabilityMask -
- groupOwnerIntent -
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiMacAddress p2pDeviceId;
- CsrWifiSmeP2pGroupCapabilityMask groupCapabilityMask;
- u8 groupOwnerIntent;
-} CsrWifiNmePeerConfig;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileIdentity
-
- DESCRIPTION
- The identity of a profile is defined as the unique combination the BSSID
- and SSID.
-
- MEMBERS
- bssid - ID of Basic Service Set for or the P2pDevice address of the GO for
- which a connection attempt was made.
- ssid - Service Set Id.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiMacAddress bssid;
- CsrWifiSsid ssid;
-} CsrWifiNmeProfileIdentity;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWep128Keys
-
- DESCRIPTION
- Structure holding WEP Authentication Type and WEP keys that can be used
- when using WEP128.
-
- MEMBERS
- wepAuthType - Mask to select the WEP authentication type (Open or Shared)
- selectedWepKey - Index to one of the four keys below indicating the
- currently used WEP key.
- key1 - Value for key number 1.
- key2 - Value for key number 2.
- key3 - Value for key number 3.
- key4 - Value for key number 4.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiSmeAuthModeMask wepAuthType;
- u8 selectedWepKey;
- u8 key1[13];
- u8 key2[13];
- u8 key3[13];
- u8 key4[13];
-} CsrWifiNmeWep128Keys;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWep64Keys
-
- DESCRIPTION
- Structure for holding WEP Authentication Type and WEP keys that can be
- used when using WEP64.
-
- MEMBERS
- wepAuthType - Mask to select the WEP authentication type (Open or Shared)
- selectedWepKey - Index to one of the four keys below indicating the
- currently used WEP key.
- key1 - Value for key number 1.
- key2 - Value for key number 2.
- key3 - Value for key number 3.
- key4 - Value for key number 4.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiSmeAuthModeMask wepAuthType;
- u8 selectedWepKey;
- u8 key1[5];
- u8 key2[5];
- u8 key3[5];
- u8 key4[5];
-} CsrWifiNmeWep64Keys;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeCredentials
-
- DESCRIPTION
- Structure containing the Credentials data.
-
- MEMBERS
- credentialType - Credential type value (as defined in the
- enumeration type).
- credential - Union containing credentials which depends on
- credentialType parameter.
- credentialeap -
- credentialwapiPassphrase -
- credentialwpa2Passphrase -
- credentialwpa2Psk -
- credentialwapiPsk -
- credentialwpaPassphrase -
- credentialwapi -
- credentialwep128Key -
- credentialwpaPsk -
- credentialopenSystem -
- credentialwep64Key -
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiNmeCredentialType credentialType;
- union {
- CsrWifiNmeEapCredentials eap;
- CsrWifiNmePassphrase wapiPassphrase;
- CsrWifiNmePassphrase wpa2Passphrase;
- CsrWifiNmePsk wpa2Psk;
- CsrWifiNmePsk wapiPsk;
- CsrWifiNmePassphrase wpaPassphrase;
- CsrWifiNmeWapiCredentials wapi;
- CsrWifiNmeWep128Keys wep128Key;
- CsrWifiNmePsk wpaPsk;
- CsrWifiNmeEmpty openSystem;
- CsrWifiNmeWep64Keys wep64Key;
- } credential;
-} CsrWifiNmeCredentials;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfile
-
- DESCRIPTION
- Structure containing the Profile data.
-
- MEMBERS
- profileIdentity - Profile Identity.
- wmmQosInfoMask - Mask for WMM QoS information.
- bssType - Type of BSS (Infrastructure or Adhoc).
- channelNo - Channel Number.
- ccxOptionsMask - Options mask for Cisco Compatible Extentions.
- cloakedSsid - Flag to decide whether the SSID is cloaked (not
- transmitted) or not.
- credentials - Credentials data.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiNmeProfileIdentity profileIdentity;
- CsrWifiNmeWmmQosInfoMask wmmQosInfoMask;
- CsrWifiNmeBssType bssType;
- u8 channelNo;
- u8 ccxOptionsMask;
- u8 cloakedSsid;
- CsrWifiNmeCredentials credentials;
-} CsrWifiNmeProfile;
-
-
-/* Downstream */
-#define CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST (0x0000)
-
-#define CSR_WIFI_NME_PROFILE_SET_REQ ((CsrWifiNmePrim) (0x0000 + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_PROFILE_DELETE_REQ ((CsrWifiNmePrim) (0x0001 + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_PROFILE_DELETE_ALL_REQ ((CsrWifiNmePrim) (0x0002 + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_PROFILE_ORDER_SET_REQ ((CsrWifiNmePrim) (0x0003 + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_PROFILE_CONNECT_REQ ((CsrWifiNmePrim) (0x0004 + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_WPS_REQ ((CsrWifiNmePrim) (0x0005 + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_WPS_CANCEL_REQ ((CsrWifiNmePrim) (0x0006 + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_CONNECTION_STATUS_GET_REQ ((CsrWifiNmePrim) (0x0007 + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_SIM_IMSI_GET_RES ((CsrWifiNmePrim) (0x0008 + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_SIM_GSM_AUTH_RES ((CsrWifiNmePrim) (0x0009 + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_SIM_UMTS_AUTH_RES ((CsrWifiNmePrim) (0x000A + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_WPS_CONFIG_SET_REQ ((CsrWifiNmePrim) (0x000B + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-#define CSR_WIFI_NME_EVENT_MASK_SET_REQ ((CsrWifiNmePrim) (0x000C + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST))
-
-
-#define CSR_WIFI_NME_PRIM_DOWNSTREAM_HIGHEST (0x000C + CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST)
-
-/* Upstream */
-#define CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST (0x0000 + CSR_PRIM_UPSTREAM)
-
-#define CSR_WIFI_NME_PROFILE_SET_CFM ((CsrWifiNmePrim)(0x0000 + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_PROFILE_DELETE_CFM ((CsrWifiNmePrim)(0x0001 + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_PROFILE_DELETE_ALL_CFM ((CsrWifiNmePrim)(0x0002 + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_PROFILE_ORDER_SET_CFM ((CsrWifiNmePrim)(0x0003 + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_PROFILE_CONNECT_CFM ((CsrWifiNmePrim)(0x0004 + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_WPS_CFM ((CsrWifiNmePrim)(0x0005 + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_WPS_CANCEL_CFM ((CsrWifiNmePrim)(0x0006 + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_CONNECTION_STATUS_GET_CFM ((CsrWifiNmePrim)(0x0007 + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_PROFILE_UPDATE_IND ((CsrWifiNmePrim)(0x0008 + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_PROFILE_DISCONNECT_IND ((CsrWifiNmePrim)(0x0009 + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_SIM_IMSI_GET_IND ((CsrWifiNmePrim)(0x000A + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_SIM_GSM_AUTH_IND ((CsrWifiNmePrim)(0x000B + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_SIM_UMTS_AUTH_IND ((CsrWifiNmePrim)(0x000C + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_WPS_CONFIG_SET_CFM ((CsrWifiNmePrim)(0x000D + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-#define CSR_WIFI_NME_EVENT_MASK_SET_CFM ((CsrWifiNmePrim)(0x000E + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST))
-
-#define CSR_WIFI_NME_PRIM_UPSTREAM_HIGHEST (0x000E + CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST)
-
-#define CSR_WIFI_NME_PRIM_DOWNSTREAM_COUNT (CSR_WIFI_NME_PRIM_DOWNSTREAM_HIGHEST + 1 - CSR_WIFI_NME_PRIM_DOWNSTREAM_LOWEST)
-#define CSR_WIFI_NME_PRIM_UPSTREAM_COUNT (CSR_WIFI_NME_PRIM_UPSTREAM_HIGHEST + 1 - CSR_WIFI_NME_PRIM_UPSTREAM_LOWEST)
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileSetReq
-
- DESCRIPTION
- Creates or updates an existing profile in the NME that matches the unique
- identity of the profile. Each profile is identified by the combination of
- BSSID and SSID. The profile contains all the required credentials for
- attempting to connect to the network. Creating or updating a profile via
- the NME PROFILE SET REQ does NOT add the profile to the preferred profile
- list within the NME used for the NME auto-connect behaviour.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- profile - Specifies the identity and credentials of the network.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrWifiNmeProfile profile;
-} CsrWifiNmeProfileSetReq;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileDeleteReq
-
- DESCRIPTION
- Will delete the profile with a matching identity, but does NOT modify the
- preferred profile list.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- profileIdentity - Identity (BSSID, SSID) of profile to be deleted.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrWifiNmeProfileIdentity profileIdentity;
-} CsrWifiNmeProfileDeleteReq;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileDeleteAllReq
-
- DESCRIPTION
- Deletes all profiles present in the NME, but does NOT modify the
- preferred profile list.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
-} CsrWifiNmeProfileDeleteAllReq;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileOrderSetReq
-
- DESCRIPTION
- Defines the preferred order that profiles present in the NME should be
- used during the NME auto-connect behaviour.
- If profileIdentitysCount == 0, it removes any existing preferred profile
- list already present in the NME, effectively disabling the auto-connect
- behaviour.
- NOTE: Profile identities that do not match any profile stored in the NME
- are ignored during the auto-connect procedure.
- NOTE: during auto-connect the NME will only attempt to join an existing
- adhoc network and it will never attempt to host an adhoc network; for
- hosting and adhoc network, use CSR_WIFI_NME_PROFILE_CONNECT_REQ
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an
- interface
- profileIdentitysCount - The number of profiles identities in the list.
- profileIdentitys - Points to the list of profile identities.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
- u8 profileIdentitysCount;
- CsrWifiNmeProfileIdentity *profileIdentitys;
-} CsrWifiNmeProfileOrderSetReq;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileConnectReq
-
- DESCRIPTION
- Requests the NME to attempt to connect to the specified profile.
- Overrides any current connection attempt.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an interface
- profileIdentity - Identity (BSSID, SSID) of profile to be connected to.
- It must match an existing profile in the NME.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
- CsrWifiNmeProfileIdentity profileIdentity;
-} CsrWifiNmeProfileConnectReq;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWpsReq
-
- DESCRIPTION
- Requests the NME to look for WPS enabled APs and attempt to perform WPS
- to determine the appropriate security credentials to connect to the AP.
- If the PIN == '00000000' then 'push button mode' is indicated, otherwise
- the PIN has to match that of the AP. 4 digit pin is passed by sending the
- pin digits in pin[0]..pin[3] and rest of the contents filled with '-'.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an interface
- pin - PIN value.
- ssid - Service Set identifier
- bssid - ID of Basic Service Set for which a WPS connection attempt is
- being made.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
- u8 pin[8];
- CsrWifiSsid ssid;
- CsrWifiMacAddress bssid;
-} CsrWifiNmeWpsReq;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWpsCancelReq
-
- DESCRIPTION
- Requests the NME to cancel any WPS procedure that it is currently
- performing. This includes WPS registrar activities started because of
- CSR_WIFI_NME_AP_REGISTER.request
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an interface
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
-} CsrWifiNmeWpsCancelReq;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeConnectionStatusGetReq
-
- DESCRIPTION
- Requests the current connection status of the NME.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an interface
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
-} CsrWifiNmeConnectionStatusGetReq;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeSimImsiGetRes
-
- DESCRIPTION
- Response from the application that received the NME SIM IMSI GET IND.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- status - Indicates the outcome of the requested operation: STATUS_SUCCESS
- or STATUS_ERROR.
- imsi - The value of the IMSI obtained from the UICC.
- cardType - The UICC type (GSM only (SIM), UMTS only (USIM), Both).
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrResult status;
- char *imsi;
- CsrWifiNmeSimCardType cardType;
-} CsrWifiNmeSimImsiGetRes;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeSimGsmAuthRes
-
- DESCRIPTION
- Response from the application that received the NME SIM GSM AUTH IND. For
- each GSM authentication round a GSM Ciphering key (Kc) and a signed
- response (SRES) are produced. Since 2 or 3 GSM authentication rounds are
- used the 2 or 3 Kc's obtained respectively are combined into one buffer
- and similarly the 2 or 3 SRES's obtained are combined into another
- buffer. The order of Kc values (SRES values respectively) in their buffer
- is the same as that of their corresponding RAND values in the incoming
- indication.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- status - Indicates the outcome of the requested operation:
- STATUS_SUCCESS or STATUS_ERROR
- kcsLength - Length in Bytes of Kc buffer. Legal values are: 16 or 24.
- kcs - Kc buffer holding 2 or 3 Kc values.
- sresLength - Length in Bytes of SRES buffer. Legal values are: 8 or 12.
- sres - SRES buffer holding 2 or 3 SRES values.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrResult status;
- u8 kcsLength;
- u8 *kcs;
- u8 sresLength;
- u8 *sres;
-} CsrWifiNmeSimGsmAuthRes;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeSimUmtsAuthRes
-
- DESCRIPTION
- Response from the application that received the NME SIM UMTS AUTH IND.
- The values of umtsCipherKey, umtsIntegrityKey, resParameterLength and
- resParameter are only meanigful when result = UMTS_AUTH_RESULT_SUCCESS.
- The value of auts is only meaningful when
- result=UMTS_AUTH_RESULT_SYNC_FAIL.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- status - Indicates the outcome of the requested operation:
- STATUS_SUCCESS or STATUS_ERROR.
- result - The result of UMTS authentication as performed by the
- UICC which could be: Success, Authentication Reject or
- Synchronisation Failure. For all these 3 outcomes the
- value of status is success.
- umtsCipherKey - The UMTS Cipher Key as calculated and returned by the
- UICC.
- umtsIntegrityKey - The UMTS Integrity Key as calculated and returned by
- the UICC.
- resParameterLength - The length (in bytes) of the RES parameter (min=4; max
- = 16).
- resParameter - The RES parameter as calculated and returned by the
- UICC.
- auts - The AUTS parameter as calculated and returned by the
- UICC.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrResult status;
- CsrWifiNmeUmtsAuthResult result;
- u8 umtsCipherKey[16];
- u8 umtsIntegrityKey[16];
- u8 resParameterLength;
- u8 *resParameter;
- u8 auts[14];
-} CsrWifiNmeSimUmtsAuthRes;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWpsConfigSetReq
-
- DESCRIPTION
- This primitive passes the WPS information for the device to NME. This may
- be accepted only if no interface is active.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- wpsConfig - WPS config.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrWifiSmeWpsConfig wpsConfig;
-} CsrWifiNmeWpsConfigSetReq;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeEventMaskSetReq
-
- DESCRIPTION
- The wireless manager application may register with the NME to receive
- notification of interesting events. Indications will be sent only if the
- wireless manager explicitly registers to be notified of that event.
- indMask is a bit mask of values defined in CsrWifiNmeIndicationsMask.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- indMask - Set mask with values from CsrWifiNmeIndications
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrWifiNmeIndicationsMask indMask;
-} CsrWifiNmeEventMaskSetReq;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileSetCfm
-
- DESCRIPTION
- Reports the status of the NME PROFILE SET REQ; the request will only fail
- if the details specified in the profile contains an invalid combination
- of parameters for example specifying the profile as cloaked but not
- specifying the SSID. The NME doesn't limit the number of profiles that
- may be created. The NME assumes that the entity configuring it is aware
- of the appropriate limits.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- status - Indicates the success or otherwise of the requested operation.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrResult status;
-} CsrWifiNmeProfileSetCfm;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileDeleteCfm
-
- DESCRIPTION
- Reports the status of the CSR_WIFI_NME_PROFILE_DELETE_REQ.
- Returns CSR_WIFI_NME_STATUS_NOT_FOUND if there is no matching profile.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- status - Indicates the success or otherwise of the requested operation.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrResult status;
-} CsrWifiNmeProfileDeleteCfm;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileDeleteAllCfm
-
- DESCRIPTION
- Reports the status of the CSR_WIFI_NME_PROFILE_DELETE_ALL_REQ.
- Returns always CSR_WIFI_NME_STATUS_SUCCESS.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- status - Indicates the success or otherwise of the requested operation, but
- in this case it always set to success.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrResult status;
-} CsrWifiNmeProfileDeleteAllCfm;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileOrderSetCfm
-
- DESCRIPTION
- Confirmation to UNIFI_NME_PROFILE_ORDER_SET.request.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an interface
- status - Indicates the success or otherwise of the requested
- operation.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
- CsrResult status;
-} CsrWifiNmeProfileOrderSetCfm;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileConnectCfm
-
- DESCRIPTION
- Reports the status of the NME PROFILE CONNECT REQ. If unsuccessful the
- connectAttempt parameters contain details of the APs that the NME
- attempted to connect to before reporting the failure of the request.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an
- interface
- status - Indicates the success or otherwise of the requested
- operation.
- connectAttemptsCount - This parameter is relevant only if
- status!=CSR_WIFI_NME_STATUS_SUCCESS.
- Number of connection attempt elements provided with
- this primitive
- connectAttempts - This parameter is relevant only if
- status!=CSR_WIFI_NME_STATUS_SUCCESS.
- Points to the list of connection attempt elements
- provided with this primitive
- Each element of the list provides information about
- an AP on which the connection attempt was made and
- the error that occurred during the attempt.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
- CsrResult status;
- u8 connectAttemptsCount;
- CsrWifiNmeConnectAttempt *connectAttempts;
-} CsrWifiNmeProfileConnectCfm;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWpsCfm
-
- DESCRIPTION
- Reports the status of the NME WPS REQ.
- If CSR_WIFI_NME_STATUS_SUCCESS, the profile parameter contains the
- identity and credentials of the AP.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an interface
- status - Indicates the success or otherwise of the requested
- operation.
- profile - This parameter is relevant only if
- status==CSR_WIFI_NME_STATUS_SUCCESS.
- The identity and credentials of the network.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
- CsrResult status;
- CsrWifiNmeProfile profile;
-} CsrWifiNmeWpsCfm;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWpsCancelCfm
-
- DESCRIPTION
- Reports the status of the NME WPS REQ, the request is always SUCCESSFUL.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an interface
- status - Only returns CSR_WIFI_NME_STATUS_SUCCESS
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
- CsrResult status;
-} CsrWifiNmeWpsCancelCfm;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeConnectionStatusGetCfm
-
- DESCRIPTION
- Reports the connection status of the NME.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an interface
- status - Indicates the success or otherwise of the requested
- operation.
- connectionStatus - NME current connection status
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
- CsrResult status;
- CsrWifiNmeConnectionStatus connectionStatus;
-} CsrWifiNmeConnectionStatusGetCfm;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileUpdateInd
-
- DESCRIPTION
- Indication generated from the NME (if an application subscribes to
- receive it) that informs that application that the contained profile has
- changed.
- For example, either the credentials EAP-FAST PAC file or the session data
- within the profile has changed.
- It is up to the application whether it stores this updated profile or
- not.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an interface
- profile - The identity and credentials of the network.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
- CsrWifiNmeProfile profile;
-} CsrWifiNmeProfileUpdateInd;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeProfileDisconnectInd
-
- DESCRIPTION
- Indication generated from the NME (if an application subscribes to
- receive it) that informs that application that the current profile
- connection has disconnected. The indication will contain information
- about APs that it attempted to maintain the connection via i.e. in the
- case of failed roaming.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- interfaceTag - Interface Identifier; unique identifier of an
- interface
- connectAttemptsCount - Number of connection attempt elements provided with
- this primitive
- connectAttempts - Points to the list of connection attempt elements
- provided with this primitive
- Each element of the list provides information about
- an AP on which the connection attempt was made and
- the error occurred during the attempt.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u16 interfaceTag;
- u8 connectAttemptsCount;
- CsrWifiNmeConnectAttempt *connectAttempts;
-} CsrWifiNmeProfileDisconnectInd;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeSimImsiGetInd
-
- DESCRIPTION
- Indication generated from the NME (if an application subscribes to
- receive it) that requests the IMSI and UICC type from the UICC Manager.
- This indication is generated when the NME is attempting to connect to a
- profile configured for EAP-SIM/AKA. An application MUST register to
- receive this indication for the NME to support the EAP-SIM/AKA credential
- types. Otherwise the NME has no route to obtain the information from the
- UICC.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
-} CsrWifiNmeSimImsiGetInd;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeSimGsmAuthInd
-
- DESCRIPTION
- Indication generated from the NME (if an application subscribes to
- receive it) that requests the UICC Manager to perform a GSM
- authentication on behalf of the NME. This indication is generated when
- the NME is attempting to connect to a profile configured for EAP-SIM. An
- application MUST register to receive this indication for the NME to
- support the EAP-SIM credential types. Otherwise the NME has no route to
- obtain the information from the UICC. EAP-SIM authentication requires 2
- or 3 GSM authentication rounds and therefore 2 or 3 RANDS (GSM Random
- Challenges) are included.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- randsLength - GSM RAND is 16 bytes long hence valid values are 32 (2 RANDS)
- or 48 (3 RANDs).
- rands - 2 or 3 RANDs values.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u8 randsLength;
- u8 *rands;
-} CsrWifiNmeSimGsmAuthInd;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeSimUmtsAuthInd
-
- DESCRIPTION
- Indication generated from the NME (if an application subscribes to
- receive it) that requests the UICC Manager to perform a UMTS
- authentication on behalf of the NME. This indication is generated when
- the NME is attempting to connect to a profile configured for EAP-AKA. An
- application MUST register to receive this indication for the NME to
- support the EAP-AKA credential types. Otherwise the NME has no route to
- obtain the information from the USIM. EAP-AKA requires one UMTS
- authentication round and therefore only one RAND and one AUTN values are
- included.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- rand - UMTS RAND value.
- autn - UMTS AUTN value.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- u8 rand[16];
- u8 autn[16];
-} CsrWifiNmeSimUmtsAuthInd;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeWpsConfigSetCfm
-
- DESCRIPTION
- Confirm.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- status - Status of the request.
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrResult status;
-} CsrWifiNmeWpsConfigSetCfm;
-
-/*******************************************************************************
-
- NAME
- CsrWifiNmeEventMaskSetCfm
-
- DESCRIPTION
- The NME calls the primitive to report the result of the request
- primitive.
-
- MEMBERS
- common - Common header for use with the CsrWifiFsm Module
- status - Reports the result of the request
-
-*******************************************************************************/
-typedef struct
-{
- CsrWifiFsmEvent common;
- CsrResult status;
-} CsrWifiNmeEventMaskSetCfm;
-
-#endif /* CSR_WIFI_NME_PRIM_H__ */
-