/drivers/net/wireless/tiwlan1251/CUDK/Inc/TI_AdapterQOS.h
C Header | 499 lines | 63 code | 40 blank | 396 comment | 0 complexity | 4ac66d611c184c6c5cd1b71bb87c0af6 MD5 | raw file
Possible License(s): AGPL-1.0, GPL-2.0, LGPL-2.0
- /*******************************************************************************
- **+--------------------------------------------------------------------------+**
- **| |**
- **| Copyright 1998-2008 Texas Instruments, Inc. - http://www.ti.com/ |**
- **| |**
- **| Licensed under the Apache License, Version 2.0 (the "License"); |**
- **| you may not use this file except in compliance with the License. |**
- **| You may obtain a copy of the License at |**
- **| |**
- **| http://www.apache.org/licenses/LICENSE-2.0 |**
- **| |**
- **| Unless required by applicable law or agreed to in writing, software |**
- **| distributed under the License is distributed on an "AS IS" BASIS, |**
- **| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |**
- **| See the License for the specific language governing permissions and |**
- **| limitations under the License. |**
- **| |**
- **+--------------------------------------------------------------------------+**
- *******************************************************************************/
- /*--------------------------------------------------------------------------*/
- /* Module: TI_AdapterQOS.h*/
- /**/
- /* Purpose: */
- /**/
- /*--------------------------------------------------------------------------*/
- #ifndef TI_ADAPTER_QOS_H
- #define TI_ADAPTER_QOS_H
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- #include "tiQosTypes.h"
- /******************************************************************************
- Name: TI_SetQosParameters
- Desc: This function commands the driver to set AC (Tx queue) with
- specific QOS parameters.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pQosParams - A pointer to the OS_802_11_QOS_PARAMS structure:
- acID - The number of AC to configure (0-3).
- MaxLifeTime - Maximum time to keep the frame in the HW (msec).
- VoiceDeliveryProtocol - The protocol used for voice exchange
- 0 = No protocol is used.
- 1 = use PS-Poll frames
- PSDeliveryProtocol - 0 = Legacy
- 1 = U-APSD
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_SetQosParameters (TI_HANDLE hAdapter,
- OS_802_11_QOS_PARAMS* pQosParams );
- /******************************************************************************
- Name: TI_GetAPQosParameters
- Desc: This function retrieves the associated AP’s QOS parameters.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pACQosParams - A Pointer to the OS_802_11_AP_QOS_PARAMS structure:
- uAC - Indicates the AC to which the function is addressed
- (range 0-3).
- uAssocAdmissionCtrlFlag - Indicates if the AC requires admission
- before data transmission (0-1).
- uAIFS - Indicates the required AIFS by the AP for the specified
- AC (2-15).
- uCwMin - Indicates the required CwMin by the AP for the specified
- AC (0-15).
- uCwMax - Indicates the required CwMax by the AP for the specified
- AC (0-15).
- uTXOPLimit - Indicates the required TXOPLimit by the AP for the
- specified AC (in units of 32 microseconds).
- Return: TI_RESULT_OK indicates success.
- TI_RESULT_NOT_CONNECTED indicates that the STA is not connected to
- any AP.
- TI_RESULT_NO_QOS_AP indicates that the associated AP does not
- support QOS.
- TI_RESULT_NOK indicates invalid parameters.
- Note: This function should be called only after the STA was associated with
- an infrastructure AP.
-
- ******************************************************************************/
- tiINT32 TI_GetAPQosParameters (TI_HANDLE hAdapter,
- OS_802_11_AC_QOS_PARAMS* pACQosParams);
- /******************************************************************************
- Name: TI_GetAPQosCapabilitesParameters
- Desc: This function retrieves the associated AP’s QOS capabilities.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pAPQosCapabiltiesParams - A Pointer to the
- OS_802_11_AP_QOS_CAPABILITIES_PARAMS structure:
- uQOSFlag - Flag that indicates whether the AP supports
- QOS (0-1)
- uAPSDFlag - Flag that indicates whether the AP supports
- U-APSD (0-1)
- Return: TI_RESULT_OK indicates success.
- TI_RESULT_NOT_CONNECTED indicates that the STA is not connected to any AP.
- TI_RESULT_NOK indicates invalid parameters.
- Note: This function should be called only after the STA was associated with
- an infrastructure AP.
-
- ******************************************************************************/
- tiINT32 TI_GetAPQosCapabilitesParameters (TI_HANDLE hAdapter,
- OS_802_11_AP_QOS_CAPABILITIES_PARAMS* pAPQosCapabiltiesParams);
- /******************************************************************************
- Name: TI_PollApPackets
- Desc: This function commands the driver to issue a polling frame to
- retrieve downlink traffic from the AP. It should be activated by
- the voice application when there is no uplink traffic during a
- voice call. This is used for a non-QoS association (so AC_BE
- is used).
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_PollApPackets (TI_HANDLE hAdapter);
- /******************************************************************************
- Name: TI_PollApPacketsFromAC
- Desc: This function commands the driver to issue a polling frame to
- retrieve downlink traffic from the AP. It should be activated by
- the voice application when there is no uplink traffic during a
- voice call. The polling is either PS-Poll (for legacy PS) or
- QoS-Null-Data (for UPSD).
- Null-Data frame is sent after the PS-Poll to activate the
- triggered-scan, which is only triggered by data frames. These
- packets are transmitted on the VO_AC, for QoS associations.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- AC - The AC to be polled (values may be 0 to 3)
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_PollApPacketsFromAC (TI_HANDLE hAdapter,
- tiUINT32 AC );
- /******************************************************************************
- Name: TI_SetShortRetry
- Desc: This function commands the driver to set Best Effort AC with maximum
- number of transmits retries to perform for short packets.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- uShortRetry - Maximum number of transmits retries to perform for
- short packets
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_SetShortRetry (TI_HANDLE hAdapter,
- tiUINT32 uShortRetry );
- /******************************************************************************
- Name: TI_GetShortRetry
- Desc: This function gets the maximum number of transmits retries to perform
- for short packets of the Best Effort AC.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- puShortRetry - Maximum number of transmits retries to perform for
- short packets.
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_GetShortRetry (TI_HANDLE hAdapter,
- tiUINT32* puShortRetry );
- /******************************************************************************
- Name: TI_SetLongRetry
- Desc: This function commands the driver to set Best Effort AC with maximum
- number of transmits retries to perform for long packets.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- uLongRetry - Maximum number of transmits retries to perform for long
- packets.
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_SetLongRetry (TI_HANDLE hAdapter,
- tiUINT32 uLongRetry );
- /******************************************************************************
- Name: TI_GetLongRetry
- Desc: This function gets the maximum number of transmits retries to perform
- for long packets of the Best Effort AC.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- puLongRetry - Maximum number of transmits retries to perform for long
- packets.
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_GetLongRetry (TI_HANDLE hAdapter,
- tiUINT32* puLongRetry);
- /******************************************************************************
- Name: TI_SetQosRxTimeOut
- Desc:
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pRxTimeOut -
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_SetQosRxTimeOut (TI_HANDLE hAdapter,
- OS_802_11_QOS_RX_TIMEOUT_PARAMS* pRxTimeOut);
- /******************************************************************************
- Name: TI_AddTspec
- Desc: This function commands the driver to add TSPEC for the specific
- user Priority.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pTspecParams - Pointer to OS_802_11_QOS_TSPEC_PARAMS strcuture:
- uUserPriority - Indicates the User priority for which TSPEC is
- requested (range 0-7)
- uNominalMSDUsize - Indicates the Nominal MSDU size in units of
- bytes (16 LSB only).
- uMeanDataRate - Indicates the average data rate in units of bits
- per sec
- uMinimumPHYRate - Indicates the desired minimum PHY rate in units
- of bits per sec
- uSurplusBandwidth -
- hAllowance - Indicates the excess allocation of time (and bandwidth)
- over and above the stated application rates
- (represented as fix Q13 numberand used 16 LSB only).
- uUPSDFlag - Indicates if the AC shouls support U-APSD (0-1)
- uMediumTime - Indicates the amount of time admitted to this UP.
- Used only for Tspec response notification (16 LSB
- only).
- uReasonCode - Indicates the reason code of AP response (applicable
- only in TSEPC response event, this field is zero
- in ADD_TSPEC request).
- Return: TI_RESULT_OK - Success. Any other value indicates an error.
- TI_RESULT_TRAFIC_ADM_PENDING – Driver is still waiting for a response of previous request.
- TI_RESULT_AC_ALREADY_IN_USE – Means that other user priority from the same AC has already been used.
- TI_RESULT_NOT_CONNECTED -Indicates that the STA is not connected to any AP.
- TI_RESULT_NO_QOS_AP - indicates that the associated AP does not support QOS.
- TI_RESULT_ADM_CTRL_DISABLE – Indicates that station configured to not support admission control.
- TI_RESULT_NOK – Parameters are not valid.
- Notes: 1. Only one TSPEC per AC can be used. For example, user can’t
- request TSPEC for UP 6 and 7 since those two UPs are mapped
- to the same AC.
- 2. User can issue Tspec request only after he gets a response of
- the previous request.
-
- ******************************************************************************/
- tiINT32 TI_AddTspec (TI_HANDLE hAdapter,
- OS_802_11_QOS_TSPEC_PARAMS* pTspecParams);
- /******************************************************************************
- Name: TI_GetTspecParameters
- Desc: This function retrieves Tspec parameters for a specific user
- Priority.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pTspecParams - Includes TSPEC parameters as indicated in
- TI_AddTspec().
- Return: TI_RESULT_OK – Driver retrieves the TSPEC parameters.
- TI_RESULT_NOT_CONNECTED - Indicates that the STA is not connected
- to any AP.
- TI_RESULT_NO_QOS_AP - indicates that the associated AP does not
- support QOS.
- TI_RESULT_TRAFIC_ADM_PENDING – Driver is waiting for a TSPEC response.
- TI_RESULT_NOK – Parameters are not valid.
- Note: This function should be called only after TSPEC Response event
- with valid reason code.
- ******************************************************************************/
- tiINT32 TI_GetTspecParameters (TI_HANDLE hAdapter,
- OS_802_11_QOS_TSPEC_PARAMS* pTspecParams);
- /******************************************************************************
- Name: TI_DeleteTspec
- Desc: This function commands the driver to remove TSPEC request for the
- specific user Priority.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pDelTspecParams - A Pointer to the OS_802_11_QOS_DELETE_TSPEC_PARAMS structure:
- uUserPriority - Indicates the User priority of which TSPEC to delete
- (range 0-7)
- uReasonCode - Indicates the reason code for delete TSPEC request
- (32-39,45).
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_DeleteTspec (TI_HANDLE hAdapter,
- OS_802_11_QOS_DELETE_TSPEC_PARAMS* pDelTspecParams);
- /******************************************************************************
- Name: TI_GetCurrentACStatus
- Desc: This function retrieves the status of the AC in terms of U-APSD
- activation and admission granted.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pAcStatusParams - Pointer to OS_802_11_QOS_AC_UPSD_STATUS_PARAMS:
- uAC - Indicates the AC to which the function is addressed
- (range 0-3)
- uCurrentUAPSDStatus - Current UAPSD status.
- uCurrentAdmissionStatus - TRUE if the selected AC can be used
- for traffic transmission, i.e. either admission is not
- required by the AP for this AC, or admission is required
- and a successful TSPEC took place. In all other cases the
- contents of this field should be FALSE.
- Return: TI_RESULT_OK - Success.
- TI_RESULT_NOT_CONNECTED - Indicates that the STA is not connected to
- any AP.
- TI_RESULT_NO_QOS_AP - indicates that the associated AP does not
- support QOS.
- TI_RESULT_NOK – Parameters are not valid.
-
- ******************************************************************************/
- tiINT32 TI_GetCurrentACStatus (TI_HANDLE hAdapter,
- OS_802_11_AC_UPSD_STATUS_PARAMS *pAcStatusParams);
- /******************************************************************************
- Name: TI_SetMediumUsageThreshold
- Desc: This function set the Medium Usage low and high threshold for a
- specific AC.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pThresholdCrossParams - OS_802_11_THRESHOLD_CROSS_PARAMS:
- uAC - Indicates the AC to which the configuration is addressed
- (range 0-3)
- uHighThreshold - Indicates high threshold in percentage over
- the allowed medium usage (1-100).
- uLowThreshold - Indicates low threshold in percentage below the
- allowed medium usage (1-100).
- Return: TI_RESULT_OK – Driver set the thresholds.
- TI_RESULT_NOK – Parameters are not valid.
-
- ******************************************************************************/
- tiINT32 TI_SetMediumUsageThreshold (TI_HANDLE hAdapter,
- OS_802_11_THRESHOLD_CROSS_PARAMS* pThresholdCrossParams);
- /******************************************************************************
- Name: TI_GetMediumUsageThreshold
- Desc: This function retrieves the Medium Usage low and high threshold for
- a specific AC.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pThresholdCrossParams - Pointer that holds the MediumUsage current
- thresholds (see TI_SetMediumUsageThreshold).
- Return: TI_RESULT_OK – Driver retrieved the thresholds.
- TI_RESULT_NOK – Parameters are not valid.
-
- ******************************************************************************/
- tiINT32 TI_GetMediumUsageThreshold (TI_HANDLE hAdapter,
- OS_802_11_THRESHOLD_CROSS_PARAMS* pThresholdCrossParams);
- /******************************************************************************
- Name: TI_SetPhyRateThreshold
- Desc: This function set the Phy Rate low and high thresholds for a
- specific AC.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pThresholdCrossParams - OS_802_11_THRESHOLD_CROSS_PARAMS:
- uAC - Indicates the AC to which the configuration is addressed
- (range 0-3)
- uHighThreshold - Indicates high Phy Rate threshold in Mbs
- (1,2,5,6,9,11,12,18,24,36,48,54).
- uLowThreshold - Indicates low Phy Rate threshold in Mbs
- (1,2,5,6,9,11,12,18,24,36,48,54)
- Return: TI_RESULT_OK – Driver set the thresholds.
- TI_RESULT_NOK – Parameters are not valid.
-
- ******************************************************************************/
- tiINT32 TI_SetPhyRateThreshold (TI_HANDLE hAdapter,
- OS_802_11_THRESHOLD_CROSS_PARAMS* pThresholdCrossParams);
- /******************************************************************************
- Name: TI_GetPhyRateThreshold
- Desc: This function retrieves the Phy Rate thresholds for a specific AC.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pThresholdCrossParams - Pointer that holds the PhyRate current
- thresholds.
- Return: TI_RESULT_OK – Driver retrieved the thresholds.
- TI_RESULT_NOK – Parameters are not valid.
-
- ******************************************************************************/
- tiINT32 TI_GetPhyRateThreshold (TI_HANDLE hAdapter,
- OS_802_11_THRESHOLD_CROSS_PARAMS* pThresholdCrossParams);
- /******************************************************************************
- Name: TI_GetDesiredPsMode
- Desc: This function retrieves the desired Power Save mode per AC. The PS
- mode can be either PS-Poll Legacy or UPSD.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- desiredPsMode - Pointer that holds the desired PS mode.
- Return: TI_RESULT_OK – Driver retrieved the thresholds.
- TI_RESULT_NOK – Parameters are not valid.
-
- ******************************************************************************/
- tiINT32 TI_GetDesiredPsMode (TI_HANDLE hAdapter,
- OS_802_11_QOS_DESIRED_PS_MODE *desiredPsMode );
- /******************************************************************************
- Name: TI_ConfigTxClassifier
- Desc: This function sends the configuration buffer to the OsSend package.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- inParamsBuffLen - Configuration buffer length.
- inParamsBuff - Configuration buffer pointer.
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_ConfigTxClassifier (TI_HANDLE hAdapter,
- tiUINT32 inParamsBuffLen,
- tiUINT8 *inParamsBuff);
- /******************************************************************************
- Name: TI_RemoveClassifierEntry
- Desc: This function removes a classifier entry.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pClsfrEntry -
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_RemoveClassifierEntry (TI_HANDLE hAdapter,
- clsfr_tableEntry_t *pClsfrEntry);
- /******************************************************************************
- Name: TI_GetClsfrType
- Desc: This function retrieves the classifier type.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- currClsfrType - pointer to clsfrTypeAndSupport struct:
- ClsfrType: one of
- D_TAG_CLSFR = 0,
- DSCP_CLSFR =1,
- PORT_CLSFR =2,
- IPPORT_CLSFR =3,
- oldVersionSupport:
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_GetClsfrType (TI_HANDLE hAdapter,
- clsfrTypeAndSupport *currClsfrType );
- /******************************************************************************
- Name: TI_SetTrafficIntensityThresholds
- Desc: This function sets the traffic intensity high and low thresholds.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pTrafficThresholds - A pointer to the
- OS_802_11_TRAFFIC_INTENSITY_THRESHOLD_PARAMS structure values:
- uHighThreshold, uLowThreshold, TestInterval;
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_SetTrafficIntensityThresholds (TI_HANDLE hAdapter,
- OS_802_11_TRAFFIC_INTENSITY_THRESHOLD_PARAMS* pTrafficThresholds);
- /******************************************************************************
- Name: TI_GetTrafficIntensityThresholds
- Desc: This function retrieves the traffic intensity high and low thresholds.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- pTrafficThresholds - A pointer to the
- OS_802_11_TRAFFIC_INTENSITY_THRESHOLD_PARAMS structure values.
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_GetTrafficIntensityThresholds (TI_HANDLE hAdapter,
- OS_802_11_TRAFFIC_INTENSITY_THRESHOLD_PARAMS* pTrafficThresholds);
- /******************************************************************************
- Name: TI_ToggleTrafficIntensityEvents
- Desc: This function toggles between the traffic intensity operation.
- Params: hAdapter - The Adapter handle returned by TI_AdapterInit().
- NewStatus - Enable or disable value (TRUE or FALSE)
- Return: TI_RESULT_OK on success. Any other value indicates an error.
-
- ******************************************************************************/
- tiINT32 TI_ToggleTrafficIntensityEvents (TI_HANDLE hAdapter,
- tiUINT32 NewStatus );
- tiINT32 TI_SetDTagToAcMappingTable(TI_HANDLE hAdapter, acTrfcType_e* pDtagToAcTable );
- tiINT32 TI_SetVAD(TI_HANDLE hAdapter, txDataVadTimerParams_t* pVadTimer );
- tiINT32 TI_GetVAD(TI_HANDLE hAdapter, txDataVadTimerParams_t* pVadTimer );
- #ifdef __cplusplus
- }
- #endif
- #endif /* TI_ADAPTER_QOS_H*/