| /* |
| * roamingMngrTypes.h |
| * |
| * Copyright(c) 1998 - 2009 Texas Instruments. All rights reserved. |
| * All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * |
| * * Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * * Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in |
| * the documentation and/or other materials provided with the |
| * distribution. |
| * * Neither the name Texas Instruments nor the names of its |
| * contributors may be used to endorse or promote products derived |
| * from this software without specific prior written permission. |
| * |
| * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| |
| /**************************************************************************** |
| * * |
| * MODULE: Roaming Manager * |
| * PURPOSE: Roaming Manager Module Types * |
| * * |
| ****************************************************************************/ |
| |
| #ifndef _ROAMING_MNGR_TYPES_H_ |
| #define _ROAMING_MNGR_TYPES_H_ |
| |
| /** \file roamingMngrTypes.h |
| * \brief Internal Roaming Manager Types API |
| */ |
| |
| /*-----------*/ |
| /* Constants */ |
| /*-----------*/ |
| #define ROAMING_ENABLED 1 |
| #define ROAMING_DISABLED 0 |
| |
| #define ROAMING_OPERATIONAL_MODE_MANUAL 0 |
| #define ROAMING_OPERATIONAL_MODE_AUTO 1 |
| |
| /*--------------*/ |
| /* Enumerations */ |
| /*--------------*/ |
| |
| |
| /*----------*/ |
| /* Typedefs */ |
| /*----------*/ |
| |
| /** \struct roamingMngrConfig_t |
| * \brief Roaming Manager Configuration |
| * |
| * \par Description |
| * This Structure defines the Roaming Manager Configuration Type |
| * |
| * \sa |
| */ |
| typedef struct |
| { |
| TI_UINT16 enableDisable; /**< Indicates if roaming is enabled/disabled: |
| * ROAMING_ENABLED: Enables roaming manager |
| * ROAMING _DISABLED: Disables roaming manager |
| * TI recommended default: roaming is disabled |
| * Note: TI_BOOL is not used, beacuse of misdefinition between the Driver and CU |
| */ |
| TI_UINT16 lowPassFilterRoamingAttempt; /**< Time to wait in seconds before roaming caused by low connection quality; |
| * TI recommended default: 30 seconds |
| */ |
| TI_INT8 apQualityThreshold; /**< Quality indicator (RSSI) to be used when comparing AP List matching quality |
| * TI recommended default: 0 |
| */ |
| } roamingMngrConfig_t; |
| |
| /** \struct roamingMngrThresholdsConfig_t |
| * \brief Roaming Manager Thresholds Configuration |
| * |
| * \par Description |
| * This Structure defines the Roaming Manager Trigger Thresholds Configuration type \n |
| * Note - It is the applicatio's responsibility to change the threshold when Voice is On |
| * |
| * \sa |
| */ |
| typedef struct |
| { |
| TI_UINT8 dataRetryThreshold; /**< Consecutive number of TX retries per roaming event; |
| * TI recommended default: 20 |
| */ |
| TI_UINT8 numExpectedTbttForBSSLoss; /**< Number of expected TBTTs for BSS Loss event |
| * TI recommended default: 10 |
| */ |
| TI_UINT8 txRateThreshold; /**< Low TX rate roaming even threshold; |
| * TI recommended default: 2 Mbps |
| */ |
| TI_INT8 lowRssiThreshold; /**< When the low RSSI threshold is crossed, the low RSSI roaming event is initiated in dBm; |
| * TI recommended default: -80 dBm |
| */ |
| TI_UINT8 lowSnrThreshold; /**< When the low SNR threshold is crossed, the low SNR roaming event is initiated. |
| * TI recommended default: 0 |
| */ |
| TI_INT8 lowQualityForBackgroungScanCondition; /**< Indicator used to increase the background scan period when quality is low |
| * TI recommended default: -80 |
| */ |
| TI_INT8 normalQualityForBackgroungScanCondition;/**< Indicator used to reduce the background scan period when quality is normal |
| * TI recommended default: -80 |
| */ |
| } roamingMngrThresholdsConfig_t; |
| |
| /** \struct roamingMngrConfigParams_t |
| * \brief Roaming Manager Configuration Parameters |
| * |
| * \par Description |
| * |
| * \sa |
| */ |
| typedef struct |
| { |
| roamingMngrConfig_t roamingMngrConfig; /**< Roaming Manager Configuration */ |
| roamingMngrThresholdsConfig_t roamingMngrThresholdsConfig; /**< Roaming Manager Thresholds Configuration */ |
| } roamingMngrConfigParams_t; |
| |
| /** \struct TUserDefinedQualityTrigger |
| * \brief User Defined Quality Trigger |
| * |
| * \par Description |
| * This struct defines the User Defined Quality Trigger Parameters \n |
| * Used for setting Roaming User Defined Trigger |
| * |
| * \sa |
| */ |
| typedef struct |
| { |
| TI_INT16 iThreshold; /**< Input Trigger Threshold. Units: dBm / dB ; Range: (-100 .. 100) */ |
| TI_UINT16 uPacing; /**< Minimum delay between consecutive triggers. Units: milliseconds ; Range: (0 .. 60000) */ |
| TI_UINT8 uMetric; /**< 0 - RSSI Beacon, 1 - RSSI Packet, 2 - SNR Beacon, 3 - SNR Packet */ |
| TI_UINT8 uType; /**< 0 - Level, 1 - Edge */ |
| TI_UINT8 uDirection; /**< 0 - Low, 1 - High, 2 - Bidirectional */ |
| TI_UINT8 uHystersis; /**< Hysteresis range around the threshold value. Units: dB ; Threshold range: (0 .. 255) */ |
| TI_UINT8 uIndex; /**< User Index (0 .. 1) */ |
| TI_UINT8 uEnable; /**< User trigger Enable. 0 - Disable, 1 - Enable */ |
| TI_UINT8 padding[2]; /**< */ |
| TI_UINT16 uClientID; /**< the client ID that registered for the trigger event */ |
| } TUserDefinedQualityTrigger; |
| |
| |
| #endif /* _ROAMING_MNGR_TYPES_H_*/ |
| |