xref: /wlan-driver/fw-api/hw/wcn6450/v1/rx_reo_queue.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1*5113495bSYour Name 
2*5113495bSYour Name /*
3*5113495bSYour Name  * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
4*5113495bSYour Name  *
5*5113495bSYour Name  * Permission to use, copy, modify, and/or distribute this software for
6*5113495bSYour Name  * any purpose with or without fee is hereby granted, provided that the
7*5113495bSYour Name  * above copyright notice and this permission notice appear in all
8*5113495bSYour Name  * copies.
9*5113495bSYour Name  *
10*5113495bSYour Name  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
11*5113495bSYour Name  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
12*5113495bSYour Name  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
13*5113495bSYour Name  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
14*5113495bSYour Name  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
15*5113495bSYour Name  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
16*5113495bSYour Name  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17*5113495bSYour Name  * PERFORMANCE OF THIS SOFTWARE.
18*5113495bSYour Name  */
19*5113495bSYour Name 
20*5113495bSYour Name 
21*5113495bSYour Name 
22*5113495bSYour Name #ifndef _RX_REO_QUEUE_H_
23*5113495bSYour Name #define _RX_REO_QUEUE_H_
24*5113495bSYour Name #if !defined(__ASSEMBLER__)
25*5113495bSYour Name #endif
26*5113495bSYour Name 
27*5113495bSYour Name #include "uniform_descriptor_header.h"
28*5113495bSYour Name 
29*5113495bSYour Name #define NUM_OF_DWORDS_RX_REO_QUEUE 32
30*5113495bSYour Name 
31*5113495bSYour Name struct rx_reo_queue {
32*5113495bSYour Name     struct            uniform_descriptor_header                       descriptor_header;
33*5113495bSYour Name              uint32_t receive_queue_number            : 16,
34*5113495bSYour Name                       reserved_1b                     : 16;
35*5113495bSYour Name              uint32_t vld                             :  1,
36*5113495bSYour Name                       associated_link_descriptor_counter:  2,
37*5113495bSYour Name                       disable_duplicate_detection     :  1,
38*5113495bSYour Name                       soft_reorder_enable             :  1,
39*5113495bSYour Name                       ac                              :  2,
40*5113495bSYour Name                       bar                             :  1,
41*5113495bSYour Name                       rty                             :  1,
42*5113495bSYour Name                       chk_2k_mode                     :  1,
43*5113495bSYour Name                       oor_mode                        :  1,
44*5113495bSYour Name                       ba_window_size                  :  8,
45*5113495bSYour Name                       pn_check_needed                 :  1,
46*5113495bSYour Name                       pn_shall_be_even                :  1,
47*5113495bSYour Name                       pn_shall_be_uneven              :  1,
48*5113495bSYour Name                       pn_handling_enable              :  1,
49*5113495bSYour Name                       pn_size                         :  2,
50*5113495bSYour Name                       ignore_ampdu_flag               :  1,
51*5113495bSYour Name                       reserved_2b                     :  6;
52*5113495bSYour Name              uint32_t svld                            :  1,
53*5113495bSYour Name                       ssn                             : 12,
54*5113495bSYour Name                       current_index                   :  8,
55*5113495bSYour Name                       seq_2k_error_detected_flag      :  1,
56*5113495bSYour Name                       pn_error_detected_flag          :  1,
57*5113495bSYour Name                       reserved_3a                     :  8,
58*5113495bSYour Name                       pn_valid                        :  1;
59*5113495bSYour Name              uint32_t pn_31_0                         : 32;
60*5113495bSYour Name              uint32_t pn_63_32                        : 32;
61*5113495bSYour Name              uint32_t pn_95_64                        : 32;
62*5113495bSYour Name              uint32_t pn_127_96                       : 32;
63*5113495bSYour Name              uint32_t last_rx_enqueue_timestamp       : 32;
64*5113495bSYour Name              uint32_t last_rx_dequeue_timestamp       : 32;
65*5113495bSYour Name              uint32_t ptr_to_next_aging_queue_31_0    : 32;
66*5113495bSYour Name              uint32_t ptr_to_next_aging_queue_39_32   :  8,
67*5113495bSYour Name                       reserved_11a                    : 24;
68*5113495bSYour Name              uint32_t ptr_to_previous_aging_queue_31_0: 32;
69*5113495bSYour Name              uint32_t ptr_to_previous_aging_queue_39_32:  8,
70*5113495bSYour Name                       reserved_13a                    : 24;
71*5113495bSYour Name              uint32_t rx_bitmap_31_0                  : 32;
72*5113495bSYour Name              uint32_t rx_bitmap_63_32                 : 32;
73*5113495bSYour Name              uint32_t rx_bitmap_95_64                 : 32;
74*5113495bSYour Name              uint32_t rx_bitmap_127_96                : 32;
75*5113495bSYour Name              uint32_t rx_bitmap_159_128               : 32;
76*5113495bSYour Name              uint32_t rx_bitmap_191_160               : 32;
77*5113495bSYour Name              uint32_t rx_bitmap_223_192               : 32;
78*5113495bSYour Name              uint32_t rx_bitmap_255_224               : 32;
79*5113495bSYour Name              uint32_t current_mpdu_count              :  7,
80*5113495bSYour Name                       current_msdu_count              : 25;
81*5113495bSYour Name              uint32_t reserved_23                     :  4,
82*5113495bSYour Name                       timeout_count                   :  6,
83*5113495bSYour Name                       forward_due_to_bar_count        :  6,
84*5113495bSYour Name                       duplicate_count                 : 16;
85*5113495bSYour Name              uint32_t frames_in_order_count           : 24,
86*5113495bSYour Name                       bar_received_count              :  8;
87*5113495bSYour Name              uint32_t mpdu_frames_processed_count     : 32;
88*5113495bSYour Name              uint32_t msdu_frames_processed_count     : 32;
89*5113495bSYour Name              uint32_t total_processed_byte_count      : 32;
90*5113495bSYour Name              uint32_t late_receive_mpdu_count         : 12,
91*5113495bSYour Name                       window_jump_2k                  :  4,
92*5113495bSYour Name                       hole_count                      : 16;
93*5113495bSYour Name              uint32_t reserved_29                     : 32;
94*5113495bSYour Name              uint32_t reserved_30                     : 32;
95*5113495bSYour Name              uint32_t reserved_31                     : 32;
96*5113495bSYour Name };
97*5113495bSYour Name 
98*5113495bSYour Name #define RX_REO_QUEUE_0_DESCRIPTOR_HEADER_OWNER_OFFSET                0x00000000
99*5113495bSYour Name #define RX_REO_QUEUE_0_DESCRIPTOR_HEADER_OWNER_LSB                   0
100*5113495bSYour Name #define RX_REO_QUEUE_0_DESCRIPTOR_HEADER_OWNER_MASK                  0x0000000f
101*5113495bSYour Name 
102*5113495bSYour Name #define RX_REO_QUEUE_0_DESCRIPTOR_HEADER_BUFFER_TYPE_OFFSET          0x00000000
103*5113495bSYour Name #define RX_REO_QUEUE_0_DESCRIPTOR_HEADER_BUFFER_TYPE_LSB             4
104*5113495bSYour Name #define RX_REO_QUEUE_0_DESCRIPTOR_HEADER_BUFFER_TYPE_MASK            0x000000f0
105*5113495bSYour Name 
106*5113495bSYour Name #define RX_REO_QUEUE_0_DESCRIPTOR_HEADER_RESERVED_0A_OFFSET          0x00000000
107*5113495bSYour Name #define RX_REO_QUEUE_0_DESCRIPTOR_HEADER_RESERVED_0A_LSB             8
108*5113495bSYour Name #define RX_REO_QUEUE_0_DESCRIPTOR_HEADER_RESERVED_0A_MASK            0xffffff00
109*5113495bSYour Name 
110*5113495bSYour Name #define RX_REO_QUEUE_1_RECEIVE_QUEUE_NUMBER_OFFSET                   0x00000004
111*5113495bSYour Name #define RX_REO_QUEUE_1_RECEIVE_QUEUE_NUMBER_LSB                      0
112*5113495bSYour Name #define RX_REO_QUEUE_1_RECEIVE_QUEUE_NUMBER_MASK                     0x0000ffff
113*5113495bSYour Name 
114*5113495bSYour Name #define RX_REO_QUEUE_1_RESERVED_1B_OFFSET                            0x00000004
115*5113495bSYour Name #define RX_REO_QUEUE_1_RESERVED_1B_LSB                               16
116*5113495bSYour Name #define RX_REO_QUEUE_1_RESERVED_1B_MASK                              0xffff0000
117*5113495bSYour Name 
118*5113495bSYour Name #define RX_REO_QUEUE_2_VLD_OFFSET                                    0x00000008
119*5113495bSYour Name #define RX_REO_QUEUE_2_VLD_LSB                                       0
120*5113495bSYour Name #define RX_REO_QUEUE_2_VLD_MASK                                      0x00000001
121*5113495bSYour Name 
122*5113495bSYour Name #define RX_REO_QUEUE_2_ASSOCIATED_LINK_DESCRIPTOR_COUNTER_OFFSET     0x00000008
123*5113495bSYour Name #define RX_REO_QUEUE_2_ASSOCIATED_LINK_DESCRIPTOR_COUNTER_LSB        1
124*5113495bSYour Name #define RX_REO_QUEUE_2_ASSOCIATED_LINK_DESCRIPTOR_COUNTER_MASK       0x00000006
125*5113495bSYour Name 
126*5113495bSYour Name #define RX_REO_QUEUE_2_DISABLE_DUPLICATE_DETECTION_OFFSET            0x00000008
127*5113495bSYour Name #define RX_REO_QUEUE_2_DISABLE_DUPLICATE_DETECTION_LSB               3
128*5113495bSYour Name #define RX_REO_QUEUE_2_DISABLE_DUPLICATE_DETECTION_MASK              0x00000008
129*5113495bSYour Name 
130*5113495bSYour Name #define RX_REO_QUEUE_2_SOFT_REORDER_ENABLE_OFFSET                    0x00000008
131*5113495bSYour Name #define RX_REO_QUEUE_2_SOFT_REORDER_ENABLE_LSB                       4
132*5113495bSYour Name #define RX_REO_QUEUE_2_SOFT_REORDER_ENABLE_MASK                      0x00000010
133*5113495bSYour Name 
134*5113495bSYour Name #define RX_REO_QUEUE_2_AC_OFFSET                                     0x00000008
135*5113495bSYour Name #define RX_REO_QUEUE_2_AC_LSB                                        5
136*5113495bSYour Name #define RX_REO_QUEUE_2_AC_MASK                                       0x00000060
137*5113495bSYour Name 
138*5113495bSYour Name #define RX_REO_QUEUE_2_BAR_OFFSET                                    0x00000008
139*5113495bSYour Name #define RX_REO_QUEUE_2_BAR_LSB                                       7
140*5113495bSYour Name #define RX_REO_QUEUE_2_BAR_MASK                                      0x00000080
141*5113495bSYour Name 
142*5113495bSYour Name #define RX_REO_QUEUE_2_RTY_OFFSET                                    0x00000008
143*5113495bSYour Name #define RX_REO_QUEUE_2_RTY_LSB                                       8
144*5113495bSYour Name #define RX_REO_QUEUE_2_RTY_MASK                                      0x00000100
145*5113495bSYour Name 
146*5113495bSYour Name #define RX_REO_QUEUE_2_CHK_2K_MODE_OFFSET                            0x00000008
147*5113495bSYour Name #define RX_REO_QUEUE_2_CHK_2K_MODE_LSB                               9
148*5113495bSYour Name #define RX_REO_QUEUE_2_CHK_2K_MODE_MASK                              0x00000200
149*5113495bSYour Name 
150*5113495bSYour Name #define RX_REO_QUEUE_2_OOR_MODE_OFFSET                               0x00000008
151*5113495bSYour Name #define RX_REO_QUEUE_2_OOR_MODE_LSB                                  10
152*5113495bSYour Name #define RX_REO_QUEUE_2_OOR_MODE_MASK                                 0x00000400
153*5113495bSYour Name 
154*5113495bSYour Name #define RX_REO_QUEUE_2_BA_WINDOW_SIZE_OFFSET                         0x00000008
155*5113495bSYour Name #define RX_REO_QUEUE_2_BA_WINDOW_SIZE_LSB                            11
156*5113495bSYour Name #define RX_REO_QUEUE_2_BA_WINDOW_SIZE_MASK                           0x0007f800
157*5113495bSYour Name 
158*5113495bSYour Name #define RX_REO_QUEUE_2_PN_CHECK_NEEDED_OFFSET                        0x00000008
159*5113495bSYour Name #define RX_REO_QUEUE_2_PN_CHECK_NEEDED_LSB                           19
160*5113495bSYour Name #define RX_REO_QUEUE_2_PN_CHECK_NEEDED_MASK                          0x00080000
161*5113495bSYour Name 
162*5113495bSYour Name #define RX_REO_QUEUE_2_PN_SHALL_BE_EVEN_OFFSET                       0x00000008
163*5113495bSYour Name #define RX_REO_QUEUE_2_PN_SHALL_BE_EVEN_LSB                          20
164*5113495bSYour Name #define RX_REO_QUEUE_2_PN_SHALL_BE_EVEN_MASK                         0x00100000
165*5113495bSYour Name 
166*5113495bSYour Name #define RX_REO_QUEUE_2_PN_SHALL_BE_UNEVEN_OFFSET                     0x00000008
167*5113495bSYour Name #define RX_REO_QUEUE_2_PN_SHALL_BE_UNEVEN_LSB                        21
168*5113495bSYour Name #define RX_REO_QUEUE_2_PN_SHALL_BE_UNEVEN_MASK                       0x00200000
169*5113495bSYour Name 
170*5113495bSYour Name #define RX_REO_QUEUE_2_PN_HANDLING_ENABLE_OFFSET                     0x00000008
171*5113495bSYour Name #define RX_REO_QUEUE_2_PN_HANDLING_ENABLE_LSB                        22
172*5113495bSYour Name #define RX_REO_QUEUE_2_PN_HANDLING_ENABLE_MASK                       0x00400000
173*5113495bSYour Name 
174*5113495bSYour Name #define RX_REO_QUEUE_2_PN_SIZE_OFFSET                                0x00000008
175*5113495bSYour Name #define RX_REO_QUEUE_2_PN_SIZE_LSB                                   23
176*5113495bSYour Name #define RX_REO_QUEUE_2_PN_SIZE_MASK                                  0x01800000
177*5113495bSYour Name 
178*5113495bSYour Name #define RX_REO_QUEUE_2_IGNORE_AMPDU_FLAG_OFFSET                      0x00000008
179*5113495bSYour Name #define RX_REO_QUEUE_2_IGNORE_AMPDU_FLAG_LSB                         25
180*5113495bSYour Name #define RX_REO_QUEUE_2_IGNORE_AMPDU_FLAG_MASK                        0x02000000
181*5113495bSYour Name 
182*5113495bSYour Name #define RX_REO_QUEUE_2_RESERVED_2B_OFFSET                            0x00000008
183*5113495bSYour Name #define RX_REO_QUEUE_2_RESERVED_2B_LSB                               26
184*5113495bSYour Name #define RX_REO_QUEUE_2_RESERVED_2B_MASK                              0xfc000000
185*5113495bSYour Name 
186*5113495bSYour Name #define RX_REO_QUEUE_3_SVLD_OFFSET                                   0x0000000c
187*5113495bSYour Name #define RX_REO_QUEUE_3_SVLD_LSB                                      0
188*5113495bSYour Name #define RX_REO_QUEUE_3_SVLD_MASK                                     0x00000001
189*5113495bSYour Name 
190*5113495bSYour Name #define RX_REO_QUEUE_3_SSN_OFFSET                                    0x0000000c
191*5113495bSYour Name #define RX_REO_QUEUE_3_SSN_LSB                                       1
192*5113495bSYour Name #define RX_REO_QUEUE_3_SSN_MASK                                      0x00001ffe
193*5113495bSYour Name 
194*5113495bSYour Name #define RX_REO_QUEUE_3_CURRENT_INDEX_OFFSET                          0x0000000c
195*5113495bSYour Name #define RX_REO_QUEUE_3_CURRENT_INDEX_LSB                             13
196*5113495bSYour Name #define RX_REO_QUEUE_3_CURRENT_INDEX_MASK                            0x001fe000
197*5113495bSYour Name 
198*5113495bSYour Name #define RX_REO_QUEUE_3_SEQ_2K_ERROR_DETECTED_FLAG_OFFSET             0x0000000c
199*5113495bSYour Name #define RX_REO_QUEUE_3_SEQ_2K_ERROR_DETECTED_FLAG_LSB                21
200*5113495bSYour Name #define RX_REO_QUEUE_3_SEQ_2K_ERROR_DETECTED_FLAG_MASK               0x00200000
201*5113495bSYour Name 
202*5113495bSYour Name #define RX_REO_QUEUE_3_PN_ERROR_DETECTED_FLAG_OFFSET                 0x0000000c
203*5113495bSYour Name #define RX_REO_QUEUE_3_PN_ERROR_DETECTED_FLAG_LSB                    22
204*5113495bSYour Name #define RX_REO_QUEUE_3_PN_ERROR_DETECTED_FLAG_MASK                   0x00400000
205*5113495bSYour Name 
206*5113495bSYour Name #define RX_REO_QUEUE_3_RESERVED_3A_OFFSET                            0x0000000c
207*5113495bSYour Name #define RX_REO_QUEUE_3_RESERVED_3A_LSB                               23
208*5113495bSYour Name #define RX_REO_QUEUE_3_RESERVED_3A_MASK                              0x7f800000
209*5113495bSYour Name 
210*5113495bSYour Name #define RX_REO_QUEUE_3_PN_VALID_OFFSET                               0x0000000c
211*5113495bSYour Name #define RX_REO_QUEUE_3_PN_VALID_LSB                                  31
212*5113495bSYour Name #define RX_REO_QUEUE_3_PN_VALID_MASK                                 0x80000000
213*5113495bSYour Name 
214*5113495bSYour Name #define RX_REO_QUEUE_4_PN_31_0_OFFSET                                0x00000010
215*5113495bSYour Name #define RX_REO_QUEUE_4_PN_31_0_LSB                                   0
216*5113495bSYour Name #define RX_REO_QUEUE_4_PN_31_0_MASK                                  0xffffffff
217*5113495bSYour Name 
218*5113495bSYour Name #define RX_REO_QUEUE_5_PN_63_32_OFFSET                               0x00000014
219*5113495bSYour Name #define RX_REO_QUEUE_5_PN_63_32_LSB                                  0
220*5113495bSYour Name #define RX_REO_QUEUE_5_PN_63_32_MASK                                 0xffffffff
221*5113495bSYour Name 
222*5113495bSYour Name #define RX_REO_QUEUE_6_PN_95_64_OFFSET                               0x00000018
223*5113495bSYour Name #define RX_REO_QUEUE_6_PN_95_64_LSB                                  0
224*5113495bSYour Name #define RX_REO_QUEUE_6_PN_95_64_MASK                                 0xffffffff
225*5113495bSYour Name 
226*5113495bSYour Name #define RX_REO_QUEUE_7_PN_127_96_OFFSET                              0x0000001c
227*5113495bSYour Name #define RX_REO_QUEUE_7_PN_127_96_LSB                                 0
228*5113495bSYour Name #define RX_REO_QUEUE_7_PN_127_96_MASK                                0xffffffff
229*5113495bSYour Name 
230*5113495bSYour Name #define RX_REO_QUEUE_8_LAST_RX_ENQUEUE_TIMESTAMP_OFFSET              0x00000020
231*5113495bSYour Name #define RX_REO_QUEUE_8_LAST_RX_ENQUEUE_TIMESTAMP_LSB                 0
232*5113495bSYour Name #define RX_REO_QUEUE_8_LAST_RX_ENQUEUE_TIMESTAMP_MASK                0xffffffff
233*5113495bSYour Name 
234*5113495bSYour Name #define RX_REO_QUEUE_9_LAST_RX_DEQUEUE_TIMESTAMP_OFFSET              0x00000024
235*5113495bSYour Name #define RX_REO_QUEUE_9_LAST_RX_DEQUEUE_TIMESTAMP_LSB                 0
236*5113495bSYour Name #define RX_REO_QUEUE_9_LAST_RX_DEQUEUE_TIMESTAMP_MASK                0xffffffff
237*5113495bSYour Name 
238*5113495bSYour Name #define RX_REO_QUEUE_10_PTR_TO_NEXT_AGING_QUEUE_31_0_OFFSET          0x00000028
239*5113495bSYour Name #define RX_REO_QUEUE_10_PTR_TO_NEXT_AGING_QUEUE_31_0_LSB             0
240*5113495bSYour Name #define RX_REO_QUEUE_10_PTR_TO_NEXT_AGING_QUEUE_31_0_MASK            0xffffffff
241*5113495bSYour Name 
242*5113495bSYour Name #define RX_REO_QUEUE_11_PTR_TO_NEXT_AGING_QUEUE_39_32_OFFSET         0x0000002c
243*5113495bSYour Name #define RX_REO_QUEUE_11_PTR_TO_NEXT_AGING_QUEUE_39_32_LSB            0
244*5113495bSYour Name #define RX_REO_QUEUE_11_PTR_TO_NEXT_AGING_QUEUE_39_32_MASK           0x000000ff
245*5113495bSYour Name 
246*5113495bSYour Name #define RX_REO_QUEUE_11_RESERVED_11A_OFFSET                          0x0000002c
247*5113495bSYour Name #define RX_REO_QUEUE_11_RESERVED_11A_LSB                             8
248*5113495bSYour Name #define RX_REO_QUEUE_11_RESERVED_11A_MASK                            0xffffff00
249*5113495bSYour Name 
250*5113495bSYour Name #define RX_REO_QUEUE_12_PTR_TO_PREVIOUS_AGING_QUEUE_31_0_OFFSET      0x00000030
251*5113495bSYour Name #define RX_REO_QUEUE_12_PTR_TO_PREVIOUS_AGING_QUEUE_31_0_LSB         0
252*5113495bSYour Name #define RX_REO_QUEUE_12_PTR_TO_PREVIOUS_AGING_QUEUE_31_0_MASK        0xffffffff
253*5113495bSYour Name 
254*5113495bSYour Name #define RX_REO_QUEUE_13_PTR_TO_PREVIOUS_AGING_QUEUE_39_32_OFFSET     0x00000034
255*5113495bSYour Name #define RX_REO_QUEUE_13_PTR_TO_PREVIOUS_AGING_QUEUE_39_32_LSB        0
256*5113495bSYour Name #define RX_REO_QUEUE_13_PTR_TO_PREVIOUS_AGING_QUEUE_39_32_MASK       0x000000ff
257*5113495bSYour Name 
258*5113495bSYour Name #define RX_REO_QUEUE_13_RESERVED_13A_OFFSET                          0x00000034
259*5113495bSYour Name #define RX_REO_QUEUE_13_RESERVED_13A_LSB                             8
260*5113495bSYour Name #define RX_REO_QUEUE_13_RESERVED_13A_MASK                            0xffffff00
261*5113495bSYour Name 
262*5113495bSYour Name #define RX_REO_QUEUE_14_RX_BITMAP_31_0_OFFSET                        0x00000038
263*5113495bSYour Name #define RX_REO_QUEUE_14_RX_BITMAP_31_0_LSB                           0
264*5113495bSYour Name #define RX_REO_QUEUE_14_RX_BITMAP_31_0_MASK                          0xffffffff
265*5113495bSYour Name 
266*5113495bSYour Name #define RX_REO_QUEUE_15_RX_BITMAP_63_32_OFFSET                       0x0000003c
267*5113495bSYour Name #define RX_REO_QUEUE_15_RX_BITMAP_63_32_LSB                          0
268*5113495bSYour Name #define RX_REO_QUEUE_15_RX_BITMAP_63_32_MASK                         0xffffffff
269*5113495bSYour Name 
270*5113495bSYour Name #define RX_REO_QUEUE_16_RX_BITMAP_95_64_OFFSET                       0x00000040
271*5113495bSYour Name #define RX_REO_QUEUE_16_RX_BITMAP_95_64_LSB                          0
272*5113495bSYour Name #define RX_REO_QUEUE_16_RX_BITMAP_95_64_MASK                         0xffffffff
273*5113495bSYour Name 
274*5113495bSYour Name #define RX_REO_QUEUE_17_RX_BITMAP_127_96_OFFSET                      0x00000044
275*5113495bSYour Name #define RX_REO_QUEUE_17_RX_BITMAP_127_96_LSB                         0
276*5113495bSYour Name #define RX_REO_QUEUE_17_RX_BITMAP_127_96_MASK                        0xffffffff
277*5113495bSYour Name 
278*5113495bSYour Name #define RX_REO_QUEUE_18_RX_BITMAP_159_128_OFFSET                     0x00000048
279*5113495bSYour Name #define RX_REO_QUEUE_18_RX_BITMAP_159_128_LSB                        0
280*5113495bSYour Name #define RX_REO_QUEUE_18_RX_BITMAP_159_128_MASK                       0xffffffff
281*5113495bSYour Name 
282*5113495bSYour Name #define RX_REO_QUEUE_19_RX_BITMAP_191_160_OFFSET                     0x0000004c
283*5113495bSYour Name #define RX_REO_QUEUE_19_RX_BITMAP_191_160_LSB                        0
284*5113495bSYour Name #define RX_REO_QUEUE_19_RX_BITMAP_191_160_MASK                       0xffffffff
285*5113495bSYour Name 
286*5113495bSYour Name #define RX_REO_QUEUE_20_RX_BITMAP_223_192_OFFSET                     0x00000050
287*5113495bSYour Name #define RX_REO_QUEUE_20_RX_BITMAP_223_192_LSB                        0
288*5113495bSYour Name #define RX_REO_QUEUE_20_RX_BITMAP_223_192_MASK                       0xffffffff
289*5113495bSYour Name 
290*5113495bSYour Name #define RX_REO_QUEUE_21_RX_BITMAP_255_224_OFFSET                     0x00000054
291*5113495bSYour Name #define RX_REO_QUEUE_21_RX_BITMAP_255_224_LSB                        0
292*5113495bSYour Name #define RX_REO_QUEUE_21_RX_BITMAP_255_224_MASK                       0xffffffff
293*5113495bSYour Name 
294*5113495bSYour Name #define RX_REO_QUEUE_22_CURRENT_MPDU_COUNT_OFFSET                    0x00000058
295*5113495bSYour Name #define RX_REO_QUEUE_22_CURRENT_MPDU_COUNT_LSB                       0
296*5113495bSYour Name #define RX_REO_QUEUE_22_CURRENT_MPDU_COUNT_MASK                      0x0000007f
297*5113495bSYour Name 
298*5113495bSYour Name #define RX_REO_QUEUE_22_CURRENT_MSDU_COUNT_OFFSET                    0x00000058
299*5113495bSYour Name #define RX_REO_QUEUE_22_CURRENT_MSDU_COUNT_LSB                       7
300*5113495bSYour Name #define RX_REO_QUEUE_22_CURRENT_MSDU_COUNT_MASK                      0xffffff80
301*5113495bSYour Name 
302*5113495bSYour Name #define RX_REO_QUEUE_23_RESERVED_23_OFFSET                           0x0000005c
303*5113495bSYour Name #define RX_REO_QUEUE_23_RESERVED_23_LSB                              0
304*5113495bSYour Name #define RX_REO_QUEUE_23_RESERVED_23_MASK                             0x0000000f
305*5113495bSYour Name 
306*5113495bSYour Name #define RX_REO_QUEUE_23_TIMEOUT_COUNT_OFFSET                         0x0000005c
307*5113495bSYour Name #define RX_REO_QUEUE_23_TIMEOUT_COUNT_LSB                            4
308*5113495bSYour Name #define RX_REO_QUEUE_23_TIMEOUT_COUNT_MASK                           0x000003f0
309*5113495bSYour Name 
310*5113495bSYour Name #define RX_REO_QUEUE_23_FORWARD_DUE_TO_BAR_COUNT_OFFSET              0x0000005c
311*5113495bSYour Name #define RX_REO_QUEUE_23_FORWARD_DUE_TO_BAR_COUNT_LSB                 10
312*5113495bSYour Name #define RX_REO_QUEUE_23_FORWARD_DUE_TO_BAR_COUNT_MASK                0x0000fc00
313*5113495bSYour Name 
314*5113495bSYour Name #define RX_REO_QUEUE_23_DUPLICATE_COUNT_OFFSET                       0x0000005c
315*5113495bSYour Name #define RX_REO_QUEUE_23_DUPLICATE_COUNT_LSB                          16
316*5113495bSYour Name #define RX_REO_QUEUE_23_DUPLICATE_COUNT_MASK                         0xffff0000
317*5113495bSYour Name 
318*5113495bSYour Name #define RX_REO_QUEUE_24_FRAMES_IN_ORDER_COUNT_OFFSET                 0x00000060
319*5113495bSYour Name #define RX_REO_QUEUE_24_FRAMES_IN_ORDER_COUNT_LSB                    0
320*5113495bSYour Name #define RX_REO_QUEUE_24_FRAMES_IN_ORDER_COUNT_MASK                   0x00ffffff
321*5113495bSYour Name 
322*5113495bSYour Name #define RX_REO_QUEUE_24_BAR_RECEIVED_COUNT_OFFSET                    0x00000060
323*5113495bSYour Name #define RX_REO_QUEUE_24_BAR_RECEIVED_COUNT_LSB                       24
324*5113495bSYour Name #define RX_REO_QUEUE_24_BAR_RECEIVED_COUNT_MASK                      0xff000000
325*5113495bSYour Name 
326*5113495bSYour Name #define RX_REO_QUEUE_25_MPDU_FRAMES_PROCESSED_COUNT_OFFSET           0x00000064
327*5113495bSYour Name #define RX_REO_QUEUE_25_MPDU_FRAMES_PROCESSED_COUNT_LSB              0
328*5113495bSYour Name #define RX_REO_QUEUE_25_MPDU_FRAMES_PROCESSED_COUNT_MASK             0xffffffff
329*5113495bSYour Name 
330*5113495bSYour Name #define RX_REO_QUEUE_26_MSDU_FRAMES_PROCESSED_COUNT_OFFSET           0x00000068
331*5113495bSYour Name #define RX_REO_QUEUE_26_MSDU_FRAMES_PROCESSED_COUNT_LSB              0
332*5113495bSYour Name #define RX_REO_QUEUE_26_MSDU_FRAMES_PROCESSED_COUNT_MASK             0xffffffff
333*5113495bSYour Name 
334*5113495bSYour Name #define RX_REO_QUEUE_27_TOTAL_PROCESSED_BYTE_COUNT_OFFSET            0x0000006c
335*5113495bSYour Name #define RX_REO_QUEUE_27_TOTAL_PROCESSED_BYTE_COUNT_LSB               0
336*5113495bSYour Name #define RX_REO_QUEUE_27_TOTAL_PROCESSED_BYTE_COUNT_MASK              0xffffffff
337*5113495bSYour Name 
338*5113495bSYour Name #define RX_REO_QUEUE_28_LATE_RECEIVE_MPDU_COUNT_OFFSET               0x00000070
339*5113495bSYour Name #define RX_REO_QUEUE_28_LATE_RECEIVE_MPDU_COUNT_LSB                  0
340*5113495bSYour Name #define RX_REO_QUEUE_28_LATE_RECEIVE_MPDU_COUNT_MASK                 0x00000fff
341*5113495bSYour Name 
342*5113495bSYour Name #define RX_REO_QUEUE_28_WINDOW_JUMP_2K_OFFSET                        0x00000070
343*5113495bSYour Name #define RX_REO_QUEUE_28_WINDOW_JUMP_2K_LSB                           12
344*5113495bSYour Name #define RX_REO_QUEUE_28_WINDOW_JUMP_2K_MASK                          0x0000f000
345*5113495bSYour Name 
346*5113495bSYour Name #define RX_REO_QUEUE_28_HOLE_COUNT_OFFSET                            0x00000070
347*5113495bSYour Name #define RX_REO_QUEUE_28_HOLE_COUNT_LSB                               16
348*5113495bSYour Name #define RX_REO_QUEUE_28_HOLE_COUNT_MASK                              0xffff0000
349*5113495bSYour Name 
350*5113495bSYour Name #define RX_REO_QUEUE_29_RESERVED_29_OFFSET                           0x00000074
351*5113495bSYour Name #define RX_REO_QUEUE_29_RESERVED_29_LSB                              0
352*5113495bSYour Name #define RX_REO_QUEUE_29_RESERVED_29_MASK                             0xffffffff
353*5113495bSYour Name 
354*5113495bSYour Name #define RX_REO_QUEUE_30_RESERVED_30_OFFSET                           0x00000078
355*5113495bSYour Name #define RX_REO_QUEUE_30_RESERVED_30_LSB                              0
356*5113495bSYour Name #define RX_REO_QUEUE_30_RESERVED_30_MASK                             0xffffffff
357*5113495bSYour Name 
358*5113495bSYour Name #define RX_REO_QUEUE_31_RESERVED_31_OFFSET                           0x0000007c
359*5113495bSYour Name #define RX_REO_QUEUE_31_RESERVED_31_LSB                              0
360*5113495bSYour Name #define RX_REO_QUEUE_31_RESERVED_31_MASK                             0xffffffff
361*5113495bSYour Name 
362*5113495bSYour Name #endif
363