cm-kernel /drivers/net/wireless/tiwlan1251/common/src/core/data_ctrl/Rx/rx.h

Language C/C++ Header Lines 127
MD5 Hash 201596a1ef797321150fe1ac6350310b Estimated Cost $1,359 (why?)
Repository git://github.com/CyanogenMod/cm-kernel.git View Raw File View Project SPDX
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
/****************************************************************************
**+-----------------------------------------------------------------------+**
**|                                                                       |**
**| Copyright(c) 1998 - 2008 Texas Instruments. All rights reserved.      |**
**| All rights reserved.                                                  |**
**|                                                                       |**
**| Redistribution and use in source and binary forms, with or without    |**
**| modification, are permitted provided that the following conditions    |**
**| are met:                                                              |**
**|                                                                       |**
**|  * Redistributions of source code must retain the above copyright     |**
**|    notice, this list of conditions and the following disclaimer.      |**
**|  * Redistributions in binary form must reproduce the above copyright  |**
**|    notice, this list of conditions and the following disclaimer in    |**
**|    the documentation and/or other materials provided with the         |**
**|    distribution.                                                      |**
**|  * Neither the name Texas Instruments nor the names of its            |**
**|    contributors may be used to endorse or promote products derived    |**
**|    from this software without specific prior written permission.      |**
**|                                                                       |**
**| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS   |**
**| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT     |**
**| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |**
**| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT  |**
**| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |**
**| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT      |**
**| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |**
**| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |**
**| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT   |**
**| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |**
**| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  |**
**|                                                                       |**
**+-----------------------------------------------------------------------+**
****************************************************************************/

/***************************************************************************/
/*																		   */
/*		MODULE:	rx.h													   */
/*    	PURPOSE:	Rx module functions header file						   */
/*																		   */
/***************************************************************************/
#ifndef _RX_DATA_H_
#define _RX_DATA_H_

#include "paramIn.h"
#include "paramOut.h"
#include "memMngrEx.h"
#include "whalBus_Defs.h"

#define DEF_EXCLUDE_UNENCYPTED				FALSE
#define DEF_EAPOL_DESTINATION				OS_ABS_LAYER
#define DEF_RX_PORT_STATUS					CLOSE

typedef struct 
{
	UINT32		excludedFrameCounter;	
	UINT32		rxDroppedDueToVLANIncludedCnt;    
    UINT32		rxWrongBssTypeCounter;
	UINT32		rxWrongBssIdCounter;
    UINT32      rcvUnicastFrameInOpenNotify;
}rxDataDbgCounters_t;


/*                         |                           |                         |
 31 30 29 28 | 27 26 25 24 | 23 22 21 20 | 19 18 17 16 | 15 14 13 12 | 11 10 9 8 | 7 6 5 4 | 3 2 1 0
                           |                           |                         |
*/                                           


typedef enum
{
	DATA_IAPP_PACKET  = 0,
	DATA_EAPOL_PACKET = 1,
	DATA_DATA_PACKET  = 2,
    DATA_VLAN_PACKET  = 3,
	MAX_NUM_OF_RX_DATA_TYPES,
}rxDataPacketType_e;



typedef void (*rxData_MsduDispatchert)(TI_HANDLE hRxData , mem_MSDU_T *pMsdu , Rx_attr_t *pRxAttr);


typedef struct 
{
	/* Handles */
	TI_HANDLE	 		hCtrlData;
	TI_HANDLE	 		hTxData;
	TI_HANDLE	 		hTnetwDrv;
    TI_HANDLE           hHalCtrl;
	TI_HANDLE			hMlme;
	TI_HANDLE			hOs;
	TI_HANDLE			hRsn;
	TI_HANDLE			hReport;
	TI_HANDLE			hMemMngr;
	TI_HANDLE			hSiteMgr;
	TI_HANDLE			hExcMgr;
    TI_HANDLE           hEvHandler;
    TI_HANDLE           RxEventDistributor;
	TI_HANDLE           hThroughputTimer;
    BOOL                rxThroughputTimerEnable;
	BOOL 				rxDataExcludeUnencrypted;
    BOOL                rxDataExludeBroadcastUnencrypted;
	eapolDestination_e 	rxDataEapolDestination;

	portStatus_e  		rxDataPortStatus;
	
    mem_MSDU_T *pReqForBufMsdu; /* request for buffer MSDU - (the lower layer gets only the pointer to the data) */

    /* Rx Data Filters */
    filter_e            filteringDefaultAction;
    BOOL                filteringEnabled;
    BOOL                isFilterSet[MAX_DATA_FILTERS];
    rxDataFilterRequest_t filterRequests[MAX_DATA_FILTERS];

	/* Counters */
	rxDataCounters_t	rxDataCounters;
	rxDataDbgCounters_t	rxDataDbgCounters;

	rxData_MsduDispatchert rxData_dispatchMsdu[MAX_NUM_OF_RX_PORT_STATUS][MAX_NUM_OF_RX_DATA_TYPES];

	INT32				prevSeqNum;
}rxData_t;


#endif
Back to Top