TWD/Ctrl/CmdBld.c
author shahar_levi@ti.com
Tue, 29 Jun 2010 12:34:26 +0100
changeset 0 10c42ec6c05f
permissions -rw-r--r--
version WiLink_Driver_6.1.1.0.8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
     1
/*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
     2
 * CmdBld.c
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
     3
 *
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
     4
 * Copyright(c) 1998 - 2010 Texas Instruments. All rights reserved.      
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
     5
 * All rights reserved.      
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
     6
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
     7
 * This program and the accompanying materials are made available under the 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
     8
 * terms of the Eclipse Public License v1.0 or BSD License which accompanies
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
     9
 * this distribution. The Eclipse Public License is available at
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    10
 * http://www.eclipse.org/legal/epl-v10.html and the BSD License is as below.                                   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    11
 *                                                                       
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    12
 * Redistribution and use in source and binary forms, with or without    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    13
 * modification, are permitted provided that the following conditions    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    14
 * are met:                                                              
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    15
 *                                                                       
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    16
 *  * Redistributions of source code must retain the above copyright     
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    17
 *    notice, this list of conditions and the following disclaimer.      
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    18
 *  * Redistributions in binary form must reproduce the above copyright  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    19
 *    notice, this list of conditions and the following disclaimer in    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    20
 *    the documentation and/or other materials provided with the         
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    21
 *    distribution.                                                      
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    22
 *  * Neither the name Texas Instruments nor the names of its            
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    23
 *    contributors may be used to endorse or promote products derived    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    24
 *    from this software without specific prior written permission.      
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    25
 *                                                                       
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    26
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    27
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT     
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    28
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    29
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    30
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    31
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT      
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    32
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    33
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    34
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    35
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    36
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    37
 */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    38
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    39
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    40
/** \file  CmdBld.c 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    41
 *  \brief Command builder main
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    42
 *
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    43
 *  \see   CmdBld.h 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    44
 */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    45
#define __FILE_ID__  FILE_ID_90
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    46
#include "TWDriver.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    47
#include "osApi.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    48
#include "tidef.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    49
#include "report.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    50
#include "public_infoele.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    51
#include "CmdBld.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    52
#include "txResult_api.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    53
#include "CmdBldCmdIE.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    54
#include "CmdBldCfgIE.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    55
#include "CmdBldItrIE.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    56
#include "CmdQueue_api.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    57
#include "eventMbox_api.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    58
#include "TWDriverInternal.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    59
#include "HwInit_api.h"
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    60
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    61
#define DEFAULT_TRACE_ENABLE                   0
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    62
#define DEFAULT_TRACE_OUT                      0
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    63
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    64
#define DEFAULT_PBCC_DYNAMIC_ENABLE_VAL        0
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    65
#define DEFAULT_PBCC_DYNAMIC_INTERVAL          500
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    66
#define DEFAULT_PBCC_DYNAMIC_IGNORE_MCAST      0
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    67
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    68
#define DEFAULT_HW_RADIO_CHANNEL               11
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    69
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    70
#define DEFAULT_CW_MIN                         15
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    71
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    72
#define DEFAULT_USE_DEVICE_ERROR_INTERRUPT     1
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    73
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    74
#define DEFAULT_UCAST_PRIORITY                 0
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    75
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    76
#define DEFAULT_NUM_STATIONS                   1
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    77
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    78
/* only for AP */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    79
/*  8 increase number of BC frames */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    80
#define DEFAULT_NUM_BCAST_TX_DESC              16  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    81
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    82
#define DEFAULT_BCAST_PRIORITY                 0x81
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    83
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    84
/* hw access method*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    85
typedef enum
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    86
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    87
    HW_ACCESS_BUS_SLAVE_INDIRECT    = 0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    88
    HW_ACCESS_BUS_SLAVE_DIRECT      = 1,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    89
    HW_ACCESS_BUS_MASTER            = 2
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    90
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    91
} EHwAccessMethod;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    92
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    93
typedef int (*TConfigFwCb) (TI_HANDLE, TI_STATUS);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    94
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    95
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    96
static TI_STATUS cmdBld_ConfigSeq               (TI_HANDLE hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    97
static TI_STATUS cmdBld_GetCurrentAssociationId (TI_HANDLE hCmdBld, TI_UINT16 *pAidVal);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    98
static TI_STATUS cmdBld_GetArpIpAddressesTable  (TI_HANDLE hCmdBld, TIpAddr *pIpAddr, TI_UINT8 *pEnabled , EIpVer *pIpVer);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
    99
static TI_STATUS cmdBld_JoinCmpltForReconfigCb  (TI_HANDLE hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   100
static TI_STATUS cmdBld_DummyCb                 (TI_HANDLE hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   101
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   102
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   103
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   104
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   105
TI_HANDLE cmdBld_Create (TI_HANDLE hOs)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   106
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   107
    TCmdBld        *pCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   108
    TI_UINT32          uNumOfStations;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   109
    TI_UINT32      i;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   110
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   111
    /* Allocate the command builder */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   112
    pCmdBld = (TCmdBld *)os_memoryAlloc (hOs, sizeof(TCmdBld),MemoryNormal);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   113
    if (pCmdBld == NULL)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   114
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   115
        WLAN_OS_REPORT(("cmdBld_Create: Error memory allocation\n"));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   116
        return NULL;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   117
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   118
    os_memoryZero (hOs, (void *)pCmdBld, sizeof(TCmdBld));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   119
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   120
    pCmdBld->hOs = hOs;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   121
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   122
    /* Create the Params object */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   123
    /* make this code flat, move it to configure */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   124
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   125
        TWlanParams     *pWlanParams    = &DB_WLAN(pCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   126
        TDmaParams      *pDmaParams     = &DB_DMA(pCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   127
        TBssInfoParams  *pBssInfoParams = &DB_BSS(pCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   128
        TGenCounters    *pGenCounters   = &DB_CNT(pCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   129
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   130
        /* General counters */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   131
        pGenCounters->FcsErrCnt                     = 0;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   132
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   133
        /* BSS info paramaters */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   134
        pBssInfoParams->RadioChannel                = DEFAULT_HW_RADIO_CHANNEL;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   135
        pBssInfoParams->Ctrl                        = 0;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   136
        /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   137
         * Intilaize the ctrl field in the BSS join structure 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   138
         * Only bit_7 in the ctrl field is vurrently in use.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   139
         * If bit_7 is on => Doing Tx flash before joining new AP 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   140
         */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   141
        pBssInfoParams->Ctrl                        |= JOIN_CMD_CTRL_TX_FLUSH;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   142
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   143
        /* WLAN parameters*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   144
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   145
        /* Init filters as station (start/join with BssType will overwrite the values) */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   146
        cmdBld_SetRxFilter ((TI_HANDLE)pCmdBld, RX_CONFIG_OPTION_MY_DST_MY_BSS, RX_FILTER_OPTION_FILTER_ALL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   147
        pWlanParams->UseDeviceErrorInterrupt        = DEFAULT_USE_DEVICE_ERROR_INTERRUPT;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   148
        /* Initialize the params object database fields */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   149
        pWlanParams->hwAccessMethod = HW_ACCESS_BUS_SLAVE_INDIRECT;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   150
        pWlanParams->maxSitesFragCollect = TWD_SITE_FRAG_COLLECT_DEF;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   151
        pWlanParams->RtsThreshold = TWD_RTS_THRESHOLD_DEF; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   152
        pWlanParams->bJoin = TI_FALSE;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   153
        /* Soft Gemini defaults */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   154
        pWlanParams->SoftGeminiEnable = SG_DISABLE;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   155
        /* Beacon filter defaults */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   156
        pWlanParams->beaconFilterParams.desiredState    = TI_FALSE;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   157
        pWlanParams->beaconFilterParams.numOfElements   = DEF_NUM_STORED_FILTERS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   158
        pWlanParams->beaconFilterIETable.numberOfIEs    = DEF_BEACON_FILTER_IE_TABLE_NUM;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   159
        pWlanParams->beaconFilterIETable.IETableSize    = BEACON_FILTER_IE_TABLE_DEF_SIZE;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   160
        /* Roaming  parameters */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   161
        pWlanParams->roamTriggers.BssLossTimeout    = NO_BEACON_DEFAULT_TIMEOUT;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   162
        pWlanParams->roamTriggers.TsfMissThreshold  = OUT_OF_SYNC_DEFAULT_THRESHOLD;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   163
        /* CoexActivity table */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   164
        pWlanParams->tWlanParamsCoexActivityTable.numOfElements = COEX_ACTIVITY_TABLE_DEF_NUM; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   165
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   166
        /* DMA parameters */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   167
        /* Initialize the Params object database fields*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   168
        pDmaParams->NumStations                     = DEFAULT_NUM_STATIONS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   169
        uNumOfStations                              = (TI_UINT32)pDmaParams->NumStations;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   170
        /* 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   171
         * loop an all rssi_snr triggers and initialize only index number. 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   172
         * Reason: 'index' not initialized --> 'index = 0' --> triggers 1..7 will overrun trigger '0' in cmdBld_ConfigSeq
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   173
         */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   174
        for (i = 0; i < NUM_OF_RSSI_SNR_TRIGGERS ; i++) 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   175
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   176
           pWlanParams->tRssiSnrTrigger[i].index = i;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   177
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   178
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   179
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   180
    pCmdBld->uLastElpCtrlMode = ELPCTRL_MODE_NORMAL;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   181
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   182
    /* Create security objects */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   183
    pCmdBld->tSecurity.eSecurityMode = TWD_CIPHER_NONE;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   184
    pCmdBld->tSecurity.uNumOfStations = uNumOfStations;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   185
    DB_KEYS(pCmdBld).pReconfKeys = (TSecurityKeys*)os_memoryAlloc (hOs, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   186
                                        sizeof(TSecurityKeys) * (uNumOfStations * NO_OF_RECONF_SECUR_KEYS_PER_STATION + NO_OF_EXTRA_RECONF_SECUR_KEYS),MemoryNormal);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   187
    os_memoryZero (hOs, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   188
                   (void *)(DB_KEYS(pCmdBld).pReconfKeys), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   189
                   sizeof(TSecurityKeys) * (uNumOfStations * NO_OF_RECONF_SECUR_KEYS_PER_STATION + NO_OF_EXTRA_RECONF_SECUR_KEYS));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   190
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   191
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   192
    WLAN_INIT_REPORT(("cmdBld_Create end %x\n",(TI_HANDLE)pCmdBld));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   193
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   194
    return (TI_HANDLE)pCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   195
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   196
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   197
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   198
TI_STATUS cmdBld_Destroy (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   199
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   200
    TCmdBld      *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   201
    TDmaParams   *pDmaParams = NULL;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   202
    TI_UINT32        uNumOfStations;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   203
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   204
    if (pCmdBld == NULL)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   205
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   206
        return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   207
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   208
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   209
    pDmaParams = &DB_DMA(hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   210
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   211
    uNumOfStations = (TI_UINT32)pDmaParams->NumStations;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   212
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   213
    if (DB_KEYS(pCmdBld).pReconfKeys)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   214
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   215
        os_memoryFree (pCmdBld->hOs, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   216
                       DB_KEYS(pCmdBld).pReconfKeys, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   217
                       sizeof(TSecurityKeys) * (uNumOfStations * NO_OF_RECONF_SECUR_KEYS_PER_STATION + NO_OF_EXTRA_RECONF_SECUR_KEYS));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   218
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   219
  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   220
    /* free the whalCtrl data structure */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   221
    os_memoryFree (pCmdBld->hOs, pCmdBld, sizeof(TCmdBld));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   222
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   223
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   224
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   225
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   226
TI_STATUS cmdBld_Restart (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   227
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   228
    TCmdBld      *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   229
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   230
    /* This init is for recovery stage */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   231
    pCmdBld->uLastElpCtrlMode = ELPCTRL_MODE_NORMAL;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   232
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   233
    /* 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   234
     * This call is to have the recovery process in AWAKE mode 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   235
     * Prevent move to sleep mode between Hw_Init and Fw_Init
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   236
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   237
	cmdBld_CfgIeSleepAuth (hCmdBld, DB_WLAN(hCmdBld).minPowerLevel, NULL, NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   238
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   239
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   240
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   241
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   242
TI_STATUS cmdBld_Config (TI_HANDLE  hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   243
                         TI_HANDLE  hReport, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   244
                         void      *fFinalizeDownload, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   245
                         TI_HANDLE  hFinalizeDownload, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   246
                         TI_HANDLE  hEventMbox, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   247
                         TI_HANDLE  hCmdQueue,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   248
                         TI_HANDLE  hTwIf)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   249
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   250
    TCmdBld        *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   251
    TI_UINT32       index;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   252
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   253
    pCmdBld->hReport = hReport;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   254
    pCmdBld->fFinalizeDownload = fFinalizeDownload;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   255
    pCmdBld->hFinalizeDownload = hFinalizeDownload;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   256
    pCmdBld->hEventMbox = hEventMbox;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   257
    pCmdBld->hCmdQueue = hCmdQueue;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   258
    pCmdBld->hTwIf  = hTwIf;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   259
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   260
    /* Reset all reconfig valid fields*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   261
    DB_KEYS(pCmdBld).bHwEncDecrEnableValid = TI_FALSE;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   262
    DB_KEYS(pCmdBld).bDefaultKeyIdValid    = TI_FALSE;  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   263
    for (index = 0; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   264
         index < pCmdBld->tSecurity.uNumOfStations * NO_OF_RECONF_SECUR_KEYS_PER_STATION + NO_OF_EXTRA_RECONF_SECUR_KEYS; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   265
         index++)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   266
        (DB_KEYS(pCmdBld).pReconfKeys + index)->keyType = KEY_NULL;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   267
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   268
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   269
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   270
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   271
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   272
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   273
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   274
static void cmdBld_ConfigFwCb (TI_HANDLE hCmdBld, TI_STATUS status, void *pData)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   275
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   276
    TCmdBld        *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   277
    MemoryMap_t    *pMemMap = &pCmdBld->tMemMap;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   278
    TDmaParams     *pDmaParams = &DB_DMA(hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   279
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   280
    /* Arrived from callback */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   281
    if (pData)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   282
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   283
        TI_UINT32         *pSwap, i, uMemMapNumFields;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   284
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   285
        /* Solve endian problem (all fields are 32 bit) */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   286
        uMemMapNumFields = (sizeof(MemoryMap_t) - sizeof(EleHdrStruct)) % 4;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   287
        pSwap = (TI_UINT32* )&(pMemMap->codeStart);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   288
        for (i = 0; i < uMemMapNumFields; i++)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   289
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   290
            pSwap[i] = ENDIAN_HANDLE_LONG(pSwap[i]);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   291
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   292
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   293
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   294
    /* Save number of TX blocks */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   295
    pDmaParams->NumTxBlocks = pMemMap->numTxMemBlks;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   296
    /* Firmware Control block is internally pointing to TxResultInterface structure */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   297
    pDmaParams->fwTxResultInterface = pMemMap->trqBlock.controlBlock; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   298
    pDmaParams->fwRxCBufPtr =           pMemMap->rxCBufPtr;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   299
    pDmaParams->fwTxCBufPtr =           pMemMap->txCBufPtr;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   300
    pDmaParams->fwRxControlPtr =        pMemMap->rxControlPtr;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   301
    pDmaParams->fwTxControlPtr =        pMemMap->txControlPtr;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   302
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   303
    pDmaParams->PacketMemoryPoolStart = (TI_UINT32)pMemMap->packetMemoryPoolStart;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   304
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   305
    /* Call the upper layer callback */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   306
    (*((TConfigFwCb)pCmdBld->fConfigFwCb)) (pCmdBld->hConfigFwCb, TI_OK);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   307
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   308
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   309
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   310
/****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   311
 *                      cmdBld_ConfigFw()
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   312
 ****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   313
 * DESCRIPTION: Configure the WLAN firmware
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   314
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   315
 * INPUTS: None 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   316
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   317
 * OUTPUT: None
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   318
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   319
 * RETURNS: TI_OK or TI_NOK
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   320
 ****************************************************************************/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   321
TI_STATUS cmdBld_ConfigFw (TI_HANDLE hCmdBld, void *fConfigFwCb, TI_HANDLE hConfigFwCb)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   322
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   323
    TCmdBld        *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   324
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   325
    pCmdBld->fConfigFwCb = fConfigFwCb;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   326
    pCmdBld->hConfigFwCb = hConfigFwCb; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   327
    pCmdBld->uIniSeq = 0;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   328
    /* should be re-initialized for recovery,   pCmdBld->uLastElpCtrlMode = ELPCTRL_MODE_KEEP_AWAKE; */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   329
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   330
    /* Start configuration sequence */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   331
    return cmdBld_ConfigSeq (hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   332
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   333
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   334
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   335
typedef TI_STATUS (*TCmdCfgFunc) (TI_HANDLE);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   336
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   337
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   338
static TI_STATUS __cmd_probe_req (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   339
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   340
    TI_STATUS   tStatus = TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   341
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   342
    /* keep space for 2.4 GHz probe request */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   343
    tStatus = cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   344
                                                  NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   345
                                                  DB_WLAN(hCmdBld).probeRequestTemplateSize,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   346
                                                  CFG_TEMPLATE_PROBE_REQ_2_4,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   347
                                                  0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   348
                                                  NULL,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   349
                                                  NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   350
    if (TI_OK != tStatus)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   351
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   352
        return tStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   353
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   354
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   355
    /* keep space for 5.0 GHz probe request */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   356
    return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   357
                                               NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   358
                                               DB_WLAN(hCmdBld).probeRequestTemplateSize,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   359
                                               CFG_TEMPLATE_PROBE_REQ_5,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   360
                                               0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   361
                                             (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   362
                                             hCmdBld); 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   363
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   364
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   365
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   366
static TI_STATUS __cmd_null_data (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   367
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   368
    return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   369
                                             NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   370
                                             DB_WLAN(hCmdBld).nullTemplateSize,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   371
                                               TEMPLATE_NULL_DATA,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   372
                                               0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   373
                                             (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   374
                                             hCmdBld); 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   375
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   376
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   377
static TI_STATUS __cmd_burst_mode_enable (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   378
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   379
	return cmdBld_CfgIeBurstMode (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   380
							  DB_AC(hCmdBld).isBurstModeEnabled, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   381
							  (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   382
							  hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   383
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   384
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   385
/*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   386
static TI_STATUS __cmd_smart_reflex_debug (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   387
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   388
    return cmdBld_CfgIeSRDebug (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   389
							   &(DB_SR(hCmdBld).tSmartReflexDebugParams),
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   390
							   (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   391
							   hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   392
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   393
               
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   394
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   395
static TI_STATUS __cmd_smart_reflex_state (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   396
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   397
	return cmdBld_CfgIeSRState (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   398
							   (uint8) DB_SR(hCmdBld).tSmartReflexState.enable, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   399
							   (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   400
							   hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   401
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   402
*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   403
static TI_STATUS __cmd_disconn (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   404
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   405
    return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   406
                                             NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   407
                                             DB_WLAN(hCmdBld).disconnTemplateSize,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   408
                                             TEMPLATE_DISCONNECT,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   409
                                             0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   410
                                             (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   411
                                             hCmdBld); 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   412
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   413
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   414
static TI_STATUS __cmd_ps_poll (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   415
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   416
    return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   417
                                             NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   418
                                             DB_WLAN(hCmdBld).PsPollTemplateSize,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   419
                                               TEMPLATE_PS_POLL,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   420
                                               0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   421
                                             (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   422
                                             hCmdBld); 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   423
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   424
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   425
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   426
static TI_STATUS __cmd_qos_null_data (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   427
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   428
    return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   429
                                             NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   430
                                             DB_WLAN(hCmdBld).qosNullDataTemplateSize,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   431
                                               TEMPLATE_QOS_NULL_DATA,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   432
                                               0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   433
                                             (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   434
                                             hCmdBld); 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   435
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   436
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   437
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   438
static TI_STATUS __cmd_probe_resp (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   439
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   440
    return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   441
                                             NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   442
                                             DB_WLAN(hCmdBld).probeResponseTemplateSize,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   443
                                               TEMPLATE_PROBE_RESPONSE,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   444
                                               0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   445
                                             (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   446
                                             hCmdBld); 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   447
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   448
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   449
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   450
static TI_STATUS __cmd_beacon (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   451
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   452
    return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   453
                                             NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   454
                                             DB_WLAN(hCmdBld).beaconTemplateSize,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   455
                                               TEMPLATE_BEACON,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   456
                                               0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   457
                                             (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   458
                                             hCmdBld); 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   459
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   460
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   461
static TI_STATUS __cmd_keep_alive_tmpl (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   462
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   463
    TI_UINT32   index;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   464
    TI_STATUS   status = TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   465
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   466
    /* 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   467
     * config templates 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   468
     * fisr configure all indexes but the last one with no CB, and than configure the last one 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   469
     * with a CB to continue configuration.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   470
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   471
    for (index = 0; index < KLV_MAX_TMPL_NUM - 1; index++)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   472
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   473
        status =  cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   474
                                                      NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   475
                                                      MAX_TEMPLATES_SIZE,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   476
                                                      TEMPLATE_KLV,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   477
                                                      index,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   478
                                                      NULL,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   479
                                                      NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   480
        if (TI_OK != status)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   481
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   482
            return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   483
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   484
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   485
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   486
    status =  cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   487
                                                  NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   488
                                                  MAX_TEMPLATES_SIZE,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   489
                                                  TEMPLATE_KLV,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   490
                                                  index,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   491
                                                  (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   492
                                                  hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   493
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   494
    return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   495
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   496
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   497
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   498
static TI_STATUS __cfg_mem (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   499
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   500
    /* Configure the weight among the different hardware queues */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   501
    return cmdBld_CfgIeConfigMemory (hCmdBld, &DB_DMA(hCmdBld), (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   502
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   503
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   504
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   505
static TI_STATUS __cfg_rx_msdu_life_time (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   506
{    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   507
    /* Configure the Rx Msdu Life Time (expiry time of de-fragmentation in FW) */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   508
    return cmdBld_CfgIeRxMsduLifeTime (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   509
                                       DB_WLAN(hCmdBld).MaxRxMsduLifetime, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   510
                                       (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   511
                                       hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   512
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   513
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   514
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   515
static TI_STATUS __cfg_rx (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   516
{    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   517
    return cmdBld_CfgIeRx (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   518
                           DB_WLAN(hCmdBld).RxConfigOption, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   519
                           DB_WLAN(hCmdBld).RxFilterOption, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   520
                           (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   521
                           hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   522
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   523
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   524
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   525
static TI_STATUS __cfg_ac_params_0 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   526
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   527
    /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   528
     * NOTE: Set following parameter only if configured.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   529
     *       Otherwise, is contains garbage.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   530
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   531
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   532
    if (DB_AC(hCmdBld).isAcConfigured[0])
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   533
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   534
        return cmdBld_CfgAcParams (hCmdBld, &DB_AC(hCmdBld).ac[0], (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   535
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   536
    else
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   537
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   538
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   539
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   540
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   541
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   542
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   543
static TI_STATUS __cfg_ac_params_1 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   544
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   545
    /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   546
     * NOTE: Set following parameter only if configured.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   547
     *       Otherwise, is contains garbage.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   548
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   549
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   550
    if (DB_AC(hCmdBld).isAcConfigured[1])
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   551
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   552
        return cmdBld_CfgAcParams (hCmdBld, &DB_AC(hCmdBld).ac[1], (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   553
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   554
    else
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   555
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   556
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   557
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   558
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   559
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   560
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   561
static TI_STATUS __cfg_ac_params_2 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   562
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   563
    /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   564
     * NOTE: Set following parameter only if configured.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   565
     *       Otherwise, is contains garbage.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   566
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   567
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   568
    if (DB_AC(hCmdBld).isAcConfigured[2])
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   569
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   570
        return cmdBld_CfgAcParams (hCmdBld, &DB_AC(hCmdBld).ac[2], (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   571
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   572
    else
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   573
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   574
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   575
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   576
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   577
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   578
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   579
static TI_STATUS __cfg_ac_params_3 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   580
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   581
    /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   582
     * NOTE: Set following parameter only if configured.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   583
     *       Otherwise, is contains garbage.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   584
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   585
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   586
    if (DB_AC(hCmdBld).isAcConfigured[3])
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   587
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   588
        return cmdBld_CfgAcParams (hCmdBld, &DB_AC(hCmdBld).ac[3], (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   589
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   590
    else
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   591
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   592
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   593
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   594
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   595
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   596
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   597
static TI_STATUS __cfg_tid_0 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   598
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   599
    /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   600
     * NOTE: Set following parameter only if configured.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   601
     *       Otherwise, is contains garbage.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   602
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   603
    if (DB_QUEUES(hCmdBld).isQueueConfigured[0])
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   604
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   605
        return cmdBld_CfgTid (hCmdBld, &DB_QUEUES(hCmdBld).queues[0], (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   606
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   607
    else
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   608
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   609
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   610
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   611
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   612
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   613
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   614
static TI_STATUS __cfg_tid_1 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   615
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   616
    /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   617
     * NOTE: Set following parameter only if configured.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   618
     *       Otherwise, is contains garbage.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   619
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   620
    if (DB_QUEUES(hCmdBld).isQueueConfigured[1])
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   621
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   622
        return cmdBld_CfgTid (hCmdBld, &DB_QUEUES(hCmdBld).queues[1], (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   623
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   624
    else
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   625
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   626
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   627
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   628
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   629
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   630
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   631
static TI_STATUS __cfg_tid_2 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   632
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   633
    /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   634
     * NOTE: Set following parameter only if configured.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   635
     *       Otherwise, is contains garbage.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   636
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   637
    if (DB_QUEUES(hCmdBld).isQueueConfigured[2])
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   638
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   639
        return cmdBld_CfgTid (hCmdBld, &DB_QUEUES(hCmdBld).queues[2], (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   640
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   641
    else
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   642
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   643
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   644
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   645
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   646
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   647
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   648
static TI_STATUS __cfg_tid_3 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   649
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   650
    /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   651
     * NOTE: Set following parameter only if configured.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   652
     *       Otherwise, is contains garbage.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   653
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   654
    if (DB_QUEUES(hCmdBld).isQueueConfigured[3])
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   655
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   656
        return cmdBld_CfgTid (hCmdBld, &DB_QUEUES(hCmdBld).queues[3], (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   657
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   658
    else
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   659
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   660
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   661
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   662
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   663
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   664
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   665
static TI_STATUS __cfg_ps_rx_streaming (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   666
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   667
    TI_UINT32       index;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   668
    TI_STATUS        eStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   669
    TPsRxStreaming *pPsRxStreaming;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   670
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   671
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   672
    if (!DB_WLAN(hCmdBld).bJoin)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   673
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   674
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   675
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   676
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   677
    /* Config enabled streams (disable is the FW default). */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   678
    for (index = 0; index < MAX_NUM_OF_802_1d_TAGS - 1; index++)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   679
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   680
        pPsRxStreaming = &(DB_PS_STREAM(hCmdBld).tid[index]);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   681
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   682
        if (pPsRxStreaming->bEnabled)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   683
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   684
            eStatus = cmdBld_CfgPsRxStreaming (hCmdBld, pPsRxStreaming, NULL, NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   685
            if (eStatus != TI_OK) 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   686
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   687
                return eStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   688
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   689
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   690
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   691
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   692
    /* Set NOK for a case the following config is skipped, to indicate that no callback is expected */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   693
    eStatus = TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   694
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   695
    pPsRxStreaming = &(DB_PS_STREAM(hCmdBld).tid[MAX_NUM_OF_802_1d_TAGS - 1]);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   696
    if (pPsRxStreaming->bEnabled)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   697
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   698
        eStatus = cmdBld_CfgPsRxStreaming (hCmdBld, pPsRxStreaming, (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   699
        if (eStatus != TI_OK) 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   700
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   701
            return eStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   702
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   703
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   704
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   705
    return eStatus; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   706
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   707
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   708
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   709
static TI_STATUS __cfg_rx_data_filter (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   710
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   711
    TI_UINT32       index;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   712
    TI_STATUS       eStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   713
    TRxDataFilter   *pFilters;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   714
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   715
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   716
    if (DB_RX_DATA_FLTR(hCmdBld).bEnabled) 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   717
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   718
        eStatus = cmdBld_CfgIeEnableRxDataFilter (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   719
                                                  DB_RX_DATA_FLTR(hCmdBld).bEnabled, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   720
                                                  DB_RX_DATA_FLTR(hCmdBld).eDefaultAction, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   721
                                                  NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   722
                                                  NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   723
        if (eStatus != TI_OK) 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   724
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   725
            return eStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   726
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   727
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   728
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   729
    /* 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   730
     * Config enabled filters (last one is separated to use the callback) 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   731
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   732
    for (index = 0; index < MAX_DATA_FILTERS - 1; index++)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   733
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   734
        pFilters = &(DB_RX_DATA_FLTR(hCmdBld).aRxDataFilter[index]);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   735
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   736
        if (pFilters->uCommand == ADD_FILTER)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   737
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   738
            eStatus = cmdBld_CfgIeRxDataFilter (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   739
                                                pFilters->uIndex, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   740
                                                pFilters->uCommand, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   741
                                                pFilters->eAction, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   742
                                                pFilters->uNumFieldPatterns, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   743
                                                pFilters->uLenFieldPatterns, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   744
                                                pFilters->aFieldPattern, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   745
                                                NULL, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   746
                                                NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   747
            if (eStatus != TI_OK) 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   748
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   749
                return eStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   750
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   751
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   752
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   753
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   754
    /* Set NOK for a case the following config is skipped, to indicate that no callback is expected */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   755
        eStatus = TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   756
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   757
    pFilters = &(DB_RX_DATA_FLTR(hCmdBld).aRxDataFilter[MAX_DATA_FILTERS - 1]);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   758
    if (pFilters->uCommand == ADD_FILTER)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   759
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   760
        eStatus = cmdBld_CfgIeRxDataFilter (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   761
                                            pFilters->uIndex, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   762
                                            pFilters->uCommand, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   763
                                            pFilters->eAction, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   764
                                            pFilters->uNumFieldPatterns, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   765
                                            pFilters->uLenFieldPatterns, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   766
                                            pFilters->aFieldPattern, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   767
                                            (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   768
                                            hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   769
        if (eStatus != TI_OK) 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   770
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   771
            return eStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   772
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   773
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   774
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   775
    return eStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   776
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   777
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   778
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   779
static TI_STATUS __cfg_pd_threshold (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   780
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   781
    return cmdBld_CfgIePacketDetectionThreshold (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   782
                                                 DB_WLAN(hCmdBld).PacketDetectionThreshold, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   783
                                                 (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   784
                                                 hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   785
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   786
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   787
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   788
static TI_STATUS __cfg_slot_time (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   789
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   790
    return cmdBld_CfgIeSlotTime (hCmdBld, DB_WLAN(hCmdBld).SlotTime, (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   791
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   792
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   793
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   794
static TI_STATUS __cfg_arp_ip_filter (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   795
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   796
    return cmdBld_CfgIeArpIpFilter (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   797
                                    DB_WLAN(hCmdBld).arp_IP_addr, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   798
                                    (TI_BOOL)DB_WLAN(hCmdBld).isArpIpFilteringEnabled, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   799
                                    (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   800
                                    hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   801
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   802
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   803
static TI_STATUS __cfg_group_address_table (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   804
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   805
    return cmdBld_CfgIeGroupAdressTable (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   806
                                         DB_WLAN(hCmdBld).numGroupAddrs, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   807
                                         DB_WLAN(hCmdBld).aGroupAddr, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   808
                                         DB_WLAN(hCmdBld).isMacAddrFilteringnabled, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   809
                                         (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   810
                                         hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   811
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   812
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   813
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   814
static TI_STATUS __cfg_service_period_timeout (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   815
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   816
    return cmdBld_CfgIeServicePeriodTimeout (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   817
                                             &DB_WLAN(hCmdBld).rxTimeOut, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   818
                                             (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   819
                                             hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   820
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   821
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   822
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   823
static TI_STATUS __cfg_rts_threshold (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   824
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   825
    return cmdBld_CfgRtsThreshold (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   826
                                   DB_WLAN(hCmdBld).RtsThreshold, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   827
                                   (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   828
                                   hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   829
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   830
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   831
static TI_STATUS __cfg_dco_itrim_params (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   832
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   833
    return cmdBld_CfgDcoItrimParams (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   834
                                     DB_WLAN(hCmdBld).dcoItrimEnabled, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   835
                                     DB_WLAN(hCmdBld).dcoItrimModerationTimeoutUsec, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   836
                                     (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   837
                                     hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   838
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   839
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   840
static TI_STATUS __cfg_fragment_threshold (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   841
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   842
    return cmdBld_CfgIeFragmentThreshold (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   843
                                          DB_WLAN(hCmdBld).FragmentThreshold, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   844
                                          (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   845
                                          hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   846
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   847
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   848
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   849
static TI_STATUS __cfg_pm_config (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   850
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   851
    return cmdBld_CfgIePmConfig (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   852
                                 DB_WLAN(hCmdBld).uHostClkSettlingTime,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   853
                                 DB_WLAN(hCmdBld).uHostFastWakeupSupport, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   854
                                 (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   855
                                 hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   856
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   857
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   858
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   859
static TI_STATUS __cfg_beacon_filter_opt (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   860
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   861
    /* Set The Beacon Filter in HAL */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   862
    return cmdBld_CfgIeBeaconFilterOpt (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   863
                                        DB_WLAN(hCmdBld).beaconFilterParams.desiredState,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   864
                                        DB_WLAN(hCmdBld).beaconFilterParams.numOfElements, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   865
                                        (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   866
                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   867
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   868
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   869
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   870
static TI_STATUS __cfg_beacon_filter_table (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   871
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   872
    return cmdBld_CfgIeBeaconFilterTable (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   873
                                          DB_WLAN(hCmdBld).beaconFilterIETable.numberOfIEs,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   874
                                          DB_WLAN(hCmdBld).beaconFilterIETable.IETable,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   875
                                          DB_WLAN(hCmdBld).beaconFilterIETable.IETableSize, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   876
                                          (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   877
                                          hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   878
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   879
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   880
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   881
static TI_STATUS __cfg_tx_cmplt_pacing (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   882
{    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   883
    return cmdBld_CfgIeTxCmpltPacing (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   884
                                      DB_WLAN(hCmdBld).TxCompletePacingThreshold,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   885
                                      DB_WLAN(hCmdBld).TxCompletePacingTimeout,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   886
                                      (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   887
                                      hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   888
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   889
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   890
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   891
static TI_STATUS __cfg_rx_intr_pacing (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   892
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   893
    return cmdBld_CfgIeRxIntrPacing (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   894
                                     DB_WLAN(hCmdBld).RxIntrPacingThreshold,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   895
                                     DB_WLAN(hCmdBld).RxIntrPacingTimeout,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   896
                         (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   897
                               hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   898
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   899
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   900
#if 0
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   901
#ifdef TI_TEST
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   902
    static TI_STATUS __cfg_coex_activity_table (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   903
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   904
        TCmdBld       *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   905
        TI_UINT32 uNumberOfIEs = DB_WLAN(hCmdBld).tWlanParamsCoexActivityTable.numOfElements;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   906
        TCoexActivity *CoexActivityTable = DB_WLAN(hCmdBld).tWlanParamsCoexActivityTable.entry;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   907
        TI_STATUS   status = TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   908
        TI_UINT32   index;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   909
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   910
        TRACE1(pCmdBld->hReport, REPORT_SEVERITY_INFORMATION , " CoexActivity, uNumberOfIEs=%d\n", uNumberOfIEs);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   911
        if (uNumberOfIEs == 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   912
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   913
            return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   914
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   915
        /* 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   916
         * config CoexActivity table 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   917
         * first configure all indexes but the last one with no CB, and than configure the last one 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   918
         * with a CB to continue configuration.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   919
         */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   920
        for (index = 0; index < uNumberOfIEs-1; index++)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   921
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   922
            TRACE1(pCmdBld->hReport, REPORT_SEVERITY_INFORMATION , " CoexActivity, send %d\n", index);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   923
            status =  cmdBld_CfgIeCoexActivity (hCmdBld, &CoexActivityTable[index], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   924
                                                    NULL, NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   925
            if (TI_OK != status)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   926
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   927
                return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   928
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   929
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   930
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   931
        /* Send last activity with a callback to continue config sequence */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   932
        TRACE1(pCmdBld->hReport, REPORT_SEVERITY_INFORMATION , " CoexActivity, send last %d\n", index);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   933
        status =  cmdBld_CfgIeCoexActivity (hCmdBld, &CoexActivityTable[index], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   934
                                                (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   935
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   936
        return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   937
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   938
#endif
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   939
#endif
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   940
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   941
static TI_STATUS __cfg_cca_threshold (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   942
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   943
    return cmdBld_CfgIeCcaThreshold (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   944
                                     DB_WLAN(hCmdBld).EnergyDetection, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   945
                                     (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   946
                                     hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   947
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   948
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   949
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   950
static TI_STATUS __cfg_bcn_brc_options (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   951
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   952
    TPowerMgmtConfig powerMgmtConfig;                   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   953
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   954
    /* Beacon broadcast options */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   955
    powerMgmtConfig.BcnBrcOptions = DB_WLAN(hCmdBld).BcnBrcOptions;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   956
	powerMgmtConfig.ConsecutivePsPollDeliveryFailureThreshold = DB_WLAN(hCmdBld).ConsecutivePsPollDeliveryFailureThreshold;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   957
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   958
    return cmdBld_CfgIeBcnBrcOptions (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   959
                                      &powerMgmtConfig, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   960
                                      (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   961
                                      hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   962
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   963
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   964
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   965
static TI_STATUS __cmd_enable_rx (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   966
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   967
    /* Enable rx path on the hardware */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   968
    return cmdBld_CmdEnableRx (hCmdBld, (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   969
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   970
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   971
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   972
static TI_STATUS __cmd_enable_tx (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   973
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   974
    /* Enable tx path on the hardware */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   975
    return cmdBld_CmdEnableTx (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   976
                               DB_DEFAULT_CHANNEL(hCmdBld), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   977
                               (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   978
                               hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   979
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   980
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   981
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   982
static TI_STATUS __cfg_ps_wmm (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   983
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   984
    /* ACX for a work around for Wi-Fi test */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   985
    return cmdBld_CfgIePsWmm (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   986
                              DB_WLAN(hCmdBld).WiFiWmmPS, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   987
                              (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   988
                              hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   989
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   990
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   991
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   992
static TI_STATUS __cfg_rssi_snr_weights (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   993
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   994
    /* RSSI/SNR Weights for Average calculations */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   995
    return cmdBld_CfgIeRssiSnrWeights (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   996
                                       &DB_WLAN(hCmdBld).tRssiSnrWeights, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   997
                                       (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   998
                                       hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
   999
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1000
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1001
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1002
static TI_STATUS __cfg_event_scan_cmplt (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1003
{    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1004
    TCmdBld   *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1005
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1006
    /* Enable the scan complete interrupt source */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1007
    return eventMbox_UnMaskEvent (pCmdBld->hEventMbox, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1008
                               TWD_OWN_EVENT_SCAN_CMPLT, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1009
                               (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1010
                               hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1011
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1012
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1013
static TI_STATUS __cfg_event_sps_scan_cmplt (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1014
{    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1015
    TCmdBld   *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1016
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1017
    return eventMbox_UnMaskEvent (pCmdBld->hEventMbox, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1018
                               TWD_OWN_EVENT_SPS_SCAN_CMPLT, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1019
                               (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1020
                               hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1021
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1022
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1023
static TI_STATUS __cfg_event_plt_rx_calibration_cmplt (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1024
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1025
    TCmdBld   *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1026
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1027
    return eventMbox_UnMaskEvent (pCmdBld->hEventMbox, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1028
                               TWD_OWN_EVENT_PLT_RX_CALIBRATION_COMPLETE, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1029
                               (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1030
                               hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1031
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1032
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1033
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1034
static TI_STATUS __cfg_hw_enc_dec_enable (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1035
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1036
    return cmdBld_CfgHwEncDecEnable (hCmdBld, TI_TRUE, (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1037
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1038
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1039
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1040
static TI_STATUS __cfg_rssi_snr_trigger_0 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1041
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1042
    /* RSSI/SNR Troggers */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1043
    return  cmdBld_CfgIeRssiSnrTrigger (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1044
                                        &DB_WLAN(hCmdBld).tRssiSnrTrigger[0], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1045
                                        (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1046
                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1047
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1048
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1049
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1050
static TI_STATUS __cfg_rssi_snr_trigger_1 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1051
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1052
    /* RSSI/SNR Troggers */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1053
    return  cmdBld_CfgIeRssiSnrTrigger (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1054
                                        &DB_WLAN(hCmdBld).tRssiSnrTrigger[1], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1055
                                        (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1056
                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1057
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1058
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1059
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1060
static TI_STATUS __cfg_rssi_snr_trigger_2 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1061
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1062
    /* RSSI/SNR Troggers */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1063
    return  cmdBld_CfgIeRssiSnrTrigger (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1064
                                        &DB_WLAN(hCmdBld).tRssiSnrTrigger[2], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1065
                                        (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1066
                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1067
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1068
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1069
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1070
static TI_STATUS __cfg_rssi_snr_trigger_3 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1071
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1072
    /* RSSI/SNR Troggers */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1073
    return  cmdBld_CfgIeRssiSnrTrigger (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1074
                                        &DB_WLAN(hCmdBld).tRssiSnrTrigger[3], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1075
                                        (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1076
                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1077
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1078
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1079
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1080
static TI_STATUS __cfg_rssi_snr_trigger_4 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1081
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1082
    /* RSSI/SNR Troggers */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1083
    return  cmdBld_CfgIeRssiSnrTrigger (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1084
                                        &DB_WLAN(hCmdBld).tRssiSnrTrigger[4], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1085
                                        (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1086
                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1087
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1088
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1089
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1090
static TI_STATUS __cfg_rssi_snr_trigger_5 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1091
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1092
    /* RSSI/SNR Troggers */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1093
    return  cmdBld_CfgIeRssiSnrTrigger (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1094
                                        &DB_WLAN(hCmdBld).tRssiSnrTrigger[5], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1095
                                        (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1096
                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1097
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1098
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1099
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1100
static TI_STATUS __cfg_rssi_snr_trigger_6 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1101
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1102
    /* RSSI/SNR Troggers */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1103
    return  cmdBld_CfgIeRssiSnrTrigger (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1104
                                        &DB_WLAN(hCmdBld).tRssiSnrTrigger[6], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1105
                                        (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1106
                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1107
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1108
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1109
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1110
static TI_STATUS __cfg_rssi_snr_trigger_7 (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1111
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1112
    /* RSSI/SNR Troggers */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1113
    return  cmdBld_CfgIeRssiSnrTrigger (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1114
                                        &DB_WLAN(hCmdBld).tRssiSnrTrigger[7], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1115
                                        (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1116
                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1117
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1118
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1119
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1120
static TI_STATUS __cfg_max_tx_retry (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1121
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1122
    return cmdBld_CfgIeMaxTxRetry (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1123
                                   &DB_WLAN(hCmdBld).roamTriggers, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1124
                                   (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1125
                                   hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1126
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1127
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1128
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1129
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1130
static TI_STATUS __cfg_split_scan_timeout (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1131
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1132
    return cmdBld_CmdIeSetSplitScanTimeOut (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1133
                                            DB_WLAN(hCmdBld).uSlicedScanTimeOut, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1134
                                            (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1135
                                            hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1136
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1137
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1138
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1139
static TI_STATUS __cfg_conn_monit_params (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1140
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1141
    return cmdBld_CfgIeConnMonitParams (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1142
                                        &DB_WLAN(hCmdBld).roamTriggers, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1143
                                        (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1144
                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1145
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1146
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1147
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1148
static TI_STATUS __cfg_bet (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1149
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1150
    return cmdBld_CfgBet (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1151
                          DB_WLAN(hCmdBld).BetEnable, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1152
                          DB_WLAN(hCmdBld).MaximumConsecutiveET,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1153
                          (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1154
                          hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1155
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1156
                
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1157
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1158
static TI_STATUS __cfg_cts_protection (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1159
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1160
    return cmdBld_CfgIeCtsProtection (hCmdBld,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1161
                                      DB_WLAN(hCmdBld).CtsToSelf, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1162
                                      (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1163
                                      hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1164
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1165
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1166
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1167
static TI_STATUS __cfg_radio_params (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1168
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1169
    return cmdBld_CfgIeRadioParams (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1170
                                    &DB_RADIO(hCmdBld), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1171
                                    (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1172
                                    hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1173
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1174
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1175
static TI_STATUS __cfg_platform_params (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1176
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1177
    return cmdBld_CfgPlatformGenParams(hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1178
                                      &DB_GEN(hCmdBld), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1179
                                      (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1180
                                      hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1181
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1182
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1183
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1184
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1185
static TI_STATUS __cfg_tx_rate_policy (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1186
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1187
    /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1188
     * JOIN (use the local parameters), otherwize the CORE will reconnect
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1189
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1190
    if (DB_WLAN(hCmdBld).bJoin)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1191
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1192
        /* Set TxRatePolicy */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1193
        return cmdBld_CfgTxRatePolicy (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1194
                                       &DB_BSS(hCmdBld).TxRateClassParams, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1195
                                       (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1196
                                       hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1197
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1198
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1199
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1200
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1201
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1202
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1203
static TI_STATUS __cmd_beacon_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1204
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1205
    if (DB_WLAN(hCmdBld).bJoin && DB_TEMP(hCmdBld).Beacon.Size != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1206
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1207
        return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1208
                                                   &(DB_TEMP(hCmdBld).Beacon), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1209
                                                 (TI_UINT16)DB_TEMP(hCmdBld).Beacon.Size,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1210
                                                   TEMPLATE_BEACON,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1211
                                                   0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1212
                                                 (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1213
                                                 hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1214
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1215
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1216
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1217
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1218
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1219
static TI_STATUS __cmd_probe_resp_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1220
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1221
    if (DB_WLAN(hCmdBld).bJoin && DB_TEMP(hCmdBld).ProbeResp.Size != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1222
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1223
        return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1224
                                                   &(DB_TEMP(hCmdBld).ProbeResp), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1225
                                                 (TI_UINT16)DB_TEMP(hCmdBld).ProbeResp.Size,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1226
                                                   TEMPLATE_PROBE_RESPONSE,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1227
                                                   0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1228
                                                 (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1229
                                                 hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1230
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1231
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1232
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1233
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1234
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1235
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1236
static TI_STATUS __cmd_probe_req_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1237
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1238
    TI_STATUS   tStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1239
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1240
    /* set Probe Req template also if join == false ! */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1241
    if (DB_TEMP(hCmdBld).ProbeReq24.Size != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1242
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1243
        tStatus =  cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1244
                                                       &(DB_TEMP(hCmdBld).ProbeReq24), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1245
                                                       (TI_UINT16)DB_TEMP(hCmdBld).ProbeReq24.Size,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1246
                                                       CFG_TEMPLATE_PROBE_REQ_2_4,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1247
                                                       0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1248
                                                       NULL,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1249
                                                       NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1250
        if (TI_OK != tStatus)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1251
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1252
            return tStatus;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1253
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1254
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1255
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1256
    /* set Probe Req template also if join == false ! */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1257
    if (DB_TEMP(hCmdBld).ProbeReq50.Size != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1258
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1259
        return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1260
                                                   &(DB_TEMP(hCmdBld).ProbeReq50), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1261
                                                   (TI_UINT16)DB_TEMP(hCmdBld).ProbeReq50.Size,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1262
                                                   CFG_TEMPLATE_PROBE_REQ_5,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1263
                                                   0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1264
                                                 (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1265
                                                 hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1266
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1267
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1268
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1269
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1270
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1271
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1272
static TI_STATUS __cmd_null_data_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1273
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1274
    if (DB_WLAN(hCmdBld).bJoin && DB_TEMP(hCmdBld).NullData.Size != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1275
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1276
        return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1277
                                                   &(DB_TEMP(hCmdBld).NullData), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1278
                                                 (TI_UINT16)DB_TEMP(hCmdBld).NullData.Size,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1279
                                                   TEMPLATE_NULL_DATA,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1280
                                                   0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1281
                                                 (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1282
                                                 hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1283
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1284
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1285
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1286
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1287
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1288
static TI_STATUS __cmd_disconn_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1289
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1290
    if (DB_WLAN(hCmdBld).bJoin && DB_TEMP(hCmdBld).Disconn.Size != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1291
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1292
        return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1293
                                                   &(DB_TEMP(hCmdBld).Disconn), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1294
                                                   (TI_UINT16)DB_TEMP(hCmdBld).Disconn.Size,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1295
                                                   TEMPLATE_DISCONNECT,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1296
                                                   0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1297
                                                   (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1298
                                                   hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1299
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1300
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1301
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1302
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1303
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1304
static TI_STATUS __cmd_ps_poll_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1305
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1306
    if (DB_WLAN(hCmdBld).bJoin && DB_TEMP(hCmdBld).PsPoll.Size != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1307
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1308
        return cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1309
                                                   &(DB_TEMP(hCmdBld).PsPoll), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1310
                                                 (TI_UINT16)DB_TEMP(hCmdBld).PsPoll.Size,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1311
                                                   TEMPLATE_PS_POLL,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1312
                                                   0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1313
                                                 (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1314
                                                 hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1315
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1316
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1317
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1318
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1319
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1320
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1321
static TI_STATUS __cmd_keep_alive_tmpl_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1322
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1323
    TI_UINT32   index;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1324
    TI_STATUS   status = TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1325
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1326
    /* 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1327
     * config templates 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1328
     * first configure all indexes but the last one with no CB, and than configure the last one 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1329
     * with a CB to continue configuration.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1330
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1331
    for (index = 0; index < KLV_MAX_TMPL_NUM - 1; index++)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1332
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1333
        if (DB_WLAN(hCmdBld).bJoin && DB_TEMP(hCmdBld).KeepAlive[ index ].Size != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1334
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1335
            status =  cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1336
                                                          &(DB_TEMP(hCmdBld).KeepAlive[index]), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1337
                                                          (TI_UINT16)DB_TEMP(hCmdBld).KeepAlive[index].Size,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1338
                                                          TEMPLATE_KLV,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1339
                                                          index,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1340
                                                          NULL,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1341
                                                          NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1342
            if (TI_OK != status)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1343
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1344
                return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1345
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1346
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1347
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1348
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1349
    if (DB_WLAN(hCmdBld).bJoin && DB_TEMP(hCmdBld).KeepAlive[ index ].Size != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1350
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1351
        status =  cmdBld_CmdIeConfigureTemplateFrame (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1352
                                                      &(DB_TEMP(hCmdBld).KeepAlive[index]), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1353
                                                      (TI_UINT16)DB_TEMP(hCmdBld).KeepAlive[index].Size,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1354
                                                      TEMPLATE_KLV,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1355
                                                      index,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1356
                                                      (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1357
                                                      hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1358
        if (TI_OK != status)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1359
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1360
            return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1361
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1362
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1363
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1364
    return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1365
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1366
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1367
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1368
static TI_STATUS __cmd_keep_alive_params(TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1369
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1370
    TI_UINT32   index;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1371
    TI_STATUS   status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1372
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1373
    /* config gloabl enable / disable flag */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1374
    cmdBld_CfgKeepAliveEnaDis (hCmdBld, DB_KLV(hCmdBld).enaDisFlag, NULL, NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1375
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1376
    /* 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1377
     * config per-template params 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1378
     * fisr configure all indexes but the last one with no CB, and than configure the last one 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1379
     * with a CB to continue configuration.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1380
     */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1381
    for (index = 0; index < KLV_MAX_TMPL_NUM - 1; index++)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1382
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1383
        if (DB_WLAN(hCmdBld).bJoin && DB_KLV(hCmdBld).keepAliveParams[ index ].enaDisFlag != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1384
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1385
            status =  cmdBld_CmdIeConfigureKeepAliveParams (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1386
                                                            index,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1387
                                                            DB_KLV(hCmdBld).keepAliveParams[ index ].enaDisFlag,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1388
                                                            DB_KLV(hCmdBld).keepAliveParams[ index ].trigType,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1389
                                                            DB_KLV(hCmdBld).keepAliveParams[ index ].interval,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1390
                                                            NULL,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1391
                                                            NULL);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1392
            if (TI_OK != status)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1393
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1394
                return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1395
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1396
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1397
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1398
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1399
    /* Set NOK for a case the following config is skipped, to indicate that no callback is expected */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1400
    status = TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1401
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1402
    if (DB_WLAN(hCmdBld).bJoin && DB_KLV(hCmdBld).keepAliveParams[ index ].enaDisFlag != 0)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1403
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1404
        status =  cmdBld_CmdIeConfigureKeepAliveParams (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1405
                                                        index,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1406
                                                        DB_KLV(hCmdBld).keepAliveParams[ index ].enaDisFlag,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1407
                                                        DB_KLV(hCmdBld).keepAliveParams[ index ].trigType,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1408
                                                        DB_KLV(hCmdBld).keepAliveParams[ index ].interval,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1409
                                                        (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1410
                                                        hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1411
        if (TI_OK != status)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1412
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1413
            return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1414
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1415
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1416
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1417
    return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1418
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1419
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1420
static TI_STATUS __cmd_power_auth (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1421
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1422
	return cmdBld_CfgIeSleepAuth (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1423
							  DB_WLAN(hCmdBld).minPowerLevel, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1424
							  (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1425
							  hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1426
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1427
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1428
static TI_STATUS __cmd_start_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1429
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1430
    TCmdBld *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1431
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1432
    if (DB_WLAN(hCmdBld).bJoin)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1433
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1434
        /* 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1435
         * Replace the Join-Complete event CB by a local function.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1436
         * Thus, the reconfig sequence will not continue until the Join is completed!
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1437
         * The original CB is restored after Join-Complete.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1438
         */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1439
        eventMbox_ReplaceEvent (pCmdBld->hEventMbox, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1440
                                  TWD_OWN_EVENT_JOIN_CMPLT, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1441
                                  (void *)cmdBld_JoinCmpltForReconfigCb, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1442
                                  hCmdBld,                                   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1443
                                  &pCmdBld->fJoinCmpltOriginalCbFunc, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1444
                                  &pCmdBld->hJoinCmpltOriginalCbHndl);                                    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1445
        /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1446
         * Call the hardware to start/join the bss 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1447
         */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1448
        return cmdBld_CmdStartJoin (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1449
                                    DB_BSS(hCmdBld).ReqBssType, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1450
                                    (void *)cmdBld_DummyCb, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1451
                                    hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1452
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1453
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1454
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1455
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1456
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1457
static TI_STATUS __cmd_sta_state (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1458
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1459
    if (DB_WLAN(hCmdBld).bStaConnected)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1460
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1461
        return cmdBld_CmdSetStaState (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1462
                                    STA_STATE_CONNECTED, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1463
                                    (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1464
                                    hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1465
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1466
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1467
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1468
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1469
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1470
static TI_STATUS __cfg_aid (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1471
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1472
    if (DB_WLAN(hCmdBld).bJoin)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1473
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1474
        return cmdBld_CfgAid (hCmdBld, DB_WLAN(hCmdBld).Aid, (void *)cmdBld_ConfigSeq, hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1475
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1476
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1477
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1478
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1479
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1480
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1481
static TI_STATUS __cfg_slot_time_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1482
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1483
    if (DB_WLAN(hCmdBld).bJoin)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1484
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1485
        /* Slot time must be setting after doing join */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1486
        return cmdBld_CfgSlotTime (hCmdBld, (ESlotTime)(DB_WLAN(hCmdBld).SlotTime), (void *)cmdBld_ConfigSeq, hCmdBld);              
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1487
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1488
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1489
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1490
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1491
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1492
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1493
static TI_STATUS __cfg_preamble_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1494
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1495
    if (DB_WLAN(hCmdBld).bJoin)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1496
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1497
        /* Preamble type must be set after doing join */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1498
        return cmdBld_CfgPreamble (hCmdBld, DB_WLAN(hCmdBld).preamble, (void *)cmdBld_ConfigSeq, hCmdBld);              
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1499
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1500
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1501
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1502
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1503
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1504
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1505
static TI_STATUS __cfg_ht_capabilities (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1506
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1507
    if (DB_WLAN(hCmdBld).bJoin && DB_BSS(hCmdBld).bHtCap)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1508
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1509
        /* HT capabilities must be set after doing join */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1510
        return cmdBld_CfgIeSetFwHtCapabilities (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1511
                                                DB_BSS(hCmdBld).uHtCapabilites, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1512
                                                DB_BSS(hCmdBld).tMacAddress,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1513
                                                DB_BSS(hCmdBld).uAmpduMaxLeng,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1514
                                                DB_BSS(hCmdBld).uAmpduMinSpac,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1515
                                                (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1516
                                                hCmdBld);              
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1517
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1518
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1519
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1520
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1521
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1522
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1523
static TI_STATUS __cfg_ht_information (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1524
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1525
    if (DB_WLAN(hCmdBld).bJoin && DB_BSS(hCmdBld).bHtInf)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1526
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1527
        /* HT Information must be set after doing join */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1528
        return cmdBld_CfgIeSetFwHtInformation (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1529
                                               DB_BSS(hCmdBld).uRifsMode,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1530
                                               DB_BSS(hCmdBld).uHtProtection,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1531
                                               DB_BSS(hCmdBld).uGfProtection,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1532
                                               DB_BSS(hCmdBld).uHtTxBurstLimit,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1533
                                               DB_BSS(hCmdBld).uDualCtsProtection,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1534
                                               (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1535
                                               hCmdBld);              
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1536
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1537
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1538
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1539
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1540
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1541
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1542
static TI_STATUS __cfg_ba_set_session (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1543
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1544
    if (DB_WLAN(hCmdBld).bJoin)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1545
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1546
        TI_UINT32 uTid;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1547
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1548
        for (uTid = 0; uTid < MAX_NUM_OF_802_1d_TAGS; ++uTid)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1549
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1550
            /* set BA initiator */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1551
            if (DB_BSS(hCmdBld).bBaInitiator[uTid])
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1552
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1553
                return cmdBld_CfgIeSetBaSession (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1554
                                                 ACX_BA_SESSION_INITIATOR_POLICY,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1555
                                                 uTid,               
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1556
                                                 DB_BSS(hCmdBld).tBaSessionInitiatorPolicy[uTid].uPolicy,             
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1557
                                                 DB_BSS(hCmdBld).tBaSessionInitiatorPolicy[uTid].aMacAddress,                
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1558
                                                 DB_BSS(hCmdBld).tBaSessionInitiatorPolicy[uTid].uWinSize,          
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1559
                                                 DB_BSS(hCmdBld).tBaSessionInitiatorPolicy[uTid].uInactivityTimeout,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1560
                                                 (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1561
                                                 hCmdBld);              
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1562
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1563
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1564
            /* set BA Responder */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1565
            if (DB_BSS(hCmdBld).bBaResponder[uTid])
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1566
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1567
                return cmdBld_CfgIeSetBaSession (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1568
                                                 ACX_BA_SESSION_RESPONDER_POLICY,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1569
                                                 uTid,               
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1570
                                                 DB_BSS(hCmdBld).tBaSessionResponderPolicy[uTid].uPolicy,             
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1571
                                                 DB_BSS(hCmdBld).tBaSessionResponderPolicy[uTid].aMacAddress,                
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1572
                                                 DB_BSS(hCmdBld).tBaSessionResponderPolicy[uTid].uWinSize,          
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1573
                                                 DB_BSS(hCmdBld).tBaSessionResponderPolicy[uTid].uInactivityTimeout,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1574
                                                 (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1575
                                                 hCmdBld);              
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1576
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1577
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1578
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1579
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1580
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1581
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1582
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1583
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1584
static TI_STATUS __cfg_tx_power_join (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1585
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1586
    if (DB_WLAN(hCmdBld).bJoin)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1587
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1588
        /* Tx-power must be set after doing join */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1589
        return cmdBld_CfgTxPowerDbm (hCmdBld, DB_WLAN(hCmdBld).TxPowerDbm, (void *)cmdBld_ConfigSeq, hCmdBld);              
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1590
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1591
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1592
    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1593
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1594
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1595
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1596
static TI_STATUS __cfg_keys (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1597
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1598
    TCmdBld   *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1599
    TI_UINT32  index;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1600
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1601
    if (!DB_WLAN(hCmdBld).bJoin)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1602
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1603
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1604
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1605
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1606
    if (pCmdBld->tSecurity.eSecurityMode != TWD_CIPHER_NONE)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1607
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1608
        /* 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1609
         * We are doing recovery during security so increase security-sequence-number by 255 just to ensure 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1610
         *   the AP will see progress from last Tx before the recovery (actually needed only for TKIP and AES).
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1611
         * Decrementing the low byte by one is handled like it wrpped around, i.e. increment total number by 255.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1612
         */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1613
        cmdBld_SetSecuritySeqNum (hCmdBld, (TI_UINT8)(pCmdBld->uSecuritySeqNumLow - 1));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1614
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1615
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1616
        /* set the keys to the HW*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1617
        for (index = 0; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1618
             index < pCmdBld->tSecurity.uNumOfStations * NO_OF_RECONF_SECUR_KEYS_PER_STATION + NO_OF_EXTRA_RECONF_SECUR_KEYS; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1619
             index++)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1620
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1621
            if ((DB_KEYS(pCmdBld).pReconfKeys + index)->keyType != KEY_NULL)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1622
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1623
                if (cmdBld_CmdAddKey (hCmdBld, DB_KEYS(pCmdBld).pReconfKeys + index, TI_TRUE, NULL, NULL) != TI_OK)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1624
                {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1625
                    TRACE1(pCmdBld->hReport, REPORT_SEVERITY_ERROR, "__cfg_keys: ERROR cmdBld_CmdAddKey failure index=%d\n", index);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1626
                    return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1627
                }   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1628
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1629
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1630
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1631
        if (DB_KEYS(pCmdBld).bDefaultKeyIdValid)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1632
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1633
            /* Set the deafult key ID to the HW*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1634
            if (cmdBld_CmdSetWepDefaultKeyId (hCmdBld, DB_KEYS(pCmdBld).uReconfDefaultKeyId, NULL, NULL) != TI_OK)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1635
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1636
                TRACE0(pCmdBld->hReport, REPORT_SEVERITY_ERROR, "__cfg_keys: ERROR cmdBld_CmdSetWepDefaultKeyId failure\n");
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1637
                return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1638
            }   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1639
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1640
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1641
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1642
    /* Set the encryption/decryption control on the HW */   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1643
    if (cmdBld_CfgHwEncDecEnable (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1644
                                  DB_KEYS(pCmdBld).bReconfHwEncEnable, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1645
                                  (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1646
                                  hCmdBld) != TI_OK)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1647
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1648
        TRACE0(pCmdBld->hReport, REPORT_SEVERITY_ERROR, "__cfg_keys: ERROR cmdBld_CfgHwEncDecEnable failure \n");
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1649
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1650
    }   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1651
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1652
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1653
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1654
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1655
static TI_STATUS __cfg_sg_enable (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1656
{    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1657
    /* Set the Soft Gemini state */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1658
    return cmdBld_CfgSgEnable (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1659
                               DB_WLAN(hCmdBld).SoftGeminiEnable,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1660
                               (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1661
                               hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1662
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1663
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1664
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1665
static TI_STATUS __cfg_sg (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1666
{    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1667
    /* Set the Soft Gemini params */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1668
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1669
   /* signals the FW to config all the paramters from the DB*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1670
    DB_WLAN(hCmdBld).SoftGeminiParams.paramIdx = 0xFF;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1671
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1672
   return cmdBld_CfgSg (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1673
                         &DB_WLAN(hCmdBld).SoftGeminiParams, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1674
                         (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1675
                               hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1676
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1677
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1678
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1679
static TI_STATUS __cfg_fm_coex (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1680
{    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1681
    /* Set the FM Coexistence params */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1682
    return cmdBld_CfgIeFmCoex (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1683
                               &DB_WLAN(hCmdBld).tFmCoexParams, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1684
                               (void *)cmdBld_ConfigSeq, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1685
                               hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1686
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1687
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1688
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1689
static TI_STATUS __cfg_rate_management (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1690
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1691
	DB_RM(hCmdBld).rateMngParams.paramIndex = 0xFF;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1692
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1693
	return cmdBld_CfgIeRateMngDbg(hCmdBld,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1694
						   &DB_RM(hCmdBld).rateMngParams,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1695
						   (void *)cmdBld_ConfigSeq,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1696
						   hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1697
						   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1698
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1699
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1700
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1701
TI_STATUS __itr_memory_map (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1702
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1703
    TCmdBld   *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1704
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1705
    WLAN_OS_REPORT(("Interrogate TX/RX parameters\n"));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1706
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1707
    /* Interrogate TX/RX parameters */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1708
    return cmdBld_ItrIeMemoryMap (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1709
                                  &pCmdBld->tMemMap, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1710
                                  (void *)cmdBld_ConfigFwCb, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1711
                                  hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1712
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1713
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1714
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1715
static const TCmdCfgFunc aCmdIniSeq [] =
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1716
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1717
    __cfg_platform_params,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1718
    __cfg_radio_params,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1719
    __cmd_probe_req,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1720
    __cmd_null_data,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1721
    __cmd_disconn,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1722
    __cmd_ps_poll,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1723
    __cmd_qos_null_data,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1724
    __cmd_probe_resp,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1725
    __cmd_beacon,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1726
    __cmd_keep_alive_tmpl,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1727
    __cfg_mem,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1728
    __cfg_rx_msdu_life_time,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1729
    __cfg_rx,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1730
    __cfg_ac_params_0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1731
    __cfg_tid_0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1732
    __cfg_ac_params_1,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1733
    __cfg_tid_1,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1734
    __cfg_ac_params_2,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1735
    __cfg_tid_2,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1736
    __cfg_ac_params_3,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1737
    __cfg_tid_3,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1738
    __cfg_pd_threshold,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1739
    __cfg_slot_time,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1740
    __cfg_arp_ip_filter,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1741
    __cfg_group_address_table,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1742
    __cfg_service_period_timeout,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1743
    __cfg_rts_threshold,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1744
    __cfg_dco_itrim_params,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1745
    __cfg_fragment_threshold,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1746
    __cfg_pm_config,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1747
    __cfg_beacon_filter_opt,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1748
    __cfg_beacon_filter_table,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1749
    __cfg_tx_cmplt_pacing,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1750
    __cfg_rx_intr_pacing,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1751
    __cfg_sg,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1752
    __cfg_sg_enable,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1753
    __cfg_fm_coex,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1754
    __cfg_cca_threshold,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1755
    __cfg_bcn_brc_options,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1756
    __cmd_enable_rx,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1757
    __cmd_enable_tx,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1758
    __cfg_ps_wmm,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1759
    __cfg_event_scan_cmplt,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1760
    __cfg_event_sps_scan_cmplt,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1761
    __cfg_event_plt_rx_calibration_cmplt,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1762
    __cfg_hw_enc_dec_enable,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1763
    __cfg_rssi_snr_weights,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1764
    __cfg_rssi_snr_trigger_0,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1765
    __cfg_rssi_snr_trigger_1,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1766
    __cfg_rssi_snr_trigger_2,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1767
    __cfg_rssi_snr_trigger_3,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1768
    __cfg_rssi_snr_trigger_4,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1769
    __cfg_rssi_snr_trigger_5,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1770
    __cfg_rssi_snr_trigger_6,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1771
    __cfg_rssi_snr_trigger_7,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1772
    __cfg_max_tx_retry,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1773
    __cfg_split_scan_timeout,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1774
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1775
    /* Re-join sequence */ 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1776
    __cfg_tx_rate_policy,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1777
    __cmd_beacon_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1778
    __cmd_probe_resp_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1779
    __cmd_probe_req_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1780
    __cmd_null_data_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1781
    __cmd_disconn_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1782
    __cmd_ps_poll_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1783
    __cmd_keep_alive_tmpl_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1784
    __cfg_slot_time_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1785
    __cfg_preamble_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1786
    __cfg_ht_capabilities,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1787
    __cfg_ht_information,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1788
    __cmd_start_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1789
    __cfg_aid,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1790
    __cfg_ba_set_session,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1791
    __cfg_tx_power_join,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1792
    __cfg_keys,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1793
    __cmd_keep_alive_params,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1794
    __cfg_conn_monit_params,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1795
    __cfg_bet,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1796
    __cfg_cts_protection,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1797
    __cfg_ps_rx_streaming,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1798
    __cfg_rx_data_filter,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1799
    __cmd_sta_state,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1800
    __cmd_power_auth,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1801
    __cmd_burst_mode_enable,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1802
    //__cmd_smart_reflex_state,    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1803
    //__cmd_smart_reflex_debug,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1804
    __cfg_rate_management,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1805
    /* Interrogate command -> must be last!! */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1806
    __itr_memory_map,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1807
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1808
    NULL
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1809
};
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1810
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1811
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1812
/****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1813
 *                      cmdBld_ConfigSeq()
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1814
 ****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1815
 * DESCRIPTION: Configuration sequence engine
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1816
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1817
 * INPUTS: None 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1818
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1819
 * OUTPUT: None
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1820
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1821
 * RETURNS: TI_OK or TI_NOK
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1822
 ****************************************************************************/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1823
TI_STATUS cmdBld_ConfigSeq (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1824
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1825
    TCmdBld   *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1826
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1827
    do 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1828
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1829
        if (aCmdIniSeq [pCmdBld->uIniSeq++] == NULL)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1830
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1831
            return TI_NOK; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1832
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1833
    } 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1834
    while ((*aCmdIniSeq [pCmdBld->uIniSeq - 1])(hCmdBld) != TI_OK);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1835
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1836
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1837
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1838
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1839
/****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1840
 *                      cmdBld_FinalizeDownload()
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1841
 ****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1842
 * DESCRIPTION: Finalize all the remaining initialization after the download has finished 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1843
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1844
 * INPUTS:  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1845
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1846
 * OUTPUT:  None
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1847
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1848
 * RETURNS: void
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1849
 ****************************************************************************/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1850
void cmdBld_FinalizeDownload (TI_HANDLE hCmdBld, TBootAttr *pBootAttr, FwStaticData_t *pFwInfo)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1851
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1852
    TCmdBld *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1853
    TI_UINT8    *pMacAddr = pFwInfo->dot11StationID;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1854
    TI_UINT32    i;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1855
    TI_UINT8     uTmp;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1856
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1857
    /* Save FW version */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1858
    os_memoryCopy (pCmdBld->hOs, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1859
                   (void *)DB_HW(hCmdBld).fwVer, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1860
                   (void *)pFwInfo->FWVersion, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1861
                   sizeof(DB_HW(hCmdBld).fwVer));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1862
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1863
    /* Save MAC adress (correct the bytes order first) */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1864
    for (i = 0; i < 3; i++)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1865
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1866
        uTmp = pMacAddr[i];
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1867
        pMacAddr[i] = pMacAddr[5 - i]; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1868
        pMacAddr[5 - i] = uTmp; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1869
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1870
    MAC_COPY (DB_HW(hCmdBld).macAddress, pMacAddr);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1871
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1872
    /* Save chip ID */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1873
    os_memoryCopy (pCmdBld->hOs, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1874
                   (void *)&(DB_HW(hCmdBld).uHardWareVersion), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1875
                   (void *)&(pFwInfo->HardWareVersion), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1876
                   sizeof(DB_HW(hCmdBld).uHardWareVersion));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1877
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1878
    /* Save power-levels table */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1879
    os_memoryCopy (pCmdBld->hOs, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1880
                   (void *)DB_HW(hCmdBld).txPowerTable, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1881
                   (void *)pFwInfo->txPowerTable, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1882
                   sizeof(DB_HW(hCmdBld).txPowerTable));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1883
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1884
    /* Call the upper layer callback */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1885
    (*((TFinalizeCb)pCmdBld->fFinalizeDownload)) (pCmdBld->hFinalizeDownload);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1886
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1887
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1888
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1889
TI_STATUS cmdBld_GetParam (TI_HANDLE hCmdBld, TTwdParamInfo *pParamInfo)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1890
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1891
    TCmdBld       *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1892
    TWlanParams   *pWlanParams = &DB_WLAN(hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1893
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1894
    switch (pParamInfo->paramType)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1895
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1896
        case TWD_RTS_THRESHOLD_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1897
            pParamInfo->content.halCtrlRtsThreshold = pWlanParams->RtsThreshold;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1898
            break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1899
        
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1900
        case TWD_FRAG_THRESHOLD_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1901
            pParamInfo->content.halCtrlFragThreshold = pWlanParams->FragmentThreshold;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1902
            break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1903
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1904
        case TWD_COUNTERS_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1905
            /* Constant zero because the ACX last buffer next pointer is always pointed
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1906
               to itself, so it's like an endless buffer*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1907
            pParamInfo->content.halCtrlCounters.RecvNoBuffer = 0;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1908
            pParamInfo->content.halCtrlCounters.FragmentsRecv = 0; /* not supported;*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1909
            pParamInfo->content.halCtrlCounters.FrameDuplicates = 0;/* not supported*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1910
            pParamInfo->content.halCtrlCounters.FcsErrors = DB_CNT(hCmdBld).FcsErrCnt;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1911
            pParamInfo->content.halCtrlCounters.RecvError = DB_CNT(hCmdBld).FcsErrCnt;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1912
            break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1913
        
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1914
        case TWD_LISTEN_INTERVAL_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1915
            pParamInfo->content.halCtrlListenInterval = pWlanParams->ListenInterval;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1916
            break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1917
                            
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1918
        case TWD_RSN_DEFAULT_KEY_ID_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1919
            /* Not implemented */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1920
            return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1921
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1922
        case TWD_RSN_SECURITY_MODE_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1923
             pParamInfo->content.rsnEncryptionStatus = pCmdBld->tSecurity.eSecurityMode;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1924
            break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1925
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1926
      case TWD_ACX_STATISTICS_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1927
            /* Not implemented */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1928
         #if 0
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1929
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1930
                acxStatisitcs_t     acxStatisitics;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1931
                pParamInfo->content.acxStatisitics.FWpacketReceived = acxStatisitics.FWpacketReceived;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1932
                /* Not supported */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1933
                pParamInfo->content.acxStatisitics.HALpacketReceived = 0; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1934
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1935
         #endif
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1936
            return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1937
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1938
    case TWD_MEDIUM_OCCUPANCY_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1939
        if (cmdBld_ItrIeMediumOccupancy (hCmdBld, pParamInfo->content.interogateCmdCBParams) != TI_OK)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1940
            return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1941
            break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1942
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1943
    case TWD_TSF_DTIM_MIB_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1944
        if (cmdBld_ItrIeTfsDtim (hCmdBld, pParamInfo->content.interogateCmdCBParams) != TI_OK)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1945
            return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1946
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1947
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1948
    case TWD_AID_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1949
        if (cmdBld_GetCurrentAssociationId (hCmdBld, &pParamInfo->content.halCtrlAid) != TI_OK)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1950
            return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1951
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1952
        TRACE1(pCmdBld->hReport, REPORT_SEVERITY_INFORMATION , " AID 2 %d\n", pParamInfo->content.halCtrlAid);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1953
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1954
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1955
    case TWD_NOISE_HISTOGRAM_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1956
        if (cmdBld_ItrIeNoiseHistogramResults (hCmdBld, pParamInfo->content.interogateCmdCBParams) != TI_OK)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1957
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1958
            return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1959
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1960
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1961
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1962
    case TWD_CURRENT_CHANNEL_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1963
        /* Get current channel number */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1964
        pParamInfo->content.halCtrlCurrentChannel = DB_BSS(hCmdBld).RadioChannel;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1965
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1966
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1967
    /* SNR and RSSI belongs to the same MIB, and the relevant CB is passed here*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1968
    case TWD_RSSI_LEVEL_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1969
    case TWD_SNR_RATIO_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1970
        /* Retrive the Callback function and read buffer pointer that are in fact stored in the TIWLAN_ADAPTER and then send it to the Command Mailbox */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1971
        cmdBld_ItrRSSI (hCmdBld, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1972
                        pParamInfo->content.interogateCmdCBParams.fCb, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1973
                        pParamInfo->content.interogateCmdCBParams.hCb, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1974
                        pParamInfo->content.interogateCmdCBParams.pCb);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1975
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1976
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1977
    case TWD_BCN_BRC_OPTIONS_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1978
        pParamInfo->content.BcnBrcOptions.BeaconRxTimeout    = pWlanParams->BcnBrcOptions.BeaconRxTimeout;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1979
        pParamInfo->content.BcnBrcOptions.BroadcastRxTimeout = pWlanParams->BcnBrcOptions.BroadcastRxTimeout;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1980
        pParamInfo->content.BcnBrcOptions.RxBroadcastInPs    = pWlanParams->BcnBrcOptions.RxBroadcastInPs;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1981
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1982
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1983
    case TWD_MAX_RX_MSDU_LIFE_TIME_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1984
        pParamInfo->content.halCtrlMaxRxMsduLifetime = pWlanParams->MaxRxMsduLifetime;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1985
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1986
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1987
    case TWD_TX_RATE_CLASS_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1988
        pParamInfo->content.pTxRatePlicy = &DB_BSS(hCmdBld).TxRateClassParams;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1989
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1990
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1991
    case TWD_SG_CONFIG_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1992
        return cmdBld_ItrSg (hCmdBld,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1993
                             pParamInfo->content.interogateCmdCBParams.fCb, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1994
                             pParamInfo->content.interogateCmdCBParams.hCb,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1995
                             (void*)pParamInfo->content.interogateCmdCBParams.pCb);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1996
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1997
    case TWD_TX_POWER_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1998
        pParamInfo->content.halCtrlTxPowerDbm = DB_WLAN(hCmdBld).TxPowerDbm;        
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  1999
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2000
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2001
	case TWD_RADIO_TEST_PARAM_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2002
        TRACE0(pCmdBld->hReport, REPORT_SEVERITY_INFORMATION , "Radio Test\n");
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2003
		return cmdBld_CmdTest (hCmdBld,                                       
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2004
							   pParamInfo->content.interogateCmdCBParams.fCb, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2005
							   pParamInfo->content.interogateCmdCBParams.hCb,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2006
							   (TTestCmd*)pParamInfo->content.interogateCmdCBParams.pCb);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2007
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2008
    case TWD_DCO_ITRIM_PARAMS_ID:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2009
        pParamInfo->content.tDcoItrimParams.enable = pWlanParams->dcoItrimEnabled;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2010
        pParamInfo->content.tDcoItrimParams.moderationTimeoutUsec = pWlanParams->dcoItrimModerationTimeoutUsec;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2011
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2012
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2013
	default:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2014
        TRACE1(pCmdBld->hReport, REPORT_SEVERITY_ERROR, "cmdBld_GetParam - ERROR - Param is not supported, %d\n\n", pParamInfo->paramType);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2015
        return (PARAM_NOT_SUPPORTED);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2016
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2017
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2018
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2019
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2020
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2021
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2022
static TI_STATUS cmdBld_ReadMibBeaconFilterIETable (TI_HANDLE hCmdBld, TI_HANDLE hCb, void* fCb, void* pCb)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2023
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2024
    TCmdBld	*pCmdBld 				= (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2025
    TMib *pMib 						= (TMib*)pCb;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2026
    TCmdQueueInterrogateCb RetFunc 	= (TCmdQueueInterrogateCb)fCb;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2027
    TI_UINT8 IETableSize 			= 0;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2028
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2029
    /*Get params*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2030
    pMib->aData.BeaconFilter.iNumberOfIEs = DB_WLAN(hCmdBld).beaconFilterIETable.numberOfIEs;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2031
    IETableSize = DB_WLAN(hCmdBld).beaconFilterIETable.IETableSize;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2032
                  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2033
    os_memoryZero (pCmdBld->hOs, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2034
                   pMib->aData.BeaconFilter.iIETable,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2035
                   sizeof(pMib->aData.BeaconFilter.iIETable));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2036
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2037
    os_memoryCopy (pCmdBld->hOs, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2038
                   pMib->aData.BeaconFilter.iIETable,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2039
                   DB_WLAN(hCmdBld).beaconFilterIETable.IETable,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2040
                   IETableSize);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2041
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2042
    pMib->Length = IETableSize + 1;     
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2043
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2044
    RetFunc(hCb, TI_OK, pCb); 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2045
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2046
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2047
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2048
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2049
/**
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2050
 * \author \n
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2051
 * \date \n
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2052
 * \brief Coordinates between legacy TxRatePolicy implementation and the MIB format: \n
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2053
 *        Converts the pGwsi_txRatePolicy back to whal commands 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2054
 *        Activates the whal whalCtrl_set function 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2055
 * Function Scope \e Public.\n
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2056
 * \param  - \n
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2057
 * \return \n
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2058
 */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2059
static TI_STATUS cmdBld_ReadMibTxRatePolicy (TI_HANDLE hCmdBld, TI_HANDLE hCb, void* fCb, void* pCb)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2060
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2061
    TMib* pMib = (TMib*)pCb;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2062
    TCmdQueueInterrogateCb RetFunc = (TCmdQueueInterrogateCb)fCb;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2063
    TTwdParamInfo param;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2064
    TI_STATUS status = TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2065
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2066
    param.paramType = TWD_TX_RATE_CLASS_PARAM_ID;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2067
    cmdBld_GetParam (hCmdBld, &param);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2068
    if (param.content.pTxRatePlicy == NULL)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2069
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2070
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2071
    /*Copy the data form the param to the MIB*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2072
    pMib->aData.txRatePolicy = *param.content.pTxRatePlicy;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2073
    pMib->Length = pMib->aData.txRatePolicy.numOfRateClasses * sizeof(pMib->aData.txRatePolicy.rateClass[0]) + 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2074
                   sizeof(pMib->aData.txRatePolicy.numOfRateClasses);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2075
    RetFunc (hCb, status, pCb);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2076
    return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2077
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2078
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2079
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2080
TI_STATUS cmdBld_ReadMib (TI_HANDLE hCmdBld, TI_HANDLE hCb, void* fCb, void* pCb)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2081
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2082
    TCmdBld     *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2083
    TMib    *pMibBuf = (TMib*)pCb;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2084
    TCmdQueueInterrogateCb RetFunc = (TCmdQueueInterrogateCb)fCb;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2085
    TI_STATUS Status = TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2086
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2087
    TRACE1(pCmdBld->hReport, REPORT_SEVERITY_INFORMATION, "cmdBld_ReadMib :pMibBuf %p:\n",pMibBuf);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2088
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2089
    TRACE1(pCmdBld->hReport, REPORT_SEVERITY_INFORMATION, "cmdBld_ReadMib :aMib %x:\n", pMibBuf->aMib);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2090
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2091
    switch (pMibBuf->aMib)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2092
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2093
    case MIB_dot11MaxReceiveLifetime:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2094
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2095
            TTwdParamInfo ParamInfo; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2096
            ParamInfo.paramType = TWD_MAX_RX_MSDU_LIFE_TIME_PARAM_ID;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2097
            ParamInfo.paramLength = sizeof(ParamInfo.content.halCtrlMaxRxMsduLifetime);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2098
            Status = cmdBld_GetParam (hCmdBld, &ParamInfo);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2099
            pMibBuf->aData.MaxReceiveLifeTime = ParamInfo.content.halCtrlMaxRxMsduLifetime / 1024; /* converting from usecs to TUs*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2100
            pMibBuf->Length = sizeof(pMibBuf->aData.MaxReceiveLifeTime);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2101
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2102
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2103
        
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2104
    case MIB_dot11GroupAddressesTable:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2105
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2106
            Status = cmdBld_GetGroupAddressTable (hCmdBld,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2107
                                                  &pMibBuf->aData.GroupAddressTable.bFilteringEnable,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2108
                                                  &pMibBuf->aData.GroupAddressTable.nNumberOfAddresses,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2109
                                                  pMibBuf->aData.GroupAddressTable.aGroupTable);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2110
            
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2111
            pMibBuf->Length = sizeof(pMibBuf->aData.GroupAddressTable.bFilteringEnable) + 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2112
                              sizeof(pMibBuf->aData.GroupAddressTable.nNumberOfAddresses) +
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2113
                              pMibBuf->aData.GroupAddressTable.nNumberOfAddresses * sizeof(TMacAddr);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2114
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2115
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2116
        
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2117
    case MIB_ctsToSelf:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2118
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2119
            TTwdParamInfo ParamInfo;          
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2120
            ParamInfo.paramType = TWD_CTS_TO_SELF_PARAM_ID;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2121
            ParamInfo.paramLength = sizeof(ParamInfo.content.halCtrlCtsToSelf);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2122
            Status = cmdBld_GetParam (hCmdBld, &ParamInfo);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2123
            pMibBuf->aData.CTSToSelfEnable = ParamInfo.content.halCtrlCtsToSelf;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2124
            pMibBuf->Length = sizeof(pMibBuf->aData.CTSToSelfEnable);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2125
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2126
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2127
        
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2128
    case MIB_arpIpAddressesTable:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2129
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2130
            TIpAddr   IpAddress;  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2131
            EIpVer    IPver;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2132
            TI_UINT8  Enable;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2133
            
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2134
            pMibBuf->Length = sizeof(TMibArpIpAddressesTable);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2135
            Status = cmdBld_GetArpIpAddressesTable (hCmdBld, &IpAddress, &Enable, &IPver);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2136
            if (Status == TI_OK)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2137
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2138
                pMibBuf->aData.ArpIpAddressesTable.FilteringEnable = Enable;         
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2139
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2140
                if (IP_VER_4 == IPver) /* IP_VER_4 only */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2141
                {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2142
                    IP_COPY (pMibBuf->aData.ArpIpAddressesTable.addr, IpAddress);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2143
                }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2144
                else
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2145
                {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2146
                    Status = TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2147
                }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2148
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2149
            return Status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2150
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2151
        
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2152
    case MIB_rxFilter:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2153
        {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2154
            TI_UINT32 RxConfigOption;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2155
            TI_UINT32 RxFilterOption;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2156
            
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2157
            pMibBuf->Length = 1;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2158
            pMibBuf->aData.RxFilter = 0;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2159
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2160
            /* Get RX filter data */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2161
            Status = cmdBld_GetRxFilters (hCmdBld, &RxConfigOption, &RxFilterOption);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2162
            if (TI_OK == Status)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2163
            {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2164
                /*Translate to MIB bitmap*/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2165
                if ((RxConfigOption & RX_CFG_MAC) == RX_CFG_ENABLE_ANY_DEST_MAC)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2166
                    pMibBuf->aData.RxFilter |= MIB_RX_FILTER_PROMISCOUS_SET;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2167
                
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2168
                if ((RxConfigOption & RX_CFG_BSSID) == RX_CFG_ENABLE_ONLY_MY_BSSID)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2169
                    pMibBuf->aData.RxFilter |= MIB_RX_FILTER_BSSID_SET;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2170
            }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2171
        }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2172
        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2173
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2174
    case MIB_beaconFilterIETable:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2175
        return cmdBld_ReadMibBeaconFilterIETable (hCmdBld, hCb, fCb, pCb);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2176
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2177
    case MIB_txRatePolicy:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2178
        return cmdBld_ReadMibTxRatePolicy (hCmdBld, hCb, fCb, pCb);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2179
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2180
    case MIB_countersTable:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2181
        return cmdBld_ItrErrorCnt (hCmdBld, fCb, hCb, pCb);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2182
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2183
    case MIB_statisticsTable:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2184
        return cmdBld_ItrRoamimgStatisitics (hCmdBld, fCb, hCb, pCb);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2185
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2186
    default:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2187
        TRACE1(pCmdBld->hReport, REPORT_SEVERITY_ERROR, "TWD_ReadMib:MIB aMib 0x%x Not supported\n",pMibBuf->aMib);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2188
        return TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2189
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2190
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2191
    if(RetFunc)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2192
        RetFunc(hCb, Status, pCb);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2193
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2194
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2195
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2196
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2197
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2198
TI_STATUS cmdBld_GetGroupAddressTable (TI_HANDLE hCmdBld, TI_UINT8* pEnabled, TI_UINT8* pNumGroupAddrs, TMacAddr *pGroupAddr)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2199
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2200
    TCmdBld   *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2201
    TI_UINT32     i;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2202
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2203
    if (NULL == pEnabled || NULL == pNumGroupAddrs || NULL == pGroupAddr)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2204
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2205
        TRACE3(pCmdBld->hReport, REPORT_SEVERITY_ERROR, "cmdBld_GetGroupAddressTable: pisEnabled=0x%p pnumGroupAddrs=0x%p  Group_addr=0x%p !!!\n", pEnabled, pNumGroupAddrs, pGroupAddr);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2206
        return PARAM_VALUE_NOT_VALID;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2207
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2208
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2209
    *pNumGroupAddrs = DB_WLAN(hCmdBld).numGroupAddrs;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2210
    *pEnabled = DB_WLAN(hCmdBld).isMacAddrFilteringnabled;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2211
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2212
    os_memoryZero (pCmdBld->hOs, pGroupAddr, sizeof(pGroupAddr));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2213
    for (i = 0; i < *pNumGroupAddrs; i++) 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2214
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2215
        os_memoryCopy (pCmdBld->hOs, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2216
                       (void *)&((*pGroupAddr)[MAC_ADDR_LEN*i]), 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2217
                       &DB_WLAN(hCmdBld).aGroupAddr[i], 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2218
                       MAC_ADDR_LEN);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2219
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2220
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2221
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2222
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2223
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2224
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2225
TI_STATUS cmdBld_GetRxFilters (TI_HANDLE hCmdBld, TI_UINT32* pRxConfigOption, TI_UINT32* pRxFilterOption)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2226
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2227
    *pRxConfigOption = DB_WLAN(hCmdBld).RxConfigOption;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2228
    *pRxFilterOption = DB_WLAN(hCmdBld).RxFilterOption;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2229
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2230
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2231
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2232
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2233
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2234
TFwInfo * cmdBld_GetFWInfo (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2235
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2236
    return &DB_HW(hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2237
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2238
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2239
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2240
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2241
TI_STATUS cmdBld_SetRadioBand (TI_HANDLE hCmdBld, ERadioBand eRadioBand)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2242
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2243
    DB_WLAN(hCmdBld).RadioBand = eRadioBand;       
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2244
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2245
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2246
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2247
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2248
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2249
/****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2250
 *                      cmdBld_CurrentAssociationIdGet()
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2251
 ****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2252
 * DESCRIPTION: Get the current TX antenna 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2253
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2254
 * INPUTS:  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2255
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2256
 * OUTPUT:  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2257
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2258
 * RETURNS: TI_OK or TI_NOK
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2259
 ****************************************************************************/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2260
TI_STATUS cmdBld_GetCurrentAssociationId (TI_HANDLE hCmdBld, TI_UINT16 *pAidVal)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2261
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2262
    *pAidVal = DB_WLAN(hCmdBld).Aid;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2263
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2264
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2265
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2266
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2267
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2268
 /****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2269
 *                      cmdBld_GetArpIpAddressesTable()
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2270
 ****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2271
 * DESCRIPTION: Sets the Group table according to the given configuration. 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2272
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2273
 * OUTPUT:  None
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2274
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2275
 * RETURNS: TI_OK or TI_NOK
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2276
 ****************************************************************************/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2277
TI_STATUS cmdBld_GetArpIpAddressesTable (TI_HANDLE hCmdBld, TIpAddr *pIp, TI_UINT8* pbEnabled, EIpVer *pIpVer)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2278
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2279
    *pIpVer = (EIpVer)DB_WLAN(hCmdBld).arp_IP_ver;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2280
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2281
    IP_COPY (*pIp, DB_WLAN(hCmdBld).arp_IP_addr);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2282
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2283
    *pbEnabled = DB_WLAN(hCmdBld).isArpIpFilteringEnabled;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2284
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2285
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2286
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2287
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2288
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2289
TI_STATUS cmdBld_ConvertAppRatesBitmap (TI_UINT32 uAppRatesBitmap, TI_UINT32 uAppModulation, EHwRateBitFiled *pHwRatesBitmap)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2290
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2291
    EHwRateBitFiled uRatesBitmap = 0;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2292
   
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2293
    if (uAppRatesBitmap & DRV_RATE_MASK_1_BARKER)    uRatesBitmap |= HW_BIT_RATE_1MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2294
    if (uAppRatesBitmap & DRV_RATE_MASK_2_BARKER)    uRatesBitmap |= HW_BIT_RATE_2MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2295
    if (uAppRatesBitmap & DRV_RATE_MASK_5_5_CCK)     uRatesBitmap |= HW_BIT_RATE_5_5MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2296
    if (uAppRatesBitmap & DRV_RATE_MASK_11_CCK)      uRatesBitmap |= HW_BIT_RATE_11MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2297
    if (uAppRatesBitmap & DRV_RATE_MASK_22_PBCC)     uRatesBitmap |= HW_BIT_RATE_22MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2298
    if (uAppRatesBitmap & DRV_RATE_MASK_6_OFDM)      uRatesBitmap |= HW_BIT_RATE_6MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2299
    if (uAppRatesBitmap & DRV_RATE_MASK_9_OFDM)      uRatesBitmap |= HW_BIT_RATE_9MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2300
    if (uAppRatesBitmap & DRV_RATE_MASK_12_OFDM)     uRatesBitmap |= HW_BIT_RATE_12MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2301
    if (uAppRatesBitmap & DRV_RATE_MASK_18_OFDM)     uRatesBitmap |= HW_BIT_RATE_18MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2302
    if (uAppRatesBitmap & DRV_RATE_MASK_24_OFDM)     uRatesBitmap |= HW_BIT_RATE_24MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2303
    if (uAppRatesBitmap & DRV_RATE_MASK_36_OFDM)     uRatesBitmap |= HW_BIT_RATE_36MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2304
    if (uAppRatesBitmap & DRV_RATE_MASK_48_OFDM)     uRatesBitmap |= HW_BIT_RATE_48MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2305
    if (uAppRatesBitmap & DRV_RATE_MASK_54_OFDM)     uRatesBitmap |= HW_BIT_RATE_54MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2306
    if (uAppRatesBitmap & DRV_RATE_MASK_MCS_0_OFDM)  uRatesBitmap |= HW_BIT_RATE_MCS_0;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2307
    if (uAppRatesBitmap & DRV_RATE_MASK_MCS_1_OFDM)  uRatesBitmap |= HW_BIT_RATE_MCS_1;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2308
    if (uAppRatesBitmap & DRV_RATE_MASK_MCS_2_OFDM)  uRatesBitmap |= HW_BIT_RATE_MCS_2;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2309
    if (uAppRatesBitmap & DRV_RATE_MASK_MCS_3_OFDM)  uRatesBitmap |= HW_BIT_RATE_MCS_3;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2310
    if (uAppRatesBitmap & DRV_RATE_MASK_MCS_4_OFDM)  uRatesBitmap |= HW_BIT_RATE_MCS_4;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2311
    if (uAppRatesBitmap & DRV_RATE_MASK_MCS_5_OFDM)  uRatesBitmap |= HW_BIT_RATE_MCS_5;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2312
    if (uAppRatesBitmap & DRV_RATE_MASK_MCS_6_OFDM)  uRatesBitmap |= HW_BIT_RATE_MCS_6;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2313
    if (uAppRatesBitmap & DRV_RATE_MASK_MCS_7_OFDM)  uRatesBitmap |= HW_BIT_RATE_MCS_7;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2314
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2315
    *pHwRatesBitmap = uRatesBitmap;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2316
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2317
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2318
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2319
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2320
EHwRateBitFiled rateNumberToBitmap(TI_UINT8 uRate)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2321
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2322
	switch(uRate)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2323
	{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2324
	case 1:   return HW_BIT_RATE_1MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2325
	case 2:   return HW_BIT_RATE_2MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2326
	case 5:   return HW_BIT_RATE_5_5MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2327
	case 6:   return HW_BIT_RATE_6MBPS; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2328
	case 9:   return HW_BIT_RATE_9MBPS; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2329
	case 11:  return HW_BIT_RATE_11MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2330
	case 12:  return HW_BIT_RATE_12MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2331
	case 18:  return HW_BIT_RATE_18MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2332
	case 22:  return HW_BIT_RATE_22MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2333
	case 24:  return HW_BIT_RATE_24MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2334
	case 36:  return HW_BIT_RATE_36MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2335
	case 48:  return HW_BIT_RATE_48MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2336
	case 54:  return HW_BIT_RATE_54MBPS;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2337
	default:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2338
		return 0;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2339
	}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2340
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2341
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2342
TI_STATUS cmdBld_ConvertAppRate (ERate AppRate, TI_UINT8 *pHwRate)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2343
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2344
    TI_UINT8     Rate = 0;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2345
    TI_STATUS status = TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2346
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2347
    switch (AppRate)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2348
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2349
        /*
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2350
         *  The handle for 5.5/11/22 PBCC was removed !!!
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2351
         */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2352
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2353
        case DRV_RATE_1M:           Rate = txPolicy1;          break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2354
        case DRV_RATE_2M:           Rate = txPolicy2;          break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2355
        case DRV_RATE_5_5M:         Rate = txPolicy5_5;        break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2356
        case DRV_RATE_11M:          Rate = txPolicy11;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2357
        case DRV_RATE_22M:          Rate = txPolicy22;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2358
        case DRV_RATE_6M:           Rate = txPolicy6;          break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2359
        case DRV_RATE_9M:           Rate = txPolicy9;          break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2360
        case DRV_RATE_12M:          Rate = txPolicy12;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2361
        case DRV_RATE_18M:          Rate = txPolicy18;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2362
        case DRV_RATE_24M:          Rate = txPolicy24;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2363
        case DRV_RATE_36M:          Rate = txPolicy36;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2364
        case DRV_RATE_48M:          Rate = txPolicy48;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2365
        case DRV_RATE_54M:          Rate = txPolicy54;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2366
        case DRV_RATE_MCS_0:          Rate = txPolicyMcs0;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2367
        case DRV_RATE_MCS_1:          Rate = txPolicyMcs1;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2368
        case DRV_RATE_MCS_2:          Rate = txPolicyMcs2;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2369
        case DRV_RATE_MCS_3:          Rate = txPolicyMcs3;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2370
        case DRV_RATE_MCS_4:          Rate = txPolicyMcs4;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2371
        case DRV_RATE_MCS_5:          Rate = txPolicyMcs5;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2372
        case DRV_RATE_MCS_6:          Rate = txPolicyMcs6;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2373
        case DRV_RATE_MCS_7:          Rate = txPolicyMcs7;         break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2374
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2375
        default:
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2376
            WLAN_OS_REPORT(("%s wrong app rate = %d\n",__FUNCTION__,AppRate));
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2377
            status = TI_NOK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2378
            break;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2379
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2380
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2381
    if (status == TI_OK)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2382
        *pHwRate = Rate;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2383
    else
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2384
        *pHwRate = txPolicy1; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2385
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2386
    return status;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2387
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2388
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2389
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2390
TI_STATUS cmdBld_SetRxFilter (TI_HANDLE hCmdBld, TI_UINT32 uRxConfigOption, TI_UINT32 uRxFilterOption)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2391
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2392
    DB_WLAN(hCmdBld).RxConfigOption = uRxConfigOption;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2393
    DB_WLAN(hCmdBld).RxFilterOption = uRxFilterOption;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2394
    DB_WLAN(hCmdBld).RxConfigOption |= RX_CFG_ENABLE_PHY_HEADER_PLCP;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2395
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2396
    if (DB_WLAN(hCmdBld).RxDisableBroadcast)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2397
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2398
        DB_WLAN(hCmdBld).RxConfigOption |= RX_CFG_DISABLE_BCAST;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2399
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2400
    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2401
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2402
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2403
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2404
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2405
TI_UINT8 cmdBld_GetBssType (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2406
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2407
    return DB_BSS(hCmdBld).ReqBssType;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2408
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2409
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2410
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2411
TI_UINT32 cmdBld_GetAckPolicy (TI_HANDLE hCmdBld, TI_UINT32 uQueueId)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2412
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2413
    return (TI_UINT32)DB_QUEUES(hCmdBld).queues[uQueueId].ackPolicy;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2414
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2415
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2416
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2417
TI_STATUS cmdBld_SetSecuritySeqNum (TI_HANDLE hCmdBld, TI_UINT8 securitySeqNumLsByte)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2418
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2419
    TCmdBld *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2420
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2421
    /* If 8 lsb wrap around occurred (new < old). */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2422
    if ((TI_UINT16)securitySeqNumLsByte < (pCmdBld->uSecuritySeqNumLow & 0xFF))
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2423
    {
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2424
        /* Increment the upper byte of the 16 lsb. */       
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2425
        pCmdBld->uSecuritySeqNumLow += 0x100;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2426
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2427
        /* If 16 bit wrap around occurred, increment the upper 32 bit. */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2428
        if (!(pCmdBld->uSecuritySeqNumLow & 0xFF00))
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2429
            pCmdBld->uSecuritySeqNumHigh++;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2430
    }
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2431
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2432
    /* Save new sequence number 8 lsb (received from the FW). */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2433
    pCmdBld->uSecuritySeqNumLow &= 0xFF00;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2434
    pCmdBld->uSecuritySeqNumLow |= (TI_UINT16)securitySeqNumLsByte;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2435
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2436
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2437
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2438
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2439
/****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2440
 *                      cmdBld_JoinCmpltForReconfigCb()
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2441
 ****************************************************************************
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2442
 * DESCRIPTION:   The Join-Complete callback used by the reconfig sequenc (see __cmd_start_join()).
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2443
 *                It restores the original Join-Complete CB and continues the sequence.
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2444
 *                It is needed so the reconfig sequence won't progress before the Join
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2445
 *                    command is completed (otherwise the FW may drop the other commands).
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2446
 *
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2447
 * INPUTS: hCmdBld - The module object 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2448
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2449
 * OUTPUT:  None
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2450
 * 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2451
 * RETURNS: TI_OK
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2452
 ****************************************************************************/
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2453
static TI_STATUS cmdBld_JoinCmpltForReconfigCb (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2454
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2455
    TCmdBld    *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2456
    void       *fDummyCb;    
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2457
    TI_HANDLE   hDummyHndl;  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2458
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2459
    /* Restored the original Join-Complete callback function */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2460
    eventMbox_ReplaceEvent (pCmdBld->hEventMbox, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2461
                              TWD_OWN_EVENT_JOIN_CMPLT, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2462
                              pCmdBld->fJoinCmpltOriginalCbFunc, 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2463
                              pCmdBld->hJoinCmpltOriginalCbHndl,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2464
                              &fDummyCb,
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2465
                              &hDummyHndl);  
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2466
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2467
    /* Call the reconfig sequence to continue the configuration after Join completion */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2468
    cmdBld_ConfigSeq (hCmdBld);
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2469
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2470
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2471
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2472
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2473
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2474
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2475
static TI_STATUS cmdBld_DummyCb (TI_HANDLE hCmdBld)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2476
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2477
    return TI_OK;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2478
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2479
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2480
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2481
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2482
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2483
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2484
#ifdef TI_DBG
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2485
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2486
void cmdBld_DbgForceTemplatesRates (TI_HANDLE hCmdBld, TI_UINT32 uRateMask)
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2487
{
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2488
    TCmdBld *pCmdBld = (TCmdBld *)hCmdBld;
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2489
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2490
    pCmdBld->uDbgTemplatesRateMask = uRateMask; 
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2491
}
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2492
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2493
#endif /* TI_DBG */
10c42ec6c05f version WiLink_Driver_6.1.1.0.8
shahar_levi@ti.com
parents:
diff changeset
  2494