Home | History | Annotate | Download | only in Inc
      1 /*******************************************************************************
      2 **+--------------------------------------------------------------------------+**
      3 **|                                                                          |**
      4 **| Copyright 1998-2008 Texas Instruments, Inc. - http://www.ti.com/         |**
      5 **|                                                                          |**
      6 **| Licensed under the Apache License, Version 2.0 (the "License");          |**
      7 **| you may not use this file except in compliance with the License.         |**
      8 **| You may obtain a copy of the License at                                  |**
      9 **|                                                                          |**
     10 **|     http://www.apache.org/licenses/LICENSE-2.0                           |**
     11 **|                                                                          |**
     12 **| Unless required by applicable law or agreed to in writing, software      |**
     13 **| distributed under the License is distributed on an "AS IS" BASIS,        |**
     14 **| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |**
     15 **| See the License for the specific language governing permissions and      |**
     16 **| limitations under the License.                                           |**
     17 **|                                                                          |**
     18 **+--------------------------------------------------------------------------+**
     19 *******************************************************************************/
     20 
     21 /*--------------------------------------------------------------------------*/
     22 /* Module:		TI_AdapterPM.h*/
     23 /**/
     24 /* Purpose:		This API is responsible for the power management of the STA */
     25 /*--------------------------------------------------------------------------*/
     26 
     27 #ifndef TI_ADAPTER_PM_H
     28 #define TI_ADAPTER_PM_H
     29 
     30 #ifdef __cplusplus
     31 extern "C" {
     32 #endif
     33 /******************************************************************************
     34 
     35     Name:	TI_SetPowerMode
     36 	Desc:	Set the drivers power save profile.
     37     Params:	hAdapter - The Adapter handle returned by TI_AdapterInit().
     38     thePowerMgrProfile - one of: OS_POWER_MODE_AUTO,
     39                                  OS_POWER_MODE_ACTIVE,
     40                                  OS_POWER_MODE_SHORT_DOZE,
     41                                  OS_POWER_MODE_LONG_DOZE
     42     Return:	TI_RESULT_OK on success. Any other value indicates an error.
     43 
     44 ******************************************************************************/
     45 tiINT32     TI_SetPowerMode          (TI_HANDLE  hAdapter,
     46                                       OS_802_11_POWER_PROFILE thePowerMgrProfile);
     47 
     48 /******************************************************************************
     49 
     50     Name:	TI_GetPowerMode
     51 	Desc:	Get the drivers power save profile (see Power Management
     52             application notes).
     53     Params:	hAdapter - The Adapter handle returned by TI_AdapterInit().
     54     thePowerMgrProfile - one of: OS_POWER_MODE_AUTO,
     55                                  OS_POWER_MODE_ACTIVE,
     56                                  OS_POWER_MODE_SHORT_DOZE,
     57                                  OS_POWER_MODE_LONG_DOZE
     58     Return:	TI_RESULT_OK on success. Any other value indicates an error.
     59 
     60 ******************************************************************************/
     61 tiINT32     TI_GetPowerMode          (TI_HANDLE  hAdapter,
     62                                       OS_802_11_POWER_PROFILE* thePowerMgrProfile);
     63 
     64 
     65 /******************************************************************************
     66 
     67     Name:	TI_ConfigPowerManagement
     68     Desc:	Set the drivers power management mode.
     69     Params:	hAdapter - The Adapter handle returned by TI_AdapterInit().
     70             thePowerMgrProfile - Power management mode:
     71                 TI_POWER_MODE_ACTIVE: The driver keeps the WiLink 4.0 in Active
     72                                       state all the time.
     73                 TI_POWER_MODE_SHORT_DOZE: The WiLink 4.0 wakes up the host on
     74                                       every beacon passes the beacon to the driver
     75                                       and returns to ELP Doze immediately.
     76                 TI_POWER_MODE_LONG_DOZE: The WiLink 4.0 uses advanced algorithms
     77                                       to provide advanced system Power Save. The
     78                                       features used in WiLink 4.0 are:
     79                                       Wake on DTIM
     80                                       Beacon Filtering
     81                 TI_POWER_MODE_AUTO: Uses the TI algorithm to decide the best power
     82                                       profile (TNET_ACTIVE, SHORT_DOZE, LONG_DOZE)
     83                                       to use. The feature used in WiLink 4.0 is
     84                                       set to ACTIVE in high Traffic and to return
     85                                       to PS in low Traffic.
     86     Return:	TI_RESULT_OK on success. Any other value indicates an error.
     87 
     88 ******************************************************************************/
     89 tiINT32     TI_ConfigPowerManagement    (TI_HANDLE  hAdapter,
     90                                          OS_802_11_POWER_PROFILE thePowerMgrProfile );
     91 
     92 
     93 /******************************************************************************
     94 
     95     Name:	TI_SetPowerLevelPS
     96     Desc:	This function sets the driver's power level mode.
     97     Params:	hAdapter - The Adapter handle returned by TI_AdapterInit().
     98             pPowerLevel - Sets the power level mode to ELP, PD or AWAKE
     99     Return:	TI_RESULT_OK on success. Any other value indicates an error.
    100 
    101 ******************************************************************************/
    102 tiINT32     TI_SetPowerLevelPS          (TI_HANDLE  hAdapter,
    103                                          OS_802_11_POWER_LEVELS uPowerLevel );
    104 
    105 /******************************************************************************
    106 
    107     Name:	TI_GetPowerLevelPS
    108     Desc:	This function retrieves the driver's power level mode.
    109     Params:	hAdapter - The Adapter handle returned by TI_AdapterInit().
    110             uPowerLevel - A pointer to the OS_802_11_POWER_LEVELS enum type
    111                           (ELP, PD or AWAKE)
    112     Return:	TI_RESULT_OK on success. Any other value indicates an error.
    113 
    114 ******************************************************************************/
    115 tiINT32     TI_GetPowerLevelPS          (TI_HANDLE  hAdapter,
    116                                          OS_802_11_POWER_LEVELS* pPowerLevel );
    117 
    118 /******************************************************************************
    119 
    120     Name:	TI_SetPowerLevelDefault
    121     Desc:
    122     Params:	hAdapter - The Adapter handle returned by TI_AdapterInit().
    123             uPowerLevel -
    124     Return:	TI_RESULT_OK on success. Any other value indicates an error.
    125 
    126 ******************************************************************************/
    127 tiINT32     TI_SetPowerLevelDefault     (TI_HANDLE  hAdapter,
    128                                          OS_802_11_POWER_LEVELS uPowerLevel );
    129 
    130 /******************************************************************************
    131 
    132     Name:	TI_GetPowerLevelDefault
    133     Desc:
    134     Params:	hAdapter - The Adapter handle returned by TI_AdapterInit().
    135             pPowerLevel -
    136     Return:	TI_RESULT_OK on success. Any other value indicates an error.
    137 
    138 ******************************************************************************/
    139 tiINT32     TI_GetPowerLevelDefault     (TI_HANDLE  hAdapter,
    140                                          OS_802_11_POWER_LEVELS* pPowerLevel );
    141 
    142 /******************************************************************************
    143 
    144     Name:	TI_SetPowerMode
    145 	Desc:	Set the drivers doze mode when the power level is in
    146 			Auto mode
    147     Params:	hAdapter - The Adapter handle returned by TI_AdapterInit().
    148     thePowerMgrProfile - one of: OS_POWER_MODE_SHORT_DOZE,
    149                                  OS_POWER_MODE_LONG_DOZE
    150     Return:	TI_RESULT_OK on success. Any other value indicates an error.
    151 
    152 ******************************************************************************/
    153 tiINT32     TI_SetPowerLevelDozeMode  (TI_HANDLE  hAdapter,
    154                                       OS_802_11_POWER_PROFILE thePowerMgrProfile);
    155 
    156 /******************************************************************************
    157 
    158     Name:	TI_GetPowerLevelDozeMode
    159 	Desc:	Get the drivers doze mode when the power level is in
    160 			Auto mode
    161     Params:	hAdapter - The Adapter handle returned by TI_AdapterInit().
    162     thePowerMgrProfile - one of: OS_POWER_MODE_SHORT_DOZE,
    163                                  OS_POWER_MODE_LONG_DOZE
    164     Return:	TI_RESULT_OK on success. Any other value indicates an error.
    165 
    166 ******************************************************************************/
    167 tiINT32     TI_GetPowerLevelDozeMode  (TI_HANDLE  hAdapter,
    168                                       OS_802_11_POWER_PROFILE* thePowerMgrProfile);
    169 
    170 #ifdef __cplusplus
    171 }
    172 #endif
    173 
    174 #endif /* TI_ADAPTER_PM_H*/
    175