Commit | Line | Data |
---|---|---|
91980990 GKH |
1 | /* |
2 | ************************************************************************* | |
3 | * Ralink Tech Inc. | |
4 | * 5F., No.36, Taiyuan St., Jhubei City, | |
5 | * Hsinchu County 302, | |
6 | * Taiwan, R.O.C. | |
7 | * | |
8 | * (c) Copyright 2002-2007, Ralink Technology, Inc. | |
9 | * | |
10 | * This program is free software; you can redistribute it and/or modify * | |
11 | * it under the terms of the GNU General Public License as published by * | |
12 | * the Free Software Foundation; either version 2 of the License, or * | |
13 | * (at your option) any later version. * | |
14 | * * | |
15 | * This program is distributed in the hope that it will be useful, * | |
16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * | |
17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * | |
18 | * GNU General Public License for more details. * | |
19 | * * | |
20 | * You should have received a copy of the GNU General Public License * | |
21 | * along with this program; if not, write to the * | |
22 | * Free Software Foundation, Inc., * | |
23 | * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * | |
24 | * * | |
25 | ************************************************************************* | |
ca97b838 | 26 | */ |
91980990 GKH |
27 | |
28 | #ifndef __SPECTRUM_H__ | |
29 | #define __SPECTRUM_H__ | |
30 | ||
31 | #include "rtmp_type.h" | |
32 | #include "spectrum_def.h" | |
33 | ||
62eb734b | 34 | char RTMP_GetTxPwr(struct rt_rtmp_adapter *pAd, IN HTTRANSMIT_SETTING HTTxMode); |
91980990 GKH |
35 | |
36 | /* | |
37 | ========================================================================== | |
38 | Description: | |
39 | Prepare Measurement request action frame and enqueue it into | |
40 | management queue waiting for transmition. | |
41 | ||
42 | Parametrs: | |
43 | 1. the destination mac address of the frame. | |
44 | ||
45 | Return : None. | |
46 | ========================================================================== | |
47 | */ | |
62eb734b | 48 | void MakeMeasurementReqFrame(struct rt_rtmp_adapter *pAd, |
51126deb BZ |
49 | u8 *pOutBuffer, |
50 | unsigned long *pFrameLen, | |
51 | u8 TotalLen, | |
52 | u8 Category, | |
53 | u8 Action, | |
54 | u8 MeasureToken, | |
55 | u8 MeasureReqMode, | |
56 | u8 MeasureReqType, | |
57 | u8 NumOfRepetitions); | |
91980990 GKH |
58 | |
59 | /* | |
60 | ========================================================================== | |
61 | Description: | |
62 | Prepare Measurement report action frame and enqueue it into | |
63 | management queue waiting for transmition. | |
64 | ||
65 | Parametrs: | |
66 | 1. the destination mac address of the frame. | |
67 | ||
68 | Return : None. | |
69 | ========================================================================== | |
70 | */ | |
62eb734b | 71 | void EnqueueMeasurementRep(struct rt_rtmp_adapter *pAd, |
51126deb BZ |
72 | u8 *pDA, |
73 | u8 DialogToken, | |
74 | u8 MeasureToken, | |
75 | u8 MeasureReqMode, | |
76 | u8 MeasureReqType, | |
77 | u8 ReportInfoLen, u8 *pReportInfo); | |
91980990 GKH |
78 | |
79 | /* | |
80 | ========================================================================== | |
81 | Description: | |
82 | Prepare TPC Request action frame and enqueue it into | |
83 | management queue waiting for transmition. | |
84 | ||
85 | Parametrs: | |
86 | 1. the destination mac address of the frame. | |
87 | ||
88 | Return : None. | |
89 | ========================================================================== | |
90 | */ | |
62eb734b | 91 | void EnqueueTPCReq(struct rt_rtmp_adapter *pAd, u8 *pDA, u8 DialogToken); |
91980990 GKH |
92 | |
93 | /* | |
94 | ========================================================================== | |
95 | Description: | |
96 | Prepare TPC Report action frame and enqueue it into | |
97 | management queue waiting for transmition. | |
98 | ||
99 | Parametrs: | |
100 | 1. the destination mac address of the frame. | |
101 | ||
102 | Return : None. | |
103 | ========================================================================== | |
104 | */ | |
62eb734b | 105 | void EnqueueTPCRep(struct rt_rtmp_adapter *pAd, |
51126deb BZ |
106 | u8 *pDA, |
107 | u8 DialogToken, u8 TxPwr, u8 LinkMargin); | |
91980990 GKH |
108 | |
109 | /* | |
110 | ========================================================================== | |
111 | Description: | |
112 | Prepare Channel Switch Announcement action frame and enqueue it into | |
113 | management queue waiting for transmition. | |
114 | ||
115 | Parametrs: | |
116 | 1. the destination mac address of the frame. | |
117 | 2. Channel switch announcement mode. | |
118 | 2. a New selected channel. | |
119 | ||
120 | Return : None. | |
121 | ========================================================================== | |
122 | */ | |
62eb734b | 123 | void EnqueueChSwAnn(struct rt_rtmp_adapter *pAd, |
51126deb | 124 | u8 *pDA, u8 ChSwMode, u8 NewCh); |
91980990 GKH |
125 | |
126 | /* | |
127 | ========================================================================== | |
128 | Description: | |
129 | Spectrun action frames Handler such as channel switch annoucement, | |
130 | measurement report, measurement request actions frames. | |
131 | ||
132 | Parametrs: | |
133 | Elme - MLME message containing the received frame | |
134 | ||
135 | Return : None. | |
136 | ========================================================================== | |
137 | */ | |
62eb734b | 138 | void PeerSpectrumAction(struct rt_rtmp_adapter *pAd, struct rt_mlme_queue_elem *Elem); |
91980990 GKH |
139 | |
140 | /* | |
141 | ========================================================================== | |
142 | Description: | |
143 | ||
144 | Parametrs: | |
145 | ||
146 | Return : None. | |
147 | ========================================================================== | |
148 | */ | |
62eb734b | 149 | int Set_MeasureReq_Proc(struct rt_rtmp_adapter *pAd, char *arg); |
52b81c89 | 150 | |
62eb734b | 151 | int Set_TpcReq_Proc(struct rt_rtmp_adapter *pAd, char *arg); |
52b81c89 | 152 | |
62eb734b | 153 | int Set_PwrConstraint(struct rt_rtmp_adapter *pAd, char *arg); |
52b81c89 | 154 | |
62eb734b | 155 | void MeasureReqTabInit(struct rt_rtmp_adapter *pAd); |
52b81c89 | 156 | |
62eb734b | 157 | void MeasureReqTabExit(struct rt_rtmp_adapter *pAd); |
52b81c89 | 158 | |
62eb734b | 159 | struct rt_measure_req_entry *MeasureReqLookUp(struct rt_rtmp_adapter *pAd, u8 DialogToken); |
52b81c89 | 160 | |
62eb734b | 161 | struct rt_measure_req_entry *MeasureReqInsert(struct rt_rtmp_adapter *pAd, u8 DialogToken); |
91980990 | 162 | |
62eb734b | 163 | void MeasureReqDelete(struct rt_rtmp_adapter *pAd, u8 DialogToken); |
52b81c89 | 164 | |
62eb734b | 165 | void InsertChannelRepIE(struct rt_rtmp_adapter *pAd, |
51126deb BZ |
166 | u8 *pFrameBuf, |
167 | unsigned long *pFrameLen, | |
168 | char *pCountry, u8 RegulatoryClass); | |
52b81c89 | 169 | |
62eb734b | 170 | void InsertTpcReportIE(struct rt_rtmp_adapter *pAd, |
51126deb BZ |
171 | u8 *pFrameBuf, |
172 | unsigned long *pFrameLen, | |
173 | u8 TxPwr, u8 LinkMargin); | |
52b81c89 | 174 | |
62eb734b | 175 | void InsertDialogToken(struct rt_rtmp_adapter *pAd, |
51126deb BZ |
176 | u8 *pFrameBuf, |
177 | unsigned long *pFrameLen, u8 DialogToken); | |
52b81c89 | 178 | |
62eb734b | 179 | void TpcReqTabInit(struct rt_rtmp_adapter *pAd); |
52b81c89 | 180 | |
62eb734b | 181 | void TpcReqTabExit(struct rt_rtmp_adapter *pAd); |
52b81c89 | 182 | |
62eb734b | 183 | void NotifyChSwAnnToPeerAPs(struct rt_rtmp_adapter *pAd, |
51126deb BZ |
184 | u8 *pRA, |
185 | u8 *pTA, u8 ChSwMode, u8 Channel); | |
52b81c89 | 186 | |
62eb734b | 187 | void RguClass_BuildBcnChList(struct rt_rtmp_adapter *pAd, |
51126deb | 188 | u8 *pBuf, unsigned long *pBufLen); |
cc277069 | 189 | #endif /* __SPECTRUM_H__ // */ |