xref: /wlan-driver/fw-api/hw/qca6290/v2/phyrx_rssi_legacy.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1*5113495bSYour Name /*
2*5113495bSYour Name  * Copyright (c) 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[7:4], 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], receive_bandwidth[17:16], reserved[31:18]
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                      :  4, //[7:4]
43*5113495bSYour Name                       rx_chain_mask                   :  8, //[15:8]
44*5113495bSYour Name                       phy_ppdu_id                     : 16; //[31:16]
45*5113495bSYour Name              uint32_t sw_phy_meta_data                : 32; //[31:0]
46*5113495bSYour Name              uint32_t ppdu_start_timestamp            : 32; //[31:0]
47*5113495bSYour Name     struct            receive_rssi_info                       pre_rssi_info_details;
48*5113495bSYour Name     struct            receive_rssi_info                       preamble_rssi_info_details;
49*5113495bSYour Name              uint32_t pre_rssi_comb                   :  8, //[7:0]
50*5113495bSYour Name                       rssi_comb                       :  8, //[15:8]
51*5113495bSYour Name                       receive_bandwidth               :  2, //[17:16]
52*5113495bSYour Name                       reserved                        : 14; //[31:18]
53*5113495bSYour Name };
54*5113495bSYour Name 
55*5113495bSYour Name /*
56*5113495bSYour Name 
57*5113495bSYour Name reception_type
58*5113495bSYour Name 
59*5113495bSYour Name 			This field helps MAC SW determine which field in this
60*5113495bSYour Name 			(and following TLVs) will contain valid information. For
61*5113495bSYour Name 			example some RSSI info not valid in case of uplink_ofdma..
62*5113495bSYour Name 
63*5113495bSYour Name 			<enum 0 reception_is_uplink_ofdma>
64*5113495bSYour Name 
65*5113495bSYour Name 			<enum 1 reception_is_uplink_mimo>
66*5113495bSYour Name 
67*5113495bSYour Name 			<enum 2 reception_is_other>
68*5113495bSYour Name 
69*5113495bSYour Name 			<enum 3 reception_is_frameless> PHY RX has been
70*5113495bSYour Name 			instructed in advance that the upcoming reception is
71*5113495bSYour Name 			frameless. This implieas that in advance it is known that
72*5113495bSYour Name 			all frames will collide in the medium, and nothing can be
73*5113495bSYour Name 			properly decoded... This can happen during the CTS reception
74*5113495bSYour Name 			in response to the triggered MU-RTS transmission.
75*5113495bSYour Name 
76*5113495bSYour Name 			MAC takes no action when seeing this e_num. For the
77*5113495bSYour Name 			frameless reception the indication in pkt_end is the final
78*5113495bSYour Name 			one evaluated by the MAC
79*5113495bSYour Name 
80*5113495bSYour Name 			<legal 0-3>
81*5113495bSYour Name 
82*5113495bSYour Name reserved_0
83*5113495bSYour Name 
84*5113495bSYour Name 			<legal 0>
85*5113495bSYour Name 
86*5113495bSYour Name rx_chain_mask
87*5113495bSYour Name 
88*5113495bSYour Name 			The chain mask at the start of the reception of this
89*5113495bSYour Name 			frame.
90*5113495bSYour Name 
91*5113495bSYour Name 
92*5113495bSYour Name 
93*5113495bSYour Name 			each bit is one antenna
94*5113495bSYour Name 
95*5113495bSYour Name 			0: the chain is NOT used
96*5113495bSYour Name 
97*5113495bSYour Name 			1: the chain is used
98*5113495bSYour Name 
99*5113495bSYour Name 
100*5113495bSYour Name 
101*5113495bSYour Name 			Supports up to 8 chains
102*5113495bSYour Name 
103*5113495bSYour Name 
104*5113495bSYour Name 
105*5113495bSYour Name 			Used in 11ax TPC calculations for UL OFDMA/MIMO and has
106*5113495bSYour Name 			to be in sync with the rssi_comb value as this is also used
107*5113495bSYour Name 			by the MAC for the TPC calculations.
108*5113495bSYour Name 
109*5113495bSYour Name 			<legal all>
110*5113495bSYour Name 
111*5113495bSYour Name phy_ppdu_id
112*5113495bSYour Name 
113*5113495bSYour Name 			A ppdu counter value that PHY increments for every PPDU
114*5113495bSYour Name 			received. The counter value wraps around
115*5113495bSYour Name 
116*5113495bSYour Name 			<legal all>
117*5113495bSYour Name 
118*5113495bSYour Name sw_phy_meta_data
119*5113495bSYour Name 
120*5113495bSYour Name 			32 bit Meta data that SW can program in a 32 bit PHY
121*5113495bSYour Name 			register and PHY will insert the value in every
122*5113495bSYour Name 			RX_RSSI_LEGACY TLV that it generates.
123*5113495bSYour Name 
124*5113495bSYour Name 			SW uses this field to embed among other things some SW
125*5113495bSYour Name 			channel info.
126*5113495bSYour Name 
127*5113495bSYour Name ppdu_start_timestamp
128*5113495bSYour Name 
129*5113495bSYour Name 			Timestamp that indicates when the PPDU that contained
130*5113495bSYour Name 			this MPDU started on the medium.
131*5113495bSYour Name 
132*5113495bSYour Name 
133*5113495bSYour Name 
134*5113495bSYour Name 			Note that PHY will detect the start later, and will have
135*5113495bSYour Name 			to derive out of the preamble info when the frame actually
136*5113495bSYour Name 			appeared on the medium
137*5113495bSYour Name 
138*5113495bSYour Name 			<legal 0- 10>
139*5113495bSYour Name 
140*5113495bSYour Name struct receive_rssi_info pre_rssi_info_details
141*5113495bSYour Name 
142*5113495bSYour Name 			This field is not valid when reception_is_uplink_ofdma
143*5113495bSYour Name 
144*5113495bSYour Name 
145*5113495bSYour Name 
146*5113495bSYour Name 			Overview of the pre-RSSI values. That is RSSI values
147*5113495bSYour Name 			measured on the medium before this reception started.
148*5113495bSYour Name 
149*5113495bSYour Name struct receive_rssi_info preamble_rssi_info_details
150*5113495bSYour Name 
151*5113495bSYour Name 			This field is not valid when reception_is_uplink_ofdma
152*5113495bSYour Name 
153*5113495bSYour Name 
154*5113495bSYour Name 
155*5113495bSYour Name 			Overview of the RSSI values measured during the
156*5113495bSYour Name 			pre-amble phase of this reception
157*5113495bSYour Name 
158*5113495bSYour Name pre_rssi_comb
159*5113495bSYour Name 
160*5113495bSYour Name 			Combined pre_rssi of all chains. Based on primary
161*5113495bSYour Name 			channel RSSI.
162*5113495bSYour Name 
163*5113495bSYour Name 			<legal all>
164*5113495bSYour Name 
165*5113495bSYour Name rssi_comb
166*5113495bSYour Name 
167*5113495bSYour Name 			Combined rssi of all chains. Based on primary channel
168*5113495bSYour Name 			RSSI.
169*5113495bSYour Name 
170*5113495bSYour Name 			<legal all>
171*5113495bSYour Name 
172*5113495bSYour Name receive_bandwidth
173*5113495bSYour Name 
174*5113495bSYour Name 			Full receive Bandwidth
175*5113495bSYour Name 
176*5113495bSYour Name 
177*5113495bSYour Name 
178*5113495bSYour Name 			<enum 0     full_rx_bw_20_mhz>
179*5113495bSYour Name 
180*5113495bSYour Name 			<enum 1      full_rx_bw_40_mhz>
181*5113495bSYour Name 
182*5113495bSYour Name 			<enum 2      full_rx_bw_80_mhz>
183*5113495bSYour Name 
184*5113495bSYour Name 			<enum 3      full_rx_bw_160_mhz>
185*5113495bSYour Name 
186*5113495bSYour Name 
187*5113495bSYour Name 
188*5113495bSYour Name 			<legal 0-3>
189*5113495bSYour Name 
190*5113495bSYour Name reserved
191*5113495bSYour Name 
192*5113495bSYour Name 			<legal 0>
193*5113495bSYour Name */
194*5113495bSYour Name 
195*5113495bSYour Name 
196*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_0_RECEPTION_TYPE
197*5113495bSYour Name 
198*5113495bSYour Name 			This field helps MAC SW determine which field in this
199*5113495bSYour Name 			(and following TLVs) will contain valid information. For
200*5113495bSYour Name 			example some RSSI info not valid in case of uplink_ofdma..
201*5113495bSYour Name 
202*5113495bSYour Name 			<enum 0 reception_is_uplink_ofdma>
203*5113495bSYour Name 
204*5113495bSYour Name 			<enum 1 reception_is_uplink_mimo>
205*5113495bSYour Name 
206*5113495bSYour Name 			<enum 2 reception_is_other>
207*5113495bSYour Name 
208*5113495bSYour Name 			<enum 3 reception_is_frameless> PHY RX has been
209*5113495bSYour Name 			instructed in advance that the upcoming reception is
210*5113495bSYour Name 			frameless. This implieas that in advance it is known that
211*5113495bSYour Name 			all frames will collide in the medium, and nothing can be
212*5113495bSYour Name 			properly decoded... This can happen during the CTS reception
213*5113495bSYour Name 			in response to the triggered MU-RTS transmission.
214*5113495bSYour Name 
215*5113495bSYour Name 			MAC takes no action when seeing this e_num. For the
216*5113495bSYour Name 			frameless reception the indication in pkt_end is the final
217*5113495bSYour Name 			one evaluated by the MAC
218*5113495bSYour Name 
219*5113495bSYour Name 			<legal 0-3>
220*5113495bSYour Name */
221*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RECEPTION_TYPE_OFFSET                    0x00000000
222*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RECEPTION_TYPE_LSB                       0
223*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RECEPTION_TYPE_MASK                      0x0000000f
224*5113495bSYour Name 
225*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_0_RESERVED_0
226*5113495bSYour Name 
227*5113495bSYour Name 			<legal 0>
228*5113495bSYour Name */
229*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RESERVED_0_OFFSET                        0x00000000
230*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RESERVED_0_LSB                           4
231*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RESERVED_0_MASK                          0x000000f0
232*5113495bSYour Name 
233*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_0_RX_CHAIN_MASK
234*5113495bSYour Name 
235*5113495bSYour Name 			The chain mask at the start of the reception of this
236*5113495bSYour Name 			frame.
237*5113495bSYour Name 
238*5113495bSYour Name 
239*5113495bSYour Name 
240*5113495bSYour Name 			each bit is one antenna
241*5113495bSYour Name 
242*5113495bSYour Name 			0: the chain is NOT used
243*5113495bSYour Name 
244*5113495bSYour Name 			1: the chain is used
245*5113495bSYour Name 
246*5113495bSYour Name 
247*5113495bSYour Name 
248*5113495bSYour Name 			Supports up to 8 chains
249*5113495bSYour Name 
250*5113495bSYour Name 
251*5113495bSYour Name 
252*5113495bSYour Name 			Used in 11ax TPC calculations for UL OFDMA/MIMO and has
253*5113495bSYour Name 			to be in sync with the rssi_comb value as this is also used
254*5113495bSYour Name 			by the MAC for the TPC calculations.
255*5113495bSYour Name 
256*5113495bSYour Name 			<legal all>
257*5113495bSYour Name */
258*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RX_CHAIN_MASK_OFFSET                     0x00000000
259*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RX_CHAIN_MASK_LSB                        8
260*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_RX_CHAIN_MASK_MASK                       0x0000ff00
261*5113495bSYour Name 
262*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_0_PHY_PPDU_ID
263*5113495bSYour Name 
264*5113495bSYour Name 			A ppdu counter value that PHY increments for every PPDU
265*5113495bSYour Name 			received. The counter value wraps around
266*5113495bSYour Name 
267*5113495bSYour Name 			<legal all>
268*5113495bSYour Name */
269*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_PHY_PPDU_ID_OFFSET                       0x00000000
270*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_PHY_PPDU_ID_LSB                          16
271*5113495bSYour Name #define PHYRX_RSSI_LEGACY_0_PHY_PPDU_ID_MASK                         0xffff0000
272*5113495bSYour Name 
273*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_1_SW_PHY_META_DATA
274*5113495bSYour Name 
275*5113495bSYour Name 			32 bit Meta data that SW can program in a 32 bit PHY
276*5113495bSYour Name 			register and PHY will insert the value in every
277*5113495bSYour Name 			RX_RSSI_LEGACY TLV that it generates.
278*5113495bSYour Name 
279*5113495bSYour Name 			SW uses this field to embed among other things some SW
280*5113495bSYour Name 			channel info.
281*5113495bSYour Name */
282*5113495bSYour Name #define PHYRX_RSSI_LEGACY_1_SW_PHY_META_DATA_OFFSET                  0x00000004
283*5113495bSYour Name #define PHYRX_RSSI_LEGACY_1_SW_PHY_META_DATA_LSB                     0
284*5113495bSYour Name #define PHYRX_RSSI_LEGACY_1_SW_PHY_META_DATA_MASK                    0xffffffff
285*5113495bSYour Name 
286*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_2_PPDU_START_TIMESTAMP
287*5113495bSYour Name 
288*5113495bSYour Name 			Timestamp that indicates when the PPDU that contained
289*5113495bSYour Name 			this MPDU started on the medium.
290*5113495bSYour Name 
291*5113495bSYour Name 
292*5113495bSYour Name 
293*5113495bSYour Name 			Note that PHY will detect the start later, and will have
294*5113495bSYour Name 			to derive out of the preamble info when the frame actually
295*5113495bSYour Name 			appeared on the medium
296*5113495bSYour Name 
297*5113495bSYour Name 			<legal 0- 10>
298*5113495bSYour Name */
299*5113495bSYour Name #define PHYRX_RSSI_LEGACY_2_PPDU_START_TIMESTAMP_OFFSET              0x00000008
300*5113495bSYour Name #define PHYRX_RSSI_LEGACY_2_PPDU_START_TIMESTAMP_LSB                 0
301*5113495bSYour Name #define PHYRX_RSSI_LEGACY_2_PPDU_START_TIMESTAMP_MASK                0xffffffff
302*5113495bSYour Name #define PHYRX_RSSI_LEGACY_3_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x0000000c
303*5113495bSYour Name #define PHYRX_RSSI_LEGACY_3_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
304*5113495bSYour Name #define PHYRX_RSSI_LEGACY_3_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
305*5113495bSYour Name #define PHYRX_RSSI_LEGACY_4_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000010
306*5113495bSYour Name #define PHYRX_RSSI_LEGACY_4_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
307*5113495bSYour Name #define PHYRX_RSSI_LEGACY_4_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
308*5113495bSYour Name #define PHYRX_RSSI_LEGACY_5_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000014
309*5113495bSYour Name #define PHYRX_RSSI_LEGACY_5_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
310*5113495bSYour Name #define PHYRX_RSSI_LEGACY_5_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
311*5113495bSYour Name #define PHYRX_RSSI_LEGACY_6_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000018
312*5113495bSYour Name #define PHYRX_RSSI_LEGACY_6_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
313*5113495bSYour Name #define PHYRX_RSSI_LEGACY_6_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
314*5113495bSYour Name #define PHYRX_RSSI_LEGACY_7_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x0000001c
315*5113495bSYour Name #define PHYRX_RSSI_LEGACY_7_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
316*5113495bSYour Name #define PHYRX_RSSI_LEGACY_7_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
317*5113495bSYour Name #define PHYRX_RSSI_LEGACY_8_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000020
318*5113495bSYour Name #define PHYRX_RSSI_LEGACY_8_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
319*5113495bSYour Name #define PHYRX_RSSI_LEGACY_8_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
320*5113495bSYour Name #define PHYRX_RSSI_LEGACY_9_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000024
321*5113495bSYour Name #define PHYRX_RSSI_LEGACY_9_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
322*5113495bSYour Name #define PHYRX_RSSI_LEGACY_9_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
323*5113495bSYour Name #define PHYRX_RSSI_LEGACY_10_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000028
324*5113495bSYour Name #define PHYRX_RSSI_LEGACY_10_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
325*5113495bSYour Name #define PHYRX_RSSI_LEGACY_10_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
326*5113495bSYour Name #define PHYRX_RSSI_LEGACY_11_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x0000002c
327*5113495bSYour Name #define PHYRX_RSSI_LEGACY_11_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
328*5113495bSYour Name #define PHYRX_RSSI_LEGACY_11_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
329*5113495bSYour Name #define PHYRX_RSSI_LEGACY_12_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000030
330*5113495bSYour Name #define PHYRX_RSSI_LEGACY_12_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
331*5113495bSYour Name #define PHYRX_RSSI_LEGACY_12_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
332*5113495bSYour Name #define PHYRX_RSSI_LEGACY_13_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000034
333*5113495bSYour Name #define PHYRX_RSSI_LEGACY_13_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
334*5113495bSYour Name #define PHYRX_RSSI_LEGACY_13_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
335*5113495bSYour Name #define PHYRX_RSSI_LEGACY_14_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000038
336*5113495bSYour Name #define PHYRX_RSSI_LEGACY_14_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
337*5113495bSYour Name #define PHYRX_RSSI_LEGACY_14_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
338*5113495bSYour Name #define PHYRX_RSSI_LEGACY_15_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x0000003c
339*5113495bSYour Name #define PHYRX_RSSI_LEGACY_15_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
340*5113495bSYour Name #define PHYRX_RSSI_LEGACY_15_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
341*5113495bSYour Name #define PHYRX_RSSI_LEGACY_16_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000040
342*5113495bSYour Name #define PHYRX_RSSI_LEGACY_16_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
343*5113495bSYour Name #define PHYRX_RSSI_LEGACY_16_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
344*5113495bSYour Name #define PHYRX_RSSI_LEGACY_17_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000044
345*5113495bSYour Name #define PHYRX_RSSI_LEGACY_17_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
346*5113495bSYour Name #define PHYRX_RSSI_LEGACY_17_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
347*5113495bSYour Name #define PHYRX_RSSI_LEGACY_18_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_OFFSET 0x00000048
348*5113495bSYour Name #define PHYRX_RSSI_LEGACY_18_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_LSB 0
349*5113495bSYour Name #define PHYRX_RSSI_LEGACY_18_RECEIVE_RSSI_INFO_PRE_RSSI_INFO_DETAILS_MASK 0xffffffff
350*5113495bSYour Name #define PHYRX_RSSI_LEGACY_19_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x0000004c
351*5113495bSYour Name #define PHYRX_RSSI_LEGACY_19_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
352*5113495bSYour Name #define PHYRX_RSSI_LEGACY_19_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
353*5113495bSYour Name #define PHYRX_RSSI_LEGACY_20_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000050
354*5113495bSYour Name #define PHYRX_RSSI_LEGACY_20_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
355*5113495bSYour Name #define PHYRX_RSSI_LEGACY_20_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
356*5113495bSYour Name #define PHYRX_RSSI_LEGACY_21_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000054
357*5113495bSYour Name #define PHYRX_RSSI_LEGACY_21_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
358*5113495bSYour Name #define PHYRX_RSSI_LEGACY_21_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
359*5113495bSYour Name #define PHYRX_RSSI_LEGACY_22_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000058
360*5113495bSYour Name #define PHYRX_RSSI_LEGACY_22_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
361*5113495bSYour Name #define PHYRX_RSSI_LEGACY_22_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
362*5113495bSYour Name #define PHYRX_RSSI_LEGACY_23_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x0000005c
363*5113495bSYour Name #define PHYRX_RSSI_LEGACY_23_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
364*5113495bSYour Name #define PHYRX_RSSI_LEGACY_23_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
365*5113495bSYour Name #define PHYRX_RSSI_LEGACY_24_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000060
366*5113495bSYour Name #define PHYRX_RSSI_LEGACY_24_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
367*5113495bSYour Name #define PHYRX_RSSI_LEGACY_24_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
368*5113495bSYour Name #define PHYRX_RSSI_LEGACY_25_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000064
369*5113495bSYour Name #define PHYRX_RSSI_LEGACY_25_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
370*5113495bSYour Name #define PHYRX_RSSI_LEGACY_25_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
371*5113495bSYour Name #define PHYRX_RSSI_LEGACY_26_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000068
372*5113495bSYour Name #define PHYRX_RSSI_LEGACY_26_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
373*5113495bSYour Name #define PHYRX_RSSI_LEGACY_26_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
374*5113495bSYour Name #define PHYRX_RSSI_LEGACY_27_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x0000006c
375*5113495bSYour Name #define PHYRX_RSSI_LEGACY_27_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
376*5113495bSYour Name #define PHYRX_RSSI_LEGACY_27_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
377*5113495bSYour Name #define PHYRX_RSSI_LEGACY_28_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000070
378*5113495bSYour Name #define PHYRX_RSSI_LEGACY_28_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
379*5113495bSYour Name #define PHYRX_RSSI_LEGACY_28_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
380*5113495bSYour Name #define PHYRX_RSSI_LEGACY_29_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000074
381*5113495bSYour Name #define PHYRX_RSSI_LEGACY_29_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
382*5113495bSYour Name #define PHYRX_RSSI_LEGACY_29_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
383*5113495bSYour Name #define PHYRX_RSSI_LEGACY_30_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000078
384*5113495bSYour Name #define PHYRX_RSSI_LEGACY_30_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
385*5113495bSYour Name #define PHYRX_RSSI_LEGACY_30_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
386*5113495bSYour Name #define PHYRX_RSSI_LEGACY_31_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x0000007c
387*5113495bSYour Name #define PHYRX_RSSI_LEGACY_31_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
388*5113495bSYour Name #define PHYRX_RSSI_LEGACY_31_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
389*5113495bSYour Name #define PHYRX_RSSI_LEGACY_32_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000080
390*5113495bSYour Name #define PHYRX_RSSI_LEGACY_32_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
391*5113495bSYour Name #define PHYRX_RSSI_LEGACY_32_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
392*5113495bSYour Name #define PHYRX_RSSI_LEGACY_33_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000084
393*5113495bSYour Name #define PHYRX_RSSI_LEGACY_33_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
394*5113495bSYour Name #define PHYRX_RSSI_LEGACY_33_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
395*5113495bSYour Name #define PHYRX_RSSI_LEGACY_34_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_OFFSET 0x00000088
396*5113495bSYour Name #define PHYRX_RSSI_LEGACY_34_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_LSB 0
397*5113495bSYour Name #define PHYRX_RSSI_LEGACY_34_RECEIVE_RSSI_INFO_PREAMBLE_RSSI_INFO_DETAILS_MASK 0xffffffff
398*5113495bSYour Name 
399*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_35_PRE_RSSI_COMB
400*5113495bSYour Name 
401*5113495bSYour Name 			Combined pre_rssi of all chains. Based on primary
402*5113495bSYour Name 			channel RSSI.
403*5113495bSYour Name 
404*5113495bSYour Name 			<legal all>
405*5113495bSYour Name */
406*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_PRE_RSSI_COMB_OFFSET                    0x0000008c
407*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_PRE_RSSI_COMB_LSB                       0
408*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_PRE_RSSI_COMB_MASK                      0x000000ff
409*5113495bSYour Name 
410*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_35_RSSI_COMB
411*5113495bSYour Name 
412*5113495bSYour Name 			Combined rssi of all chains. Based on primary channel
413*5113495bSYour Name 			RSSI.
414*5113495bSYour Name 
415*5113495bSYour Name 			<legal all>
416*5113495bSYour Name */
417*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RSSI_COMB_OFFSET                        0x0000008c
418*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RSSI_COMB_LSB                           8
419*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RSSI_COMB_MASK                          0x0000ff00
420*5113495bSYour Name 
421*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_35_RECEIVE_BANDWIDTH
422*5113495bSYour Name 
423*5113495bSYour Name 			Full receive Bandwidth
424*5113495bSYour Name 
425*5113495bSYour Name 
426*5113495bSYour Name 
427*5113495bSYour Name 			<enum 0     full_rx_bw_20_mhz>
428*5113495bSYour Name 
429*5113495bSYour Name 			<enum 1      full_rx_bw_40_mhz>
430*5113495bSYour Name 
431*5113495bSYour Name 			<enum 2      full_rx_bw_80_mhz>
432*5113495bSYour Name 
433*5113495bSYour Name 			<enum 3      full_rx_bw_160_mhz>
434*5113495bSYour Name 
435*5113495bSYour Name 
436*5113495bSYour Name 
437*5113495bSYour Name 			<legal 0-3>
438*5113495bSYour Name */
439*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RECEIVE_BANDWIDTH_OFFSET                0x0000008c
440*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RECEIVE_BANDWIDTH_LSB                   16
441*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RECEIVE_BANDWIDTH_MASK                  0x00030000
442*5113495bSYour Name 
443*5113495bSYour Name /* Description		PHYRX_RSSI_LEGACY_35_RESERVED
444*5113495bSYour Name 
445*5113495bSYour Name 			<legal 0>
446*5113495bSYour Name */
447*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RESERVED_OFFSET                         0x0000008c
448*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RESERVED_LSB                            18
449*5113495bSYour Name #define PHYRX_RSSI_LEGACY_35_RESERVED_MASK                           0xfffc0000
450*5113495bSYour Name 
451*5113495bSYour Name 
452*5113495bSYour Name #endif // _PHYRX_RSSI_LEGACY_H_
453