xref: /wlan-driver/fw-api/hw/qca6290/11ax/v1/phyrx_rssi_legacy.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1*5113495bSYour Name /*
2*5113495bSYour Name  * Copyright (c) 2016-2017 The Linux Foundation. All rights reserved.
3*5113495bSYour Name  *
4*5113495bSYour Name  * Permission to use, copy, modify, and/or distribute this software for
5*5113495bSYour Name  * any purpose with or without fee is hereby granted, provided that the
6*5113495bSYour Name  * above copyright notice and this permission notice appear in all
7*5113495bSYour Name  * copies.
8*5113495bSYour Name  *
9*5113495bSYour Name  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
10*5113495bSYour Name  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
11*5113495bSYour Name  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
12*5113495bSYour Name  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
13*5113495bSYour Name  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
14*5113495bSYour Name  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
15*5113495bSYour Name  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16*5113495bSYour Name  * PERFORMANCE OF THIS SOFTWARE.
17*5113495bSYour Name  */
18*5113495bSYour Name 
19*5113495bSYour Name #ifndef _PHYRX_RSSI_LEGACY_H_
20*5113495bSYour Name #define _PHYRX_RSSI_LEGACY_H_
21*5113495bSYour Name #if !defined(__ASSEMBLER__)
22*5113495bSYour Name #endif
23*5113495bSYour Name 
24*5113495bSYour Name #include "receive_rssi_info.h"
25*5113495bSYour Name 
26*5113495bSYour Name // ################ START SUMMARY #################
27*5113495bSYour Name //
28*5113495bSYour Name //	Dword	Fields
29*5113495bSYour Name //	0	reception_type[3:0], reserved_0[5:4], receive_bandwidth[7:6], rx_chain_mask[15:8], phy_ppdu_id[31:16]
30*5113495bSYour Name //	1	sw_phy_meta_data[31:0]
31*5113495bSYour Name //	2	ppdu_start_timestamp[31:0]
32*5113495bSYour Name //	3-18	struct receive_rssi_info pre_rssi_info_details;
33*5113495bSYour Name //	19-34	struct receive_rssi_info preamble_rssi_info_details;
34*5113495bSYour Name //	35	pre_rssi_comb[7:0], rssi_comb[15:8], normalized_pre_rssi_comb[23:16], normalized_rssi_comb[31:24]
35*5113495bSYour Name //
36*5113495bSYour Name // ################ END SUMMARY #################
37*5113495bSYour Name 
38*5113495bSYour Name #define NUM_OF_DWORDS_PHYRX_RSSI_LEGACY 36
39*5113495bSYour Name 
40*5113495bSYour Name struct phyrx_rssi_legacy {
41*5113495bSYour Name              uint32_t reception_type                  :  4, //[3:0]
42*5113495bSYour Name                       reserved_0                      :  2, //[5:4]
43*5113495bSYour Name                       receive_bandwidth               :  2, //[7:6]
44*5113495bSYour Name                       rx_chain_mask                   :  8, //[15:8]
45*5113495bSYour Name                       phy_ppdu_id                     : 16; //[31:16]
46*5113495bSYour Name              uint32_t sw_phy_meta_data                : 32; //[31:0]
47*5113495bSYour Name              uint32_t ppdu_start_timestamp            : 32; //[31:0]
48*5113495bSYour Name     struct            receive_rssi_info                       pre_rssi_info_details;
49*5113495bSYour Name     struct            receive_rssi_info                       preamble_rssi_info_details;
50*5113495bSYour Name              uint32_t pre_rssi_comb                   :  8, //[7:0]
51*5113495bSYour Name                       rssi_comb                       :  8, //[15:8]
52*5113495bSYour Name                       normalized_pre_rssi_comb        :  8, //[23:16]
53*5113495bSYour Name                       normalized_rssi_comb            :  8; //[31:24]
54*5113495bSYour Name };
55*5113495bSYour Name 
56*5113495bSYour Name /*
57*5113495bSYour Name 
58*5113495bSYour Name reception_type
59*5113495bSYour Name 
60*5113495bSYour Name 			This field helps MAC SW determine which field in this
61*5113495bSYour Name 			(and following TLVs) will contain valid information. For
62*5113495bSYour Name 			example some RSSI info not valid in case of uplink_ofdma..
63*5113495bSYour Name 
64*5113495bSYour Name 			<enum 0 reception_is_uplink_ofdma>
65*5113495bSYour Name 
66*5113495bSYour Name 			<enum 1 reception_is_uplink_mimo>
67*5113495bSYour Name 
68*5113495bSYour Name 			<enum 2 reception_is_other>
69*5113495bSYour Name 
70*5113495bSYour Name 			<enum 3 reception_is_frameless> PHY RX has been
71*5113495bSYour Name 			instructed in advance that the upcoming reception is
72*5113495bSYour Name 			frameless. This implieas that in advance it is known that
73*5113495bSYour Name 			all frames will collide in the medium, and nothing can be
74*5113495bSYour Name 			properly decoded... This can happen during the CTS reception
75*5113495bSYour Name 			in response to the triggered MU-RTS transmission.
76*5113495bSYour Name 
77*5113495bSYour Name 			MAC takes no action when seeing this e_num. For the
78*5113495bSYour Name 			frameless reception the indication in pkt_end is the final
79*5113495bSYour Name 			one evaluated by the MAC
80*5113495bSYour Name 
81*5113495bSYour Name 			<legal 0-3>
82*5113495bSYour Name 
83*5113495bSYour Name reserved_0
84*5113495bSYour Name 
85*5113495bSYour Name 			<legal 0>
86*5113495bSYour Name 
87*5113495bSYour Name receive_bandwidth
88*5113495bSYour Name 
89*5113495bSYour Name 			Full receive Bandwidth
90*5113495bSYour Name 
91*5113495bSYour Name 
92*5113495bSYour Name 
93*5113495bSYour Name 			<enum 0     full_rx_bw_20_mhz>
94*5113495bSYour Name 
95*5113495bSYour Name 			<enum 1      full_rx_bw_40_mhz>
96*5113495bSYour Name 
97*5113495bSYour Name 			<enum 2      full_rx_bw_80_mhz>
98*5113495bSYour Name 
99*5113495bSYour Name 			<enum 3      full_rx_bw_160_mhz>
100*5113495bSYour Name 
101*5113495bSYour Name 
102*5113495bSYour Name 
103*5113495bSYour Name 			<legal 0-3>
104*5113495bSYour Name 
105*5113495bSYour Name rx_chain_mask
106*5113495bSYour Name 
107*5113495bSYour Name 			The chain mask at the start of the reception of this
108*5113495bSYour Name 			frame.
109*5113495bSYour Name 
110*5113495bSYour Name 
111*5113495bSYour Name 
112*5113495bSYour Name 			each bit is one antenna
113*5113495bSYour Name 
114*5113495bSYour Name 			0: the chain is NOT used
115*5113495bSYour Name 
116*5113495bSYour Name 			1: the chain is used
117*5113495bSYour Name 
118*5113495bSYour Name 
119*5113495bSYour Name 
120*5113495bSYour Name 			Supports up to 8 chains
121*5113495bSYour Name 
122*5113495bSYour Name 
123*5113495bSYour Name 
124*5113495bSYour Name 			Used in 11ax TPC calculations for UL OFDMA/MIMO and has
125*5113495bSYour Name 			to be in sync with the rssi_comb value as this is also used
126*5113495bSYour Name 			by the MAC for the TPC calculations.
127*5113495bSYour Name 
128*5113495bSYour Name 			<legal all>
129*5113495bSYour Name 
130*5113495bSYour Name phy_ppdu_id
131*5113495bSYour Name 
132*5113495bSYour Name 			A ppdu counter value that PHY increments for every PPDU
133*5113495bSYour Name 			received. The counter value wraps around
134*5113495bSYour Name 
135*5113495bSYour Name 			<legal all>
136*5113495bSYour Name 
137*5113495bSYour Name sw_phy_meta_data
138*5113495bSYour Name 
139*5113495bSYour Name 			32 bit Meta data that SW can program in a 32 bit PHY
140*5113495bSYour Name 			register and PHY will insert the value in every
141*5113495bSYour Name 			RX_RSSI_LEGACY TLV that it generates.
142*5113495bSYour Name 
143*5113495bSYour Name 			SW uses this field to embed among other things some SW
144*5113495bSYour Name 			channel info.
145*5113495bSYour Name 
146*5113495bSYour Name ppdu_start_timestamp
147*5113495bSYour Name 
148*5113495bSYour Name 			Timestamp that indicates when the PPDU that contained
149*5113495bSYour Name 			this MPDU started on the medium.
150*5113495bSYour Name 
151*5113495bSYour Name 
152*5113495bSYour Name 
153*5113495bSYour Name 			Note that PHY will detect the start later, and will have
154*5113495bSYour Name 			to derive out of the preamble info when the frame actually
155*5113495bSYour Name 			appeared on the medium
156*5113495bSYour Name 
157*5113495bSYour Name 			<legal 0- 10>
158*5113495bSYour Name 
159*5113495bSYour Name struct receive_rssi_info pre_rssi_info_details
160*5113495bSYour Name 
161*5113495bSYour Name 			This field is not valid when reception_is_uplink_ofdma
162*5113495bSYour Name 
163*5113495bSYour Name 
164*5113495bSYour Name 
165*5113495bSYour Name 			Overview of the pre-RSSI values. That is RSSI values
166*5113495bSYour Name 			measured on the medium before this reception started.
167*5113495bSYour Name 
168*5113495bSYour Name struct receive_rssi_info preamble_rssi_info_details
169*5113495bSYour Name 
170*5113495bSYour Name 			This field is not valid when reception_is_uplink_ofdma
171*5113495bSYour Name 
172*5113495bSYour Name 
173*5113495bSYour Name 
174*5113495bSYour Name 			Overview of the RSSI values measured during the
175*5113495bSYour Name 			pre-amble phase of this reception
176*5113495bSYour Name 
177*5113495bSYour Name pre_rssi_comb
178*5113495bSYour Name 
179*5113495bSYour Name 			Combined pre_rssi of all chains. Based on primary
180*5113495bSYour Name 			channel RSSI.
181*5113495bSYour Name 
182*5113495bSYour Name 
183*5113495bSYour Name 
184*5113495bSYour Name 			RSSI is reported as 8b signed values. Nominally value is
185*5113495bSYour Name 			in dB units above or below the noisefloor(minCCApwr).
186*5113495bSYour Name 
187*5113495bSYour Name 
188*5113495bSYour Name 
189*5113495bSYour Name 			The resolution can be:
190*5113495bSYour Name 
191*5113495bSYour Name 			1dB or 0.5dB. This is statically configured within the
192*5113495bSYour Name 			PHY and MAC
193*5113495bSYour Name 
194*5113495bSYour Name 
195*5113495bSYour Name 
196*5113495bSYour Name 			In case of 1dB, the Range is:
197*5113495bSYour Name 
198*5113495bSYour Name 			 -128dB to 127dB
199*5113495bSYour Name 
200*5113495bSYour Name 
201*5113495bSYour Name 
202*5113495bSYour Name 			In case of 0.5dB, the Range is:
203*5113495bSYour Name 
204*5113495bSYour Name 			 -64dB to 63.5dB
205*5113495bSYour Name 
206*5113495bSYour Name 
207*5113495bSYour Name 
208*5113495bSYour Name 			<legal all>
209*5113495bSYour Name 
210*5113495bSYour Name rssi_comb
211*5113495bSYour Name 
212*5113495bSYour Name 			Combined rssi of all chains. Based on primary channel
213*5113495bSYour Name 			RSSI.
214*5113495bSYour Name 
215*5113495bSYour Name 
216*5113495bSYour Name 
217*5113495bSYour Name 			RSSI is reported as 8b signed values. Nominally value is
218*5113495bSYour Name 			in dB units above or below the noisefloor(minCCApwr).
219*5113495bSYour Name 
220*5113495bSYour Name 
221*5113495bSYour Name 
222*5113495bSYour Name 			The resolution can be:
223*5113495bSYour Name 
224*5113495bSYour Name 			1dB or 0.5dB. This is statically configured within the
225*5113495bSYour Name 			PHY and MAC
226*5113495bSYour Name 
227*5113495bSYour Name 
228*5113495bSYour Name 
229*5113495bSYour Name 			In case of 1dB, the Range is:
230*5113495bSYour Name 
231*5113495bSYour Name 			 -128dB to 127dB
232*5113495bSYour Name 
233*5113495bSYour Name 
234*5113495bSYour Name 
235*5113495bSYour Name 			In case of 0.5dB, the Range is:
236*5113495bSYour Name 
237*5113495bSYour Name 			 -64dB to 63.5dB
238*5113495bSYour Name 
239*5113495bSYour Name 
240*5113495bSYour Name 
241*5113495bSYour Name 			<legal all>
242*5113495bSYour Name 
243*5113495bSYour Name normalized_pre_rssi_comb
244*5113495bSYour Name 
245*5113495bSYour Name 			Combined pre_rssi of all chains, but normalized back to
246*5113495bSYour Name 			a single chain. This avoids PDG from having to evaluate this
247*5113495bSYour Name 			in combination with receive chain mask and perform all kinds
248*5113495bSYour Name 			of pre-processing algorithms.
249*5113495bSYour Name 
250*5113495bSYour Name 
251*5113495bSYour Name 
252*5113495bSYour Name 			Based on primary channel RSSI.
253*5113495bSYour Name 
254*5113495bSYour Name 
255*5113495bSYour Name 
256*5113495bSYour Name 			RSSI is reported as 8b signed values. Nominally value is
257*5113495bSYour Name 			in dB units above or below the noisefloor(minCCApwr).
258*5113495bSYour Name 
259*5113495bSYour Name 
260*5113495bSYour Name 
261*5113495bSYour Name 			The resolution can be:
262*5113495bSYour Name 
263*5113495bSYour Name 			1dB or 0.5dB. This is statically configured within the
264*5113495bSYour Name 			PHY and MAC
265*5113495bSYour Name 
266*5113495bSYour Name 
267*5113495bSYour Name 
268*5113495bSYour Name 			In case of 1dB, the Range is:
269*5113495bSYour Name 
270*5113495bSYour Name 			 -128dB to 127dB
271*5113495bSYour Name 
272*5113495bSYour Name 
273*5113495bSYour Name 
274*5113495bSYour Name 			In case of 0.5dB, the Range is:
275*5113495bSYour Name 
276*5113495bSYour Name 			 -64dB to 63.5dB
277*5113495bSYour Name 
278*5113495bSYour Name 
279*5113495bSYour Name 
280*5113495bSYour Name 			<legal all>
281*5113495bSYour Name 
282*5113495bSYour Name normalized_rssi_comb
283*5113495bSYour Name 
284*5113495bSYour Name 			Combined rssi of all chains, but normalized back to a
285*5113495bSYour Name 			single chain. This avoids PDG from having to evaluate this
286*5113495bSYour Name 			in combination with receive chain mask and perform all kinds
287*5113495bSYour Name 			of pre-processing algorithms.
288*5113495bSYour Name 
289*5113495bSYour Name 
290*5113495bSYour Name 
291*5113495bSYour Name 			Based on primary channel RSSI.
292*5113495bSYour Name 
293*5113495bSYour Name 
294*5113495bSYour Name 
295*5113495bSYour Name 			RSSI is reported as 8b signed values. Nominally value is
296*5113495bSYour Name 			in dB units above or below the noisefloor(minCCApwr).
297*5113495bSYour Name 
298*5113495bSYour Name 
299*5113495bSYour Name 
300*5113495bSYour Name 			The resolution can be:
301*5113495bSYour Name 
302*5113495bSYour Name 			1dB or 0.5dB. This is statically configured within the
303*5113495bSYour Name 			PHY and MAC
304*5113495bSYour Name 
305*5113495bSYour Name 			In case of 1dB, the Range is:
306*5113495bSYour Name 
307*5113495bSYour Name 			 -128dB to 127dB
308*5113495bSYour Name 
309*5113495bSYour Name 
310*5113495bSYour Name 
311*5113495bSYour Name 			In case of 0.5dB, the Range is:
312*5113495bSYour Name 
313*5113495bSYour Name 			 -64dB to 63.5dB
314*5113495bSYour Name 
315*5113495bSYour Name 
316*5113495bSYour Name 
317*5113495bSYour Name 			<legal all>
318*5113495bSYour Name */
319*5113495bSYour Name 
320*5113495bSYour Name 
321*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_0_RECEPTION_TYPE
322*5113495bSYour Name 
323*5113495bSYour Name 			This field helps MAC SW determine which field in this
324*5113495bSYour Name 			(and following TLVs) will contain valid information. For
325*5113495bSYour Name 			example some RSSI info not valid in case of uplink_ofdma..
326*5113495bSYour Name 
327*5113495bSYour Name 			<enum 0 reception_is_uplink_ofdma>
328*5113495bSYour Name 
329*5113495bSYour Name 			<enum 1 reception_is_uplink_mimo>
330*5113495bSYour Name 
331*5113495bSYour Name 			<enum 2 reception_is_other>
332*5113495bSYour Name 
333*5113495bSYour Name 			<enum 3 reception_is_frameless> PHY RX has been
334*5113495bSYour Name 			instructed in advance that the upcoming reception is
335*5113495bSYour Name 			frameless. This implieas that in advance it is known that
336*5113495bSYour Name 			all frames will collide in the medium, and nothing can be
337*5113495bSYour Name 			properly decoded... This can happen during the CTS reception
338*5113495bSYour Name 			in response to the triggered MU-RTS transmission.
339*5113495bSYour Name 
340*5113495bSYour Name 			MAC takes no action when seeing this e_num. For the
341*5113495bSYour Name 			frameless reception the indication in pkt_end is the final
342*5113495bSYour Name 			one evaluated by the MAC
343*5113495bSYour Name 
344*5113495bSYour Name 			<legal 0-3>
345*5113495bSYour Name */
346*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RECEPTION_TYPE_OFFSET                    0x00000000
347*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RECEPTION_TYPE_LSB                       0
348*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RECEPTION_TYPE_MASK                      0x0000000f
349*5113495bSYour Name 
350*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_0_RESERVED_0
351*5113495bSYour Name 
352*5113495bSYour Name 			<legal 0>
353*5113495bSYour Name */
354*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RESERVED_0_OFFSET                        0x00000000
355*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RESERVED_0_LSB                           4
356*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RESERVED_0_MASK                          0x00000030
357*5113495bSYour Name 
358*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_0_RECEIVE_BANDWIDTH
359*5113495bSYour Name 
360*5113495bSYour Name 			Full receive Bandwidth
361*5113495bSYour Name 
362*5113495bSYour Name 
363*5113495bSYour Name 
364*5113495bSYour Name 			<enum 0     full_rx_bw_20_mhz>
365*5113495bSYour Name 
366*5113495bSYour Name 			<enum 1      full_rx_bw_40_mhz>
367*5113495bSYour Name 
368*5113495bSYour Name 			<enum 2      full_rx_bw_80_mhz>
369*5113495bSYour Name 
370*5113495bSYour Name 			<enum 3      full_rx_bw_160_mhz>
371*5113495bSYour Name 
372*5113495bSYour Name 
373*5113495bSYour Name 
374*5113495bSYour Name 			<legal 0-3>
375*5113495bSYour Name */
376*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RECEIVE_BANDWIDTH_OFFSET                 0x00000000
377*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RECEIVE_BANDWIDTH_LSB                    6
378*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RECEIVE_BANDWIDTH_MASK                   0x000000c0
379*5113495bSYour Name 
380*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_0_RX_CHAIN_MASK
381*5113495bSYour Name 
382*5113495bSYour Name 			The chain mask at the start of the reception of this
383*5113495bSYour Name 			frame.
384*5113495bSYour Name 
385*5113495bSYour Name 
386*5113495bSYour Name 
387*5113495bSYour Name 			each bit is one antenna
388*5113495bSYour Name 
389*5113495bSYour Name 			0: the chain is NOT used
390*5113495bSYour Name 
391*5113495bSYour Name 			1: the chain is used
392*5113495bSYour Name 
393*5113495bSYour Name 
394*5113495bSYour Name 
395*5113495bSYour Name 			Supports up to 8 chains
396*5113495bSYour Name 
397*5113495bSYour Name 
398*5113495bSYour Name 
399*5113495bSYour Name 			Used in 11ax TPC calculations for UL OFDMA/MIMO and has
400*5113495bSYour Name 			to be in sync with the rssi_comb value as this is also used
401*5113495bSYour Name 			by the MAC for the TPC calculations.
402*5113495bSYour Name 
403*5113495bSYour Name 			<legal all>
404*5113495bSYour Name */
405*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RX_CHAIN_MASK_OFFSET                     0x00000000
406*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RX_CHAIN_MASK_LSB                        8
407*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RX_CHAIN_MASK_MASK                       0x0000ff00
408*5113495bSYour Name 
409*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_0_PHY_PPDU_ID
410*5113495bSYour Name 
411*5113495bSYour Name 			A ppdu counter value that PHY increments for every PPDU
412*5113495bSYour Name 			received. The counter value wraps around
413*5113495bSYour Name 
414*5113495bSYour Name 			<legal all>
415*5113495bSYour Name */
416*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_PHY_PPDU_ID_OFFSET                       0x00000000
417*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_PHY_PPDU_ID_LSB                          16
418*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_PHY_PPDU_ID_MASK                         0xffff0000
419*5113495bSYour Name 
420*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_1_SW_PHY_META_DATA
421*5113495bSYour Name 
422*5113495bSYour Name 			32 bit Meta data that SW can program in a 32 bit PHY
423*5113495bSYour Name 			register and PHY will insert the value in every
424*5113495bSYour Name 			RX_RSSI_LEGACY TLV that it generates.
425*5113495bSYour Name 
426*5113495bSYour Name 			SW uses this field to embed among other things some SW
427*5113495bSYour Name 			channel info.
428*5113495bSYour Name */
429*5113495bSYour Name #define PHYRX_RSSI_LEGACY_1_SW_PHY_META_DATA_OFFSET                  0x00000004
430*5113495bSYour Name #define PHYRX_RSSI_LEGACY_1_SW_PHY_META_DATA_LSB                     0
431*5113495bSYour Name #define PHYRX_RSSI_LEGACY_1_SW_PHY_META_DATA_MASK                    0xffffffff
432*5113495bSYour Name 
433*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_2_PPDU_START_TIMESTAMP
434*5113495bSYour Name 
435*5113495bSYour Name 			Timestamp that indicates when the PPDU that contained
436*5113495bSYour Name 			this MPDU started on the medium.
437*5113495bSYour Name 
438*5113495bSYour Name 
439*5113495bSYour Name 
440*5113495bSYour Name 			Note that PHY will detect the start later, and will have
441*5113495bSYour Name 			to derive out of the preamble info when the frame actually
442*5113495bSYour Name 			appeared on the medium
443*5113495bSYour Name 
444*5113495bSYour Name 			<legal 0- 10>
445*5113495bSYour Name */
446*5113495bSYour Name #define PHYRX_RSSI_LEGACY_2_PPDU_START_TIMESTAMP_OFFSET              0x00000008
447*5113495bSYour Name #define PHYRX_RSSI_LEGACY_2_PPDU_START_TIMESTAMP_LSB                 0
448*5113495bSYour Name #define PHYRX_RSSI_LEGACY_2_PPDU_START_TIMESTAMP_MASK                0xffffffff
449*5113495bSYour Name #define PHYRX_RSSI_LEGACY_3_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x0000000c
450*5113495bSYour Name #define PHYRX_RSSI_LEGACY_3_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
451*5113495bSYour Name #define PHYRX_RSSI_LEGACY_3_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
452*5113495bSYour Name #define PHYRX_RSSI_LEGACY_4_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000010
453*5113495bSYour Name #define PHYRX_RSSI_LEGACY_4_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
454*5113495bSYour Name #define PHYRX_RSSI_LEGACY_4_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
455*5113495bSYour Name #define PHYRX_RSSI_LEGACY_5_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000014
456*5113495bSYour Name #define PHYRX_RSSI_LEGACY_5_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
457*5113495bSYour Name #define PHYRX_RSSI_LEGACY_5_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
458*5113495bSYour Name #define PHYRX_RSSI_LEGACY_6_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000018
459*5113495bSYour Name #define PHYRX_RSSI_LEGACY_6_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
460*5113495bSYour Name #define PHYRX_RSSI_LEGACY_6_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
461*5113495bSYour Name #define PHYRX_RSSI_LEGACY_7_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x0000001c
462*5113495bSYour Name #define PHYRX_RSSI_LEGACY_7_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
463*5113495bSYour Name #define PHYRX_RSSI_LEGACY_7_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
464*5113495bSYour Name #define PHYRX_RSSI_LEGACY_8_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000020
465*5113495bSYour Name #define PHYRX_RSSI_LEGACY_8_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
466*5113495bSYour Name #define PHYRX_RSSI_LEGACY_8_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
467*5113495bSYour Name #define PHYRX_RSSI_LEGACY_9_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000024
468*5113495bSYour Name #define PHYRX_RSSI_LEGACY_9_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
469*5113495bSYour Name #define PHYRX_RSSI_LEGACY_9_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
470*5113495bSYour Name #define PHYRX_RSSI_LEGACY_10_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000028
471*5113495bSYour Name #define PHYRX_RSSI_LEGACY_10_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
472*5113495bSYour Name #define PHYRX_RSSI_LEGACY_10_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
473*5113495bSYour Name #define PHYRX_RSSI_LEGACY_11_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x0000002c
474*5113495bSYour Name #define PHYRX_RSSI_LEGACY_11_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
475*5113495bSYour Name #define PHYRX_RSSI_LEGACY_11_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
476*5113495bSYour Name #define PHYRX_RSSI_LEGACY_12_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000030
477*5113495bSYour Name #define PHYRX_RSSI_LEGACY_12_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
478*5113495bSYour Name #define PHYRX_RSSI_LEGACY_12_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
479*5113495bSYour Name #define PHYRX_RSSI_LEGACY_13_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000034
480*5113495bSYour Name #define PHYRX_RSSI_LEGACY_13_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
481*5113495bSYour Name #define PHYRX_RSSI_LEGACY_13_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
482*5113495bSYour Name #define PHYRX_RSSI_LEGACY_14_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000038
483*5113495bSYour Name #define PHYRX_RSSI_LEGACY_14_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
484*5113495bSYour Name #define PHYRX_RSSI_LEGACY_14_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
485*5113495bSYour Name #define PHYRX_RSSI_LEGACY_15_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x0000003c
486*5113495bSYour Name #define PHYRX_RSSI_LEGACY_15_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
487*5113495bSYour Name #define PHYRX_RSSI_LEGACY_15_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
488*5113495bSYour Name #define PHYRX_RSSI_LEGACY_16_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000040
489*5113495bSYour Name #define PHYRX_RSSI_LEGACY_16_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
490*5113495bSYour Name #define PHYRX_RSSI_LEGACY_16_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
491*5113495bSYour Name #define PHYRX_RSSI_LEGACY_17_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000044
492*5113495bSYour Name #define PHYRX_RSSI_LEGACY_17_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
493*5113495bSYour Name #define PHYRX_RSSI_LEGACY_17_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
494*5113495bSYour Name #define PHYRX_RSSI_LEGACY_18_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000048
495*5113495bSYour Name #define PHYRX_RSSI_LEGACY_18_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
496*5113495bSYour Name #define PHYRX_RSSI_LEGACY_18_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
497*5113495bSYour Name #define PHYRX_RSSI_LEGACY_19_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x0000004c
498*5113495bSYour Name #define PHYRX_RSSI_LEGACY_19_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
499*5113495bSYour Name #define PHYRX_RSSI_LEGACY_19_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
500*5113495bSYour Name #define PHYRX_RSSI_LEGACY_20_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000050
501*5113495bSYour Name #define PHYRX_RSSI_LEGACY_20_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
502*5113495bSYour Name #define PHYRX_RSSI_LEGACY_20_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
503*5113495bSYour Name #define PHYRX_RSSI_LEGACY_21_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000054
504*5113495bSYour Name #define PHYRX_RSSI_LEGACY_21_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
505*5113495bSYour Name #define PHYRX_RSSI_LEGACY_21_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
506*5113495bSYour Name #define PHYRX_RSSI_LEGACY_22_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000058
507*5113495bSYour Name #define PHYRX_RSSI_LEGACY_22_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
508*5113495bSYour Name #define PHYRX_RSSI_LEGACY_22_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
509*5113495bSYour Name #define PHYRX_RSSI_LEGACY_23_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x0000005c
510*5113495bSYour Name #define PHYRX_RSSI_LEGACY_23_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
511*5113495bSYour Name #define PHYRX_RSSI_LEGACY_23_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
512*5113495bSYour Name #define PHYRX_RSSI_LEGACY_24_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000060
513*5113495bSYour Name #define PHYRX_RSSI_LEGACY_24_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
514*5113495bSYour Name #define PHYRX_RSSI_LEGACY_24_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
515*5113495bSYour Name #define PHYRX_RSSI_LEGACY_25_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000064
516*5113495bSYour Name #define PHYRX_RSSI_LEGACY_25_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
517*5113495bSYour Name #define PHYRX_RSSI_LEGACY_25_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
518*5113495bSYour Name #define PHYRX_RSSI_LEGACY_26_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000068
519*5113495bSYour Name #define PHYRX_RSSI_LEGACY_26_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
520*5113495bSYour Name #define PHYRX_RSSI_LEGACY_26_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
521*5113495bSYour Name #define PHYRX_RSSI_LEGACY_27_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x0000006c
522*5113495bSYour Name #define PHYRX_RSSI_LEGACY_27_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
523*5113495bSYour Name #define PHYRX_RSSI_LEGACY_27_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
524*5113495bSYour Name #define PHYRX_RSSI_LEGACY_28_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000070
525*5113495bSYour Name #define PHYRX_RSSI_LEGACY_28_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
526*5113495bSYour Name #define PHYRX_RSSI_LEGACY_28_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
527*5113495bSYour Name #define PHYRX_RSSI_LEGACY_29_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000074
528*5113495bSYour Name #define PHYRX_RSSI_LEGACY_29_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
529*5113495bSYour Name #define PHYRX_RSSI_LEGACY_29_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
530*5113495bSYour Name #define PHYRX_RSSI_LEGACY_30_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000078
531*5113495bSYour Name #define PHYRX_RSSI_LEGACY_30_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
532*5113495bSYour Name #define PHYRX_RSSI_LEGACY_30_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
533*5113495bSYour Name #define PHYRX_RSSI_LEGACY_31_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x0000007c
534*5113495bSYour Name #define PHYRX_RSSI_LEGACY_31_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
535*5113495bSYour Name #define PHYRX_RSSI_LEGACY_31_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
536*5113495bSYour Name #define PHYRX_RSSI_LEGACY_32_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000080
537*5113495bSYour Name #define PHYRX_RSSI_LEGACY_32_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
538*5113495bSYour Name #define PHYRX_RSSI_LEGACY_32_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
539*5113495bSYour Name #define PHYRX_RSSI_LEGACY_33_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000084
540*5113495bSYour Name #define PHYRX_RSSI_LEGACY_33_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
541*5113495bSYour Name #define PHYRX_RSSI_LEGACY_33_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
542*5113495bSYour Name #define PHYRX_RSSI_LEGACY_34_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000088
543*5113495bSYour Name #define PHYRX_RSSI_LEGACY_34_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
544*5113495bSYour Name #define PHYRX_RSSI_LEGACY_34_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
545*5113495bSYour Name 
546*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_35_PRE_RSSI_COMB
547*5113495bSYour Name 
548*5113495bSYour Name 			Combined pre_rssi of all chains. Based on primary
549*5113495bSYour Name 			channel RSSI.
550*5113495bSYour Name 
551*5113495bSYour Name 
552*5113495bSYour Name 
553*5113495bSYour Name 			RSSI is reported as 8b signed values. Nominally value is
554*5113495bSYour Name 			in dB units above or below the noisefloor(minCCApwr).
555*5113495bSYour Name 
556*5113495bSYour Name 
557*5113495bSYour Name 
558*5113495bSYour Name 			The resolution can be:
559*5113495bSYour Name 
560*5113495bSYour Name 			1dB or 0.5dB. This is statically configured within the
561*5113495bSYour Name 			PHY and MAC
562*5113495bSYour Name 
563*5113495bSYour Name 
564*5113495bSYour Name 
565*5113495bSYour Name 			In case of 1dB, the Range is:
566*5113495bSYour Name 
567*5113495bSYour Name 			 -128dB to 127dB
568*5113495bSYour Name 
569*5113495bSYour Name 
570*5113495bSYour Name 
571*5113495bSYour Name 			In case of 0.5dB, the Range is:
572*5113495bSYour Name 
573*5113495bSYour Name 			 -64dB to 63.5dB
574*5113495bSYour Name 
575*5113495bSYour Name 
576*5113495bSYour Name 
577*5113495bSYour Name 			<legal all>
578*5113495bSYour Name */
579*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_PRE_RSSI_COMB_OFFSET                    0x0000008c
580*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_PRE_RSSI_COMB_LSB                       0
581*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_PRE_RSSI_COMB_MASK                      0x000000ff
582*5113495bSYour Name 
583*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_35_RSSI_COMB
584*5113495bSYour Name 
585*5113495bSYour Name 			Combined rssi of all chains. Based on primary channel
586*5113495bSYour Name 			RSSI.
587*5113495bSYour Name 
588*5113495bSYour Name 
589*5113495bSYour Name 
590*5113495bSYour Name 			RSSI is reported as 8b signed values. Nominally value is
591*5113495bSYour Name 			in dB units above or below the noisefloor(minCCApwr).
592*5113495bSYour Name 
593*5113495bSYour Name 
594*5113495bSYour Name 
595*5113495bSYour Name 			The resolution can be:
596*5113495bSYour Name 
597*5113495bSYour Name 			1dB or 0.5dB. This is statically configured within the
598*5113495bSYour Name 			PHY and MAC
599*5113495bSYour Name 
600*5113495bSYour Name 
601*5113495bSYour Name 
602*5113495bSYour Name 			In case of 1dB, the Range is:
603*5113495bSYour Name 
604*5113495bSYour Name 			 -128dB to 127dB
605*5113495bSYour Name 
606*5113495bSYour Name 
607*5113495bSYour Name 
608*5113495bSYour Name 			In case of 0.5dB, the Range is:
609*5113495bSYour Name 
610*5113495bSYour Name 			 -64dB to 63.5dB
611*5113495bSYour Name 
612*5113495bSYour Name 
613*5113495bSYour Name 
614*5113495bSYour Name 			<legal all>
615*5113495bSYour Name */
616*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RSSI_COMB_OFFSET                        0x0000008c
617*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RSSI_COMB_LSB                           8
618*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RSSI_COMB_MASK                          0x0000ff00
619*5113495bSYour Name 
620*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_35_NORMALIZED_PRE_RSSI_COMB
621*5113495bSYour Name 
622*5113495bSYour Name 			Combined pre_rssi of all chains, but normalized back to
623*5113495bSYour Name 			a single chain. This avoids PDG from having to evaluate this
624*5113495bSYour Name 			in combination with receive chain mask and perform all kinds
625*5113495bSYour Name 			of pre-processing algorithms.
626*5113495bSYour Name 
627*5113495bSYour Name 
628*5113495bSYour Name 
629*5113495bSYour Name 			Based on primary channel RSSI.
630*5113495bSYour Name 
631*5113495bSYour Name 
632*5113495bSYour Name 
633*5113495bSYour Name 			RSSI is reported as 8b signed values. Nominally value is
634*5113495bSYour Name 			in dB units above or below the noisefloor(minCCApwr).
635*5113495bSYour Name 
636*5113495bSYour Name 
637*5113495bSYour Name 
638*5113495bSYour Name 			The resolution can be:
639*5113495bSYour Name 
640*5113495bSYour Name 			1dB or 0.5dB. This is statically configured within the
641*5113495bSYour Name 			PHY and MAC
642*5113495bSYour Name 
643*5113495bSYour Name 
644*5113495bSYour Name 
645*5113495bSYour Name 			In case of 1dB, the Range is:
646*5113495bSYour Name 
647*5113495bSYour Name 			 -128dB to 127dB
648*5113495bSYour Name 
649*5113495bSYour Name 
650*5113495bSYour Name 
651*5113495bSYour Name 			In case of 0.5dB, the Range is:
652*5113495bSYour Name 
653*5113495bSYour Name 			 -64dB to 63.5dB
654*5113495bSYour Name 
655*5113495bSYour Name 
656*5113495bSYour Name 
657*5113495bSYour Name 			<legal all>
658*5113495bSYour Name */
659*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_NORMALIZED_PRE_RSSI_COMB_OFFSET         0x0000008c
660*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_NORMALIZED_PRE_RSSI_COMB_LSB            16
661*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_NORMALIZED_PRE_RSSI_COMB_MASK           0x00ff0000
662*5113495bSYour Name 
663*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_35_NORMALIZED_RSSI_COMB
664*5113495bSYour Name 
665*5113495bSYour Name 			Combined rssi of all chains, but normalized back to a
666*5113495bSYour Name 			single chain. This avoids PDG from having to evaluate this
667*5113495bSYour Name 			in combination with receive chain mask and perform all kinds
668*5113495bSYour Name 			of pre-processing algorithms.
669*5113495bSYour Name 
670*5113495bSYour Name 
671*5113495bSYour Name 
672*5113495bSYour Name 			Based on primary channel RSSI.
673*5113495bSYour Name 
674*5113495bSYour Name 
675*5113495bSYour Name 
676*5113495bSYour Name 			RSSI is reported as 8b signed values. Nominally value is
677*5113495bSYour Name 			in dB units above or below the noisefloor(minCCApwr).
678*5113495bSYour Name 
679*5113495bSYour Name 
680*5113495bSYour Name 
681*5113495bSYour Name 			The resolution can be:
682*5113495bSYour Name 
683*5113495bSYour Name 			1dB or 0.5dB. This is statically configured within the
684*5113495bSYour Name 			PHY and MAC
685*5113495bSYour Name 
686*5113495bSYour Name 			In case of 1dB, the Range is:
687*5113495bSYour Name 
688*5113495bSYour Name 			 -128dB to 127dB
689*5113495bSYour Name 
690*5113495bSYour Name 
691*5113495bSYour Name 
692*5113495bSYour Name 			In case of 0.5dB, the Range is:
693*5113495bSYour Name 
694*5113495bSYour Name 			 -64dB to 63.5dB
695*5113495bSYour Name 
696*5113495bSYour Name 
697*5113495bSYour Name 
698*5113495bSYour Name 			<legal all>
699*5113495bSYour Name */
700*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_NORMALIZED_RSSI_COMB_OFFSET             0x0000008c
701*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_NORMALIZED_RSSI_COMB_LSB                24
702*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_NORMALIZED_RSSI_COMB_MASK               0xff000000
703*5113495bSYour Name 
704*5113495bSYour Name 
705*5113495bSYour Name #endif // _PHYRX_RSSI_LEGACY_H_
706