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 #define FALLBACK_PKT_COLLECT_TR_H 50 /* pkts */ 33 #define FALLBACK_PKT_COLLECT_TR_L 10 /* pkts */ 34 #define FALLBACK_POLL_SECOND 5 /* 5 sec */ 35 #define FALLBACK_RECOVER_SECOND 30 /* 30 sec */ 36 #define FALLBACK_THRESHOLD 15 /* percent */ 37 #define UPGRADE_THRESHOLD 5 /* percent */ 38 #define UPGRADE_CNT_THRD 3 /* times */ 39 #define RETRY_TIMES_THRD_H 2 /* times */ 40 #define RETRY_TIMES_THRD_L 1 /* times */ 41 42 #define RATE_1M 0 43 #define RATE_2M 1 44 #define RATE_5M 2 45 #define RATE_11M 3 46 #define RATE_6M 4 47 #define RATE_9M 5 48 #define RATE_12M 6 49 #define RATE_18M 7 50 #define RATE_24M 8 51 #define RATE_36M 9 52 #define RATE_48M 10 53 #define RATE_54M 11 54 #define RATE_AUTO 12 55 #define MAX_RATE 12 56 57 void RATEvParseMaxRate(struct vnt_private *, PWLAN_IE_SUPP_RATES pItemRates, 58 PWLAN_IE_SUPP_RATES pItemExtRates, int bUpdateBasicRate, 59 u16 *pwMaxBasicRate, u16 *pwMaxSuppRate, u16 *pwSuppRate, 60 u8 *pbyTopCCKRate, u8 *pbyTopOFDMRate); 61 62 void RATEvTxRateFallBack(struct vnt_private *pDevice, 63 PKnownNodeDB psNodeDBTable); 64 65 u8 66 RATEuSetIE( 67 PWLAN_IE_SUPP_RATES pSrcRates, 68 PWLAN_IE_SUPP_RATES pDstRates, 69 unsigned int uRateLen 70 ); 71 72 u16 73 RATEwGetRateIdx( 74 u8 byRate 75 ); 76 77 #endif /* __DATARATE_H__ */ 78