• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
3  * All rights reserved.
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License along
16  * with this program; if not, write to the Free Software Foundation, Inc.,
17  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18  *
19  *
20  * File: datarate.h
21  *
22  * Purpose: Handles the auto fallback & data rates functions
23  *
24  * Author: Lyndon Chen
25  *
26  * Date: July 16, 2002
27  *
28  */
29 #ifndef __DATARATE_H__
30 #define __DATARATE_H__
31 
32 /*---------------------  Export Definitions -------------------------*/
33 
34 #define FALLBACK_PKT_COLLECT_TR_H  50   // pkts
35 #define FALLBACK_PKT_COLLECT_TR_L  10   // pkts
36 #define FALLBACK_POLL_SECOND       5    // 5 sec
37 #define FALLBACK_RECOVER_SECOND    30   // 30 sec
38 #define FALLBACK_THRESHOLD         15   // percent
39 #define UPGRADE_THRESHOLD          5    // percent
40 #define UPGRADE_CNT_THRD           3    // times
41 #define RETRY_TIMES_THRD_H         2    // times
42 #define RETRY_TIMES_THRD_L         1    // times
43 
44 /*---------------------  Export Classes  ----------------------------*/
45 
46 /*---------------------  Export Variables  --------------------------*/
47 
48 /*---------------------  Export Types  ------------------------------*/
49 
50 /*---------------------  Export Functions  --------------------------*/
51 
52 void
53 RATEvParseMaxRate(
54 	void *pDeviceHandler,
55 	PWLAN_IE_SUPP_RATES pItemRates,
56 	PWLAN_IE_SUPP_RATES pItemExtRates,
57 	bool bUpdateBasicRate,
58 	unsigned short *pwMaxBasicRate,
59 	unsigned short *pwMaxSuppRate,
60 	unsigned short *pwSuppRate,
61 	unsigned char *pbyTopCCKRate,
62 	unsigned char *pbyTopOFDMRate
63 );
64 
65 void
66 RATEvTxRateFallBack(
67 	void *pDeviceHandler,
68 	PKnownNodeDB psNodeDBTable
69 );
70 
71 unsigned char
72 RATEuSetIE(
73 	PWLAN_IE_SUPP_RATES pSrcRates,
74 	PWLAN_IE_SUPP_RATES pDstRates,
75 	unsigned int uRateLen
76 );
77 
78 unsigned short
79 wGetRateIdx(
80 	unsigned char byRate
81 );
82 
83 unsigned char
84 DATARATEbyGetRateIdx(
85 	unsigned char byRate
86 );
87 
88 #endif //__DATARATE_H__
89