xref: /wlan-driver/qca-wifi-host-cmn/wlan_cfg/wlan_cfg.c (revision 5113495b16420b49004c444715d2daae2066e7dc)
1*5113495bSYour Name /*
2*5113495bSYour Name  * Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
3*5113495bSYour Name  * Copyright (c) 2021-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 #include "wlan_ipa_ucfg_api.h"
21*5113495bSYour Name #include "wlan_ipa_main.h"
22*5113495bSYour Name #if defined(CONFIG_HL_SUPPORT)
23*5113495bSYour Name #include "wlan_tgt_def_config_hl.h"
24*5113495bSYour Name #else
25*5113495bSYour Name #include "wlan_tgt_def_config.h"
26*5113495bSYour Name #endif
27*5113495bSYour Name 
28*5113495bSYour Name #include "qdf_trace.h"
29*5113495bSYour Name #include "qdf_mem.h"
30*5113495bSYour Name #include <cdp_txrx_ops.h>
31*5113495bSYour Name #include "wlan_cfg.h"
32*5113495bSYour Name #include "cfg_ucfg_api.h"
33*5113495bSYour Name #include "hal_api.h"
34*5113495bSYour Name #include "dp_types.h"
35*5113495bSYour Name #include <qdf_module.h>
36*5113495bSYour Name 
37*5113495bSYour Name /*
38*5113495bSYour Name  * The max allowed size for tx comp ring is 8191.
39*5113495bSYour Name  * This is limited by h/w ring max size.
40*5113495bSYour Name  * As this is not a power of 2 it does not work with nss offload so the
41*5113495bSYour Name  * nearest available size which is power of 2 is 4096 chosen for nss
42*5113495bSYour Name  */
43*5113495bSYour Name 
44*5113495bSYour Name #define WLAN_CFG_TX_RING_MASK_0 BIT(0)
45*5113495bSYour Name #define WLAN_CFG_TX_RING_MASK_1 BIT(1)
46*5113495bSYour Name #define WLAN_CFG_TX_RING_MASK_2 BIT(2)
47*5113495bSYour Name #define WLAN_CFG_TX_RING_MASK_3 BIT(3)
48*5113495bSYour Name #define WLAN_CFG_TX_RING_MASK_4 BIT(4)
49*5113495bSYour Name #define WLAN_CFG_TX_RING_MASK_5 BIT(5)
50*5113495bSYour Name #define WLAN_CFG_TX_RING_MASK_6 BIT(6)
51*5113495bSYour Name #define WLAN_CFG_TX_RING_MASK_7 BIT(7)
52*5113495bSYour Name 
53*5113495bSYour Name 
54*5113495bSYour Name #define WLAN_CFG_RX_MON_RING_MASK_0 0x1
55*5113495bSYour Name #define WLAN_CFG_RX_MON_RING_MASK_1 0x2
56*5113495bSYour Name #define WLAN_CFG_RX_MON_RING_MASK_2 0x4
57*5113495bSYour Name #define WLAN_CFG_RX_MON_RING_MASK_3 0x0
58*5113495bSYour Name 
59*5113495bSYour Name #define WLAN_CFG_TX_MON_RING_MASK_0 BIT(0)
60*5113495bSYour Name #define WLAN_CFG_TX_MON_RING_MASK_1 BIT(1)
61*5113495bSYour Name 
62*5113495bSYour Name #define WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0 0x1
63*5113495bSYour Name #define WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1 0x2
64*5113495bSYour Name #define WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2 0x4
65*5113495bSYour Name 
66*5113495bSYour Name #define WLAN_CFG_HOST2TXMON_RING_MASK_0 0x1
67*5113495bSYour Name 
68*5113495bSYour Name #define WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0 0x1
69*5113495bSYour Name #define WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1 0x2
70*5113495bSYour Name #define WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2 0x4
71*5113495bSYour Name 
72*5113495bSYour Name #define WLAN_CFG_RX_ERR_RING_MASK_0 0x1
73*5113495bSYour Name #define WLAN_CFG_RX_ERR_RING_MASK_1 0x0
74*5113495bSYour Name #define WLAN_CFG_RX_ERR_RING_MASK_2 0x0
75*5113495bSYour Name #define WLAN_CFG_RX_ERR_RING_MASK_3 0x0
76*5113495bSYour Name 
77*5113495bSYour Name #define WLAN_CFG_RX_WBM_REL_RING_MASK_0 0x1
78*5113495bSYour Name #define WLAN_CFG_RX_WBM_REL_RING_MASK_1 0x0
79*5113495bSYour Name #define WLAN_CFG_RX_WBM_REL_RING_MASK_2 0x0
80*5113495bSYour Name #define WLAN_CFG_RX_WBM_REL_RING_MASK_3 0x0
81*5113495bSYour Name 
82*5113495bSYour Name #define WLAN_CFG_REO_STATUS_RING_MASK_0 0x1
83*5113495bSYour Name #define WLAN_CFG_REO_STATUS_RING_MASK_1 0x0
84*5113495bSYour Name #define WLAN_CFG_REO_STATUS_RING_MASK_2 0x0
85*5113495bSYour Name #define WLAN_CFG_REO_STATUS_RING_MASK_3 0x0
86*5113495bSYour Name 
87*5113495bSYour Name #define WLAN_CFG_RXDMA2HOST_RING_MASK_0 0x1
88*5113495bSYour Name #define WLAN_CFG_RXDMA2HOST_RING_MASK_1 0x2
89*5113495bSYour Name #define WLAN_CFG_RXDMA2HOST_RING_MASK_2 0x4
90*5113495bSYour Name #define WLAN_CFG_RXDMA2HOST_RING_MASK_3 0x0
91*5113495bSYour Name 
92*5113495bSYour Name #define WLAN_CFG_HOST2RXDMA_RING_MASK_0 0x1
93*5113495bSYour Name #define WLAN_CFG_HOST2RXDMA_RING_MASK_1 0x2
94*5113495bSYour Name #define WLAN_CFG_HOST2RXDMA_RING_MASK_2 0x4
95*5113495bSYour Name #define WLAN_CFG_HOST2RXDMA_RING_MASK_3 0x0
96*5113495bSYour Name 
97*5113495bSYour Name #define WLAN_CFG_UMAC_RESET_INTR_MASK_0 0x1
98*5113495bSYour Name 
99*5113495bSYour Name #define WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0 0x1
100*5113495bSYour Name #define WLAN_CFG_REO2PPE_RING_MASK_0 0x1
101*5113495bSYour Name #define WLAN_CFG_PPE2TCL_RING_MASK_0 0x1
102*5113495bSYour Name 
103*5113495bSYour Name struct dp_int_mask_assignment {
104*5113495bSYour Name 	uint8_t tx_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
105*5113495bSYour Name 	uint8_t rx_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
106*5113495bSYour Name 	uint8_t rx_mon_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
107*5113495bSYour Name 	uint8_t host2rxdma_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
108*5113495bSYour Name 	uint8_t rxdma2host_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
109*5113495bSYour Name 	uint8_t host2rxdma_mon_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
110*5113495bSYour Name 	uint8_t rxdma2host_mon_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
111*5113495bSYour Name 	uint8_t rx_err_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
112*5113495bSYour Name 	uint8_t rx_wbm_rel_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
113*5113495bSYour Name 	uint8_t reo_status_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
114*5113495bSYour Name 	uint8_t rx_ring_near_full_irq_1_mask[WLAN_CFG_INT_NUM_CONTEXTS];
115*5113495bSYour Name 	uint8_t rx_ring_near_full_irq_2_mask[WLAN_CFG_INT_NUM_CONTEXTS];
116*5113495bSYour Name 	uint8_t tx_ring_near_full_irq_mask[WLAN_CFG_INT_NUM_CONTEXTS];
117*5113495bSYour Name 	uint8_t host2txmon_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
118*5113495bSYour Name 	uint8_t tx_mon_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
119*5113495bSYour Name 	uint8_t ppeds_wbm_release_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
120*5113495bSYour Name 	uint8_t reo2ppe_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
121*5113495bSYour Name 	uint8_t ppe2tcl_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS];
122*5113495bSYour Name 	uint8_t umac_reset_intr_mask[WLAN_CFG_INT_NUM_CONTEXTS];
123*5113495bSYour Name };
124*5113495bSYour Name 
125*5113495bSYour Name #if defined(WLAN_MAX_PDEVS) && (WLAN_MAX_PDEVS == 1)
126*5113495bSYour Name /*
127*5113495bSYour Name  * For BE, there are 18 available MSI interrupts, assigned in the manner
128*5113495bSYour Name  * below.
129*5113495bSYour Name  * TX(5) + RX(8) + (REO ERR + WBM ERR)(1) +
130*5113495bSYour Name  * (REO status + RXDMA[0] + RXDMA[1])(1) + NEAR_Full_RX(2) +  NEAR_Full_TX(1)
131*5113495bSYour Name  * For IPA_OFFLOAD enabled case, 2 TX/RX rings would be assigned to IPA.
132*5113495bSYour Name  */
133*5113495bSYour Name 
134*5113495bSYour Name #ifdef CONFIG_BERYLLIUM
135*5113495bSYour Name #ifdef IPA_OFFLOAD
136*5113495bSYour Name /*
137*5113495bSYour Name  * NEAR-FULL IRQ mask should be updated, if any change is made to
138*5113495bSYour Name  * the below TX mask.
139*5113495bSYour Name  */
140*5113495bSYour Name static const uint8_t tx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
141*5113495bSYour Name 	[0] = WLAN_CFG_TX_RING_MASK_0, [1] = WLAN_CFG_TX_RING_MASK_4,
142*5113495bSYour Name 	[2] = WLAN_CFG_TX_RING_MASK_2};
143*5113495bSYour Name #else /* !IPA_OFFLOAD */
144*5113495bSYour Name #ifdef QCA_WIFI_KIWI_V2
145*5113495bSYour Name static const uint8_t tx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
146*5113495bSYour Name 	[0] = WLAN_CFG_TX_RING_MASK_0, [1] = WLAN_CFG_TX_RING_MASK_4,
147*5113495bSYour Name 	[2] = WLAN_CFG_TX_RING_MASK_2, [3] = WLAN_CFG_TX_RING_MASK_5,
148*5113495bSYour Name 	[4] = WLAN_CFG_TX_RING_MASK_6};
149*5113495bSYour Name #else /* !QCA_WIFI_KIWI_V2 */
150*5113495bSYour Name static const uint8_t tx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
151*5113495bSYour Name 	[0] = WLAN_CFG_TX_RING_MASK_0, [1] = WLAN_CFG_TX_RING_MASK_4,
152*5113495bSYour Name 	[2] = WLAN_CFG_TX_RING_MASK_2, [3] = WLAN_CFG_TX_RING_MASK_6,
153*5113495bSYour Name 	[4] = WLAN_CFG_TX_RING_MASK_7};
154*5113495bSYour Name #endif /* QCA_WIFI_KIWI_V2 */
155*5113495bSYour Name #endif /* IPA_OFFLOAD */
156*5113495bSYour Name 
157*5113495bSYour Name static inline const
wlan_cfg_get_tx_ring_int_mask(struct wlan_cfg_dp_soc_ctxt * cfg_ctx)158*5113495bSYour Name uint8_t *wlan_cfg_get_tx_ring_int_mask(struct wlan_cfg_dp_soc_ctxt *cfg_ctx)
159*5113495bSYour Name {
160*5113495bSYour Name 	return &tx_ring_mask_msi[0];
161*5113495bSYour Name }
162*5113495bSYour Name #else
163*5113495bSYour Name static const uint8_t tx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
164*5113495bSYour Name 	[0] = WLAN_CFG_TX_RING_MASK_0};
165*5113495bSYour Name 
166*5113495bSYour Name #ifdef TX_MULTI_TCL
167*5113495bSYour Name static const uint8_t multi_tx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
168*5113495bSYour Name 	[0] = WLAN_CFG_TX_RING_MASK_0, [4] = WLAN_CFG_TX_RING_MASK_2};
169*5113495bSYour Name 
170*5113495bSYour Name #ifdef IPA_OFFLOAD
171*5113495bSYour Name static inline const
wlan_cfg_get_tx_ring_int_mask(struct wlan_cfg_dp_soc_ctxt * cfg_ctx)172*5113495bSYour Name uint8_t *wlan_cfg_get_tx_ring_int_mask(struct wlan_cfg_dp_soc_ctxt *cfg_ctx)
173*5113495bSYour Name {
174*5113495bSYour Name 	if (cfg_ctx->ipa_enabled)
175*5113495bSYour Name 		return &tx_ring_mask_msi[0];
176*5113495bSYour Name 
177*5113495bSYour Name 	return &multi_tx_ring_mask_msi[0];
178*5113495bSYour Name }
179*5113495bSYour Name #else
180*5113495bSYour Name static inline const
wlan_cfg_get_tx_ring_int_mask(struct wlan_cfg_dp_soc_ctxt * cfg_ctx)181*5113495bSYour Name uint8_t *wlan_cfg_get_tx_ring_int_mask(struct wlan_cfg_dp_soc_ctxt *cfg_ctx)
182*5113495bSYour Name {
183*5113495bSYour Name 	return &multi_tx_ring_mask_msi[0];
184*5113495bSYour Name }
185*5113495bSYour Name #endif /* IPA_OFFLOAD */
186*5113495bSYour Name #else
187*5113495bSYour Name static inline const
wlan_cfg_get_tx_ring_int_mask(struct wlan_cfg_dp_soc_ctxt * cfg_ctx)188*5113495bSYour Name uint8_t *wlan_cfg_get_tx_ring_int_mask(struct wlan_cfg_dp_soc_ctxt *cfg_ctx)
189*5113495bSYour Name {
190*5113495bSYour Name 	return &tx_ring_mask_msi[0];
191*5113495bSYour Name }
192*5113495bSYour Name #endif /* TX_MULTI_TCL */
193*5113495bSYour Name #endif /* CONFIG_BERYLLIUM */
194*5113495bSYour Name 
195*5113495bSYour Name #ifdef CONFIG_BERYLLIUM
196*5113495bSYour Name #ifdef IPA_OFFLOAD
197*5113495bSYour Name static const uint8_t rx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
198*5113495bSYour Name 	[5] = WLAN_CFG_RX_RING_MASK_0, [6] = WLAN_CFG_RX_RING_MASK_1,
199*5113495bSYour Name 	[7] = WLAN_CFG_RX_RING_MASK_2, [9] = WLAN_CFG_RX_RING_MASK_4,
200*5113495bSYour Name 	[10] = WLAN_CFG_RX_RING_MASK_5, [11] = WLAN_CFG_RX_RING_MASK_6};
201*5113495bSYour Name #else
202*5113495bSYour Name static const uint8_t rx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
203*5113495bSYour Name 	[5] = WLAN_CFG_RX_RING_MASK_0, [6] = WLAN_CFG_RX_RING_MASK_1,
204*5113495bSYour Name 	[7] = WLAN_CFG_RX_RING_MASK_2, [8] = WLAN_CFG_RX_RING_MASK_3,
205*5113495bSYour Name 	[9] = WLAN_CFG_RX_RING_MASK_4, [10] = WLAN_CFG_RX_RING_MASK_5,
206*5113495bSYour Name 	[11] = WLAN_CFG_RX_RING_MASK_6, [12] = WLAN_CFG_RX_RING_MASK_7};
207*5113495bSYour Name #endif /* IPA_OFFLOAD */
208*5113495bSYour Name #else /* !defined(CONFIG_BERYLLIUM) */
209*5113495bSYour Name #ifdef IPA_OFFLOAD
210*5113495bSYour Name static const uint8_t rx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
211*5113495bSYour Name 	[1] = WLAN_CFG_RX_RING_MASK_0, [2] = WLAN_CFG_RX_RING_MASK_1,
212*5113495bSYour Name 	[3] = WLAN_CFG_RX_RING_MASK_2};
213*5113495bSYour Name #else
214*5113495bSYour Name static const uint8_t rx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
215*5113495bSYour Name 	[1] = WLAN_CFG_RX_RING_MASK_0, [2] = WLAN_CFG_RX_RING_MASK_1,
216*5113495bSYour Name 	[3] = WLAN_CFG_RX_RING_MASK_2 | WLAN_CFG_RX_RING_MASK_3};
217*5113495bSYour Name #endif
218*5113495bSYour Name #endif /* CONFIG_BERYLLIUM */
219*5113495bSYour Name 
220*5113495bSYour Name #ifdef CONFIG_BERYLLIUM
221*5113495bSYour Name static const  uint8_t rxdma2host_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
222*5113495bSYour Name 	[13] = WLAN_CFG_RXDMA2HOST_RING_MASK_0};
223*5113495bSYour Name #else
224*5113495bSYour Name static const  uint8_t rxdma2host_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
225*5113495bSYour Name 	[6] = WLAN_CFG_RXDMA2HOST_RING_MASK_0 |
226*5113495bSYour Name 	      WLAN_CFG_RXDMA2HOST_RING_MASK_1};
227*5113495bSYour Name #endif /* CONFIG_BERYLLIUM */
228*5113495bSYour Name 
229*5113495bSYour Name #ifdef CONFIG_BERYLLIUM
230*5113495bSYour Name #ifdef WLAN_FEATURE_LOCAL_PKT_CAPTURE
231*5113495bSYour Name static const  uint8_t rx_mon_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
232*5113495bSYour Name 	[14] = WLAN_CFG_RX_MON_RING_MASK_0 | WLAN_CFG_RX_MON_RING_MASK_1};
233*5113495bSYour Name #else
234*5113495bSYour Name static const  uint8_t rx_mon_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
235*5113495bSYour Name 	[5] = WLAN_CFG_RX_MON_RING_MASK_0};
236*5113495bSYour Name #endif
237*5113495bSYour Name #else
238*5113495bSYour Name static const  uint8_t rx_mon_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
239*5113495bSYour Name 	[1] = WLAN_CFG_RX_MON_RING_MASK_0, [2] = WLAN_CFG_RX_MON_RING_MASK_1};
240*5113495bSYour Name #endif
241*5113495bSYour Name 
242*5113495bSYour Name static const  uint8_t host2rxdma_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {0};
243*5113495bSYour Name 
244*5113495bSYour Name static const  uint8_t host2rxdma_mon_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {0};
245*5113495bSYour Name 
246*5113495bSYour Name static const  uint8_t rxdma2host_mon_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {0};
247*5113495bSYour Name 
248*5113495bSYour Name #ifdef CONFIG_BERYLLIUM
249*5113495bSYour Name static const  uint8_t rx_err_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
250*5113495bSYour Name 	[14] = WLAN_CFG_RX_ERR_RING_MASK_0};
251*5113495bSYour Name 
252*5113495bSYour Name static const  uint8_t rx_wbm_rel_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
253*5113495bSYour Name 	[14] = WLAN_CFG_RX_WBM_REL_RING_MASK_0};
254*5113495bSYour Name 
255*5113495bSYour Name static const  uint8_t reo_status_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
256*5113495bSYour Name 	[13] = WLAN_CFG_REO_STATUS_RING_MASK_0};
257*5113495bSYour Name #else
258*5113495bSYour Name static const  uint8_t rx_err_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
259*5113495bSYour Name 	[6] = WLAN_CFG_RX_ERR_RING_MASK_0};
260*5113495bSYour Name static const  uint8_t rx_wbm_rel_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
261*5113495bSYour Name 	[6] = WLAN_CFG_RX_WBM_REL_RING_MASK_0};
262*5113495bSYour Name static const  uint8_t reo_status_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
263*5113495bSYour Name 	[6] = WLAN_CFG_REO_STATUS_RING_MASK_0};
264*5113495bSYour Name #endif
265*5113495bSYour Name 
266*5113495bSYour Name #ifdef CONFIG_BERYLLIUM
267*5113495bSYour Name #ifdef WLAN_FEATURE_NEAR_FULL_IRQ
268*5113495bSYour Name static const uint8_t rx_ring_near_full_irq_1_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
269*5113495bSYour Name 	[15] = WLAN_CFG_RX_NEAR_FULL_IRQ_MASK_1};
270*5113495bSYour Name static const uint8_t rx_ring_near_full_irq_2_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
271*5113495bSYour Name 	[16] = WLAN_CFG_RX_NEAR_FULL_IRQ_MASK_1};
272*5113495bSYour Name static const uint8_t tx_ring_near_full_irq_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
273*5113495bSYour Name 	[17] = WLAN_CFG_TX_RING_NEAR_FULL_IRQ_MASK};
274*5113495bSYour Name #else
275*5113495bSYour Name static const uint8_t rx_ring_near_full_irq_1_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
276*5113495bSYour Name 	0 };
277*5113495bSYour Name static const uint8_t rx_ring_near_full_irq_2_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
278*5113495bSYour Name 	0 };
279*5113495bSYour Name static const uint8_t tx_ring_near_full_irq_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
280*5113495bSYour Name 	0 };
281*5113495bSYour Name #endif
282*5113495bSYour Name #else
283*5113495bSYour Name static const uint8_t rx_ring_near_full_irq_1_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
284*5113495bSYour Name 	0 };
285*5113495bSYour Name static const uint8_t rx_ring_near_full_irq_2_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
286*5113495bSYour Name 	0 };
287*5113495bSYour Name static const uint8_t tx_ring_near_full_irq_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
288*5113495bSYour Name 	0 };
289*5113495bSYour Name #endif
290*5113495bSYour Name 
291*5113495bSYour Name #ifdef CONFIG_BERYLLIUM
292*5113495bSYour Name #ifdef WLAN_FEATURE_LOCAL_PKT_CAPTURE
293*5113495bSYour Name static const  uint8_t tx_mon_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
294*5113495bSYour Name 	[13] = WLAN_CFG_TX_MON_RING_MASK_0 | WLAN_CFG_TX_MON_RING_MASK_1};
295*5113495bSYour Name #else
296*5113495bSYour Name static const  uint8_t tx_mon_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {0};
297*5113495bSYour Name #endif /* WLAN_FEATURE_LOCAL_PKT_CAPTURE */
298*5113495bSYour Name #else
299*5113495bSYour Name static const  uint8_t tx_mon_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {0};
300*5113495bSYour Name #endif
301*5113495bSYour Name 
302*5113495bSYour Name #else
303*5113495bSYour Name /* Integrated configuration + 16 possible MSI configurations */
304*5113495bSYour Name #define NUM_INTERRUPT_COMBINATIONS 17
305*5113495bSYour Name /*
306*5113495bSYour Name  * This structure contains the best possible mask assignment for a given
307*5113495bSYour Name  * number of MSIs available in the system.
308*5113495bSYour Name  */
309*5113495bSYour Name #ifdef IPA_OFFLOAD
310*5113495bSYour Name static struct dp_int_mask_assignment dp_mask_assignment[NUM_INTERRUPT_COMBINATIONS] = {
311*5113495bSYour Name 	/* Interrupt assignment for integrated configuration */
312*5113495bSYour Name 	{
313*5113495bSYour Name 		/* tx ring masks */
314*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
315*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
316*5113495bSYour Name 		/* rx ring masks */
317*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0,
318*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
319*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
320*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
321*5113495bSYour Name 		  0},
322*5113495bSYour Name 		/* rx mon ring masks */
323*5113495bSYour Name 		{ 0, 0, 0, 0,
324*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
325*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
326*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
327*5113495bSYour Name 		  0, 0, 0, 0},
328*5113495bSYour Name 		/* host2rxdma ring masks */
329*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
330*5113495bSYour Name 		/* rxdma2host ring masks */
331*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_RING_MASK_0,
332*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
333*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
334*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
335*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
336*5113495bSYour Name 		/* host2rxdma mon ring masks */
337*5113495bSYour Name 		{ 0, 0, 0, 0,
338*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
339*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
340*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
341*5113495bSYour Name 		  0, 0, 0, 0},
342*5113495bSYour Name 		/* rxdma2host mon ring masks */
343*5113495bSYour Name 		{ 0, 0,	0, 0,
344*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
345*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
346*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
347*5113495bSYour Name 		  0, 0, 0, 0},
348*5113495bSYour Name 		/* rx err ring masks */
349*5113495bSYour Name 		{ WLAN_CFG_RX_ERR_RING_MASK_0,
350*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
351*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
352*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
353*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
354*5113495bSYour Name 		/* rx wbm rel ring masks */
355*5113495bSYour Name 		{ WLAN_CFG_RX_WBM_REL_RING_MASK_0,
356*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
357*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
358*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
359*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
360*5113495bSYour Name 		/* reo status ring masks */
361*5113495bSYour Name 		{ WLAN_CFG_REO_STATUS_RING_MASK_0,
362*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
363*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
364*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
365*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
366*5113495bSYour Name 	},
367*5113495bSYour Name 	/* Interrupt assignment for 1 MSI combination */
368*5113495bSYour Name 	{
369*5113495bSYour Name 		/* tx ring masks */
370*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
371*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
372*5113495bSYour Name 		/* rx ring masks */
373*5113495bSYour Name 		{ WLAN_CFG_RX_RING_MASK_0 |
374*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_1 |
375*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_2,
376*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
377*5113495bSYour Name 		/* rx mon ring masks */
378*5113495bSYour Name 		{ WLAN_CFG_RX_MON_RING_MASK_0 |
379*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_1 |
380*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_2,
381*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
382*5113495bSYour Name 		/* host2rxdma ring masks */
383*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
384*5113495bSYour Name 		/* rxdma2host ring masks */
385*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_RING_MASK_0 |
386*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_1 |
387*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_2 |
388*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
389*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
390*5113495bSYour Name 		/* host2rxdma mon ring masks */
391*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0 |
392*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1 |
393*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
394*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
395*5113495bSYour Name 		/* rxdma2host mon ring masks */
396*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0 |
397*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1 |
398*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
399*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
400*5113495bSYour Name 		/* rx err ring masks */
401*5113495bSYour Name 		{ WLAN_CFG_RX_ERR_RING_MASK_0 |
402*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_1 |
403*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_2 |
404*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_3,
405*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
406*5113495bSYour Name 		/* rx wbm rel ring masks */
407*5113495bSYour Name 		{ WLAN_CFG_RX_WBM_REL_RING_MASK_0 |
408*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_1 |
409*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_2 |
410*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_3,
411*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
412*5113495bSYour Name 		/* reo status ring masks */
413*5113495bSYour Name 		{ WLAN_CFG_REO_STATUS_RING_MASK_0 |
414*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_1 |
415*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_2 |
416*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_3,
417*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
418*5113495bSYour Name 	},
419*5113495bSYour Name 	/* Interrupt assignment for 2 MSI combination */
420*5113495bSYour Name 	{
421*5113495bSYour Name 		/* tx ring masks */
422*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
423*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
424*5113495bSYour Name 		/* rx ring masks */
425*5113495bSYour Name 		{ WLAN_CFG_RX_RING_MASK_0 |
426*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_1,
427*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
428*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
429*5113495bSYour Name 		/* rx mon ring masks */
430*5113495bSYour Name 		{ WLAN_CFG_RX_MON_RING_MASK_0 |
431*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_1,
432*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
433*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
434*5113495bSYour Name 		/* host2rxdma ring masks */
435*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
436*5113495bSYour Name 		/* rxdma2host ring masks */
437*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_RING_MASK_0 |
438*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_1,
439*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2 |
440*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_3,
441*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
442*5113495bSYour Name 		/* host2rxdma mon ring masks */
443*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0 |
444*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
445*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
446*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
447*5113495bSYour Name 		/* rxdma2host mon ring masks */
448*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0 |
449*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
450*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
451*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
452*5113495bSYour Name 		/* rx err ring masks */
453*5113495bSYour Name 		{ WLAN_CFG_RX_ERR_RING_MASK_0 |
454*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_1,
455*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2 |
456*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_3,
457*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
458*5113495bSYour Name 		/* rx wbm rel ring masks */
459*5113495bSYour Name 		{ WLAN_CFG_RX_WBM_REL_RING_MASK_0 |
460*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_1,
461*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2 |
462*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_3,
463*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
464*5113495bSYour Name 		/* reo status ring masks */
465*5113495bSYour Name 		{ WLAN_CFG_REO_STATUS_RING_MASK_0 |
466*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_1,
467*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2 |
468*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_3,
469*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
470*5113495bSYour Name 	},
471*5113495bSYour Name 	/* Interrupt assignment for 3 MSI combination */
472*5113495bSYour Name 	{
473*5113495bSYour Name 		/* tx ring masks */
474*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
475*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
476*5113495bSYour Name 		/* rx ring masks */
477*5113495bSYour Name 		{ WLAN_CFG_RX_RING_MASK_0,
478*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_1,
479*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
480*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
481*5113495bSYour Name 		/* rx mon ring masks */
482*5113495bSYour Name 		{ 0, 0,
483*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0 |
484*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_1 |
485*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_2,
486*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
487*5113495bSYour Name 		/* host2rxdma ring masks */
488*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
489*5113495bSYour Name 		/* rxdma2host ring masks */
490*5113495bSYour Name 		{ 0, 0,
491*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0 |
492*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_1 |
493*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_2 |
494*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_3,
495*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
496*5113495bSYour Name 		/* host2rxdma mon ring masks */
497*5113495bSYour Name 		{ 0, 0,
498*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0 |
499*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1 |
500*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
501*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
502*5113495bSYour Name 		/* rxdma2host mon ring masks */
503*5113495bSYour Name 		{ 0, 0,
504*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0 |
505*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1 |
506*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
507*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
508*5113495bSYour Name 		/* rx err ring masks */
509*5113495bSYour Name 		{ 0, 0,
510*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0 |
511*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_1 |
512*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_2 |
513*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_3,
514*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
515*5113495bSYour Name 		/* rx wbm rel ring masks */
516*5113495bSYour Name 		{ 0, 0,
517*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0 |
518*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_1 |
519*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_2 |
520*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_3,
521*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
522*5113495bSYour Name 		/* reo status ring masks */
523*5113495bSYour Name 		{ 0, 0,
524*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0 |
525*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_1 |
526*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_2 |
527*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_3,
528*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
529*5113495bSYour Name 	},
530*5113495bSYour Name 	/* Interrupt assignment for 4 MSI combination */
531*5113495bSYour Name 	{
532*5113495bSYour Name 		/* tx ring masks */
533*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
534*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
535*5113495bSYour Name 		/* rx ring masks */
536*5113495bSYour Name 		{ WLAN_CFG_RX_RING_MASK_0,
537*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
538*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
539*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
540*5113495bSYour Name 		/* rx mon ring masks */
541*5113495bSYour Name 		{ WLAN_CFG_RX_MON_RING_MASK_0,
542*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
543*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
544*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
545*5113495bSYour Name 		/* host2rxdma ring masks */
546*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
547*5113495bSYour Name 		/* rxdma2host ring masks */
548*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_RING_MASK_0,
549*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
550*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
551*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
552*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
553*5113495bSYour Name 		/* host2rxdma mon ring masks */
554*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
555*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
556*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
557*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
558*5113495bSYour Name 		/* rxdma2host mon ring masks */
559*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
560*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
561*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
562*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
563*5113495bSYour Name 		/* rx err ring masks */
564*5113495bSYour Name 		{ WLAN_CFG_RX_ERR_RING_MASK_0,
565*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
566*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
567*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
568*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
569*5113495bSYour Name 		/* rx wbm rel ring masks */
570*5113495bSYour Name 		{ WLAN_CFG_RX_WBM_REL_RING_MASK_0,
571*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
572*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
573*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
574*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
575*5113495bSYour Name 		/* reo status ring masks */
576*5113495bSYour Name 		{ WLAN_CFG_REO_STATUS_RING_MASK_0,
577*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
578*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
579*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
580*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
581*5113495bSYour Name 	},
582*5113495bSYour Name 	/* Interrupt assignment for 5 MSI combination */
583*5113495bSYour Name 	{
584*5113495bSYour Name 		/* tx ring masks */
585*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
586*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
587*5113495bSYour Name 		/* rx ring masks */
588*5113495bSYour Name 		{ WLAN_CFG_RX_RING_MASK_0,
589*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
590*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
591*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
592*5113495bSYour Name 		/* rx mon ring masks */
593*5113495bSYour Name 		{ 0, 0, 0, 0,
594*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0 |
595*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_1 |
596*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_2,
597*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
598*5113495bSYour Name 		/* host2rxdma ring masks */
599*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
600*5113495bSYour Name 		/* rxdma2host ring masks */
601*5113495bSYour Name 		{ 0, 0, 0, 0,
602*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0 |
603*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_1 |
604*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_2 |
605*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_3,
606*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
607*5113495bSYour Name 		/* host2rxdma mon ring masks */
608*5113495bSYour Name 		{ 0, 0, 0, 0,
609*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0 |
610*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1 |
611*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
612*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
613*5113495bSYour Name 		/* rxdma2host mon ring masks */
614*5113495bSYour Name 		{ 0, 0, 0, 0,
615*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0 |
616*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1 |
617*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
618*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
619*5113495bSYour Name 		/* rx err ring masks */
620*5113495bSYour Name 		{ 0, 0, 0, 0,
621*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0 |
622*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_1 |
623*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_2 |
624*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_3,
625*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
626*5113495bSYour Name 		/* rx wbm rel ring masks */
627*5113495bSYour Name 		{ 0, 0, 0, 0,
628*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0 |
629*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_1 |
630*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_2 |
631*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_3,
632*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
633*5113495bSYour Name 		/* reo status ring masks */
634*5113495bSYour Name 		{ 0, 0, 0, 0,
635*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0 |
636*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_1 |
637*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_2 |
638*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_3,
639*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
640*5113495bSYour Name 	},
641*5113495bSYour Name 	/* Interrupt assignment for 6 MSI combination */
642*5113495bSYour Name 	{
643*5113495bSYour Name 		/* tx ring masks */
644*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
645*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
646*5113495bSYour Name 		/* rx ring masks */
647*5113495bSYour Name 		{ 0, 0,
648*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
649*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
650*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
651*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
652*5113495bSYour Name 		/* rx mon ring masks */
653*5113495bSYour Name 		{ WLAN_CFG_RX_MON_RING_MASK_0,
654*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
655*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
656*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
657*5113495bSYour Name 		/* host2rxdma ring masks */
658*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
659*5113495bSYour Name 		/* rxdma2host ring masks */
660*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_RING_MASK_0,
661*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
662*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
663*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
664*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
665*5113495bSYour Name 		/* host2rxdma mon ring masks */
666*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
667*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
668*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
669*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
670*5113495bSYour Name 		/* rxdma2host mon ring masks */
671*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
672*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
673*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
674*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
675*5113495bSYour Name 		/* rx err ring masks */
676*5113495bSYour Name 		{ WLAN_CFG_RX_ERR_RING_MASK_0,
677*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
678*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
679*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
680*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
681*5113495bSYour Name 		/* rx wbm rel ring masks */
682*5113495bSYour Name 		{ WLAN_CFG_RX_WBM_REL_RING_MASK_0,
683*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
684*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
685*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
686*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
687*5113495bSYour Name 		/* reo status ring masks */
688*5113495bSYour Name 		{ WLAN_CFG_REO_STATUS_RING_MASK_0,
689*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
690*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
691*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
692*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
693*5113495bSYour Name 	},
694*5113495bSYour Name 	/* Interrupt assignment for 7 MSI combination */
695*5113495bSYour Name 	{
696*5113495bSYour Name 		/* tx ring masks */
697*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
698*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
699*5113495bSYour Name 		/* rx ring masks */
700*5113495bSYour Name 		{ 0, 0, 0,
701*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
702*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
703*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
704*5113495bSYour Name 		  0, 0, 0, 0},
705*5113495bSYour Name 		/* rx mon ring masks */
706*5113495bSYour Name 		{ 0, 0, 0,
707*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
708*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
709*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
710*5113495bSYour Name 		  0, 0, 0, 0, 0},
711*5113495bSYour Name 		/* host2rxdma ring masks */
712*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
713*5113495bSYour Name 		/* rxdma2host ring masks */
714*5113495bSYour Name 		{ 0, 0, 0,
715*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
716*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
717*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
718*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
719*5113495bSYour Name 		  0, 0, 0, 0},
720*5113495bSYour Name 		/* host2rxdma mon ring masks */
721*5113495bSYour Name 		{ 0, 0, 0,
722*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
723*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
724*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
725*5113495bSYour Name 		  0, 0, 0, 0, 0},
726*5113495bSYour Name 		/* rxdma2host mon ring masks */
727*5113495bSYour Name 		{ 0, 0,	0,
728*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
729*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
730*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
731*5113495bSYour Name 		  0, 0, 0, 0, 0},
732*5113495bSYour Name 		/* rx err ring masks */
733*5113495bSYour Name 		{ 0, 0, 0,
734*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
735*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
736*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
737*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
738*5113495bSYour Name 		  0, 0, 0, 0},
739*5113495bSYour Name 		/* rx wbm rel ring masks */
740*5113495bSYour Name 		{ 0, 0, 0,
741*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
742*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
743*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
744*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
745*5113495bSYour Name 		  0, 0, 0, 0},
746*5113495bSYour Name 		/* reo status ring masks */
747*5113495bSYour Name 		{ 0, 0, 0,
748*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
749*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
750*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
751*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
752*5113495bSYour Name 		  0, 0, 0, 0},
753*5113495bSYour Name 	},
754*5113495bSYour Name 	/* Interrupt assignment for 8 MSI combination */
755*5113495bSYour Name 	{
756*5113495bSYour Name 		/* tx ring masks */
757*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
758*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
759*5113495bSYour Name 		/* rx ring masks */
760*5113495bSYour Name 		{ 0, 0, 0, 0,
761*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
762*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
763*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
764*5113495bSYour Name 		  0, 0, 0, 0},
765*5113495bSYour Name 		/* rx mon ring masks */
766*5113495bSYour Name 		{ 0, 0, 0,
767*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
768*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
769*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
770*5113495bSYour Name 		  0, 0, 0, 0, 0},
771*5113495bSYour Name 		/* host2rxdma ring masks */
772*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
773*5113495bSYour Name 		/* rxdma2host ring masks */
774*5113495bSYour Name 		{ 0, 0, 0,
775*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
776*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
777*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
778*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
779*5113495bSYour Name 		  0, 0, 0, 0},
780*5113495bSYour Name 		/* host2rxdma mon ring masks */
781*5113495bSYour Name 		{ 0, 0, 0,
782*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
783*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
784*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
785*5113495bSYour Name 		  0, 0, 0, 0, 0},
786*5113495bSYour Name 		/* rxdma2host mon ring masks */
787*5113495bSYour Name 		{ 0, 0, 0,
788*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
789*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
790*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
791*5113495bSYour Name 		  0, 0, 0, 0, 0},
792*5113495bSYour Name 		/* rx err ring masks */
793*5113495bSYour Name 		{ 0, 0, 0,
794*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
795*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
796*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
797*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
798*5113495bSYour Name 		  0, 0, 0, 0},
799*5113495bSYour Name 		/* rx wbm rel ring masks */
800*5113495bSYour Name 		{ 0, 0, 0,
801*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
802*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
803*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
804*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
805*5113495bSYour Name 		  0, 0, 0, 0},
806*5113495bSYour Name 		/* reo status ring masks */
807*5113495bSYour Name 		{ 0, 0, 0,
808*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
809*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
810*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
811*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
812*5113495bSYour Name 		  0, 0, 0, 0},
813*5113495bSYour Name 		/* ppe2tcl ring masks */
814*5113495bSYour Name 		{ 0, 0, 0,
815*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
816*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
817*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
818*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
819*5113495bSYour Name 		  0, 0, 0, 0},
820*5113495bSYour Name 		/* reo2ppe ring masks */
821*5113495bSYour Name 		{ 0, 0, 0,
822*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
823*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
824*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
825*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
826*5113495bSYour Name 		  0, 0, 0, 0},
827*5113495bSYour Name 	},
828*5113495bSYour Name 	/* Interrupt assignment for 9 MSI combination */
829*5113495bSYour Name 	{
830*5113495bSYour Name 		/* tx ring masks */
831*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
832*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
833*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
834*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
835*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
836*5113495bSYour Name 		/* rx ring masks */
837*5113495bSYour Name 		{ 0, 0, 0, 0,
838*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
839*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
840*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
841*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
842*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
843*5113495bSYour Name 		/* rx mon ring masks */
844*5113495bSYour Name 		{ 0, 0, 0,
845*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
846*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
847*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
848*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
849*5113495bSYour Name 		/* host2rxdma ring masks */
850*5113495bSYour Name 		{ 0, 0, 0,
851*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
852*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
853*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
854*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
855*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
856*5113495bSYour Name 		/* rxdma2host ring masks */
857*5113495bSYour Name 		{ 0, 0, 0,
858*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
859*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
860*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
861*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
862*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
863*5113495bSYour Name 		/* host2rxdma mon ring masks */
864*5113495bSYour Name 		{ 0, 0, 0,
865*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
866*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
867*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
868*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
869*5113495bSYour Name 		/* rxdma2host mon ring masks */
870*5113495bSYour Name 		{ 0, 0, 0,
871*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
872*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
873*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
874*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
875*5113495bSYour Name 		/* rx err ring masks */
876*5113495bSYour Name 		{ 0, 0, 0,
877*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
878*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
879*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
880*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
881*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
882*5113495bSYour Name 		/* rx wbm rel ring masks */
883*5113495bSYour Name 		{ 0, 0, 0,
884*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
885*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
886*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
887*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
888*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
889*5113495bSYour Name 		/* reo status ring masks */
890*5113495bSYour Name 		{ 0, 0, 0,
891*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
892*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
893*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
894*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
895*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
896*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
897*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
898*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
899*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
900*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
901*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
902*5113495bSYour Name 		/* host2txmon ring masks */
903*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
904*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
905*5113495bSYour Name 		/* tx mon ring masks */
906*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
907*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
908*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
909*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
910*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
911*5113495bSYour Name 		/* Reo2ppe ring mask */
912*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
913*5113495bSYour Name 		/* ppe2tcl ring mask */
914*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
915*5113495bSYour Name 		/* umac reset mask */
916*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
917*5113495bSYour Name 		 WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0, 0, 0, 0, 0},
918*5113495bSYour Name 	},
919*5113495bSYour Name 	/* Interrupt assignment for 10 MSI combination */
920*5113495bSYour Name 	{
921*5113495bSYour Name 		/* tx ring masks */
922*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
923*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
924*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
925*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
926*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
927*5113495bSYour Name 		/* rx ring masks */
928*5113495bSYour Name 		{ 0, 0, 0, 0,
929*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
930*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
931*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
932*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
933*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
934*5113495bSYour Name 		/* rx mon ring masks */
935*5113495bSYour Name 		{ 0, 0, 0,
936*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
937*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
938*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
939*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
940*5113495bSYour Name 		/* host2rxdma ring masks */
941*5113495bSYour Name 		{ 0, 0, 0,
942*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
943*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
944*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
945*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
946*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
947*5113495bSYour Name 		/* rxdma2host ring masks */
948*5113495bSYour Name 		{ 0, 0, 0,
949*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
950*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
951*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
952*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
953*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
954*5113495bSYour Name 		/* host2rxdma mon ring masks */
955*5113495bSYour Name 		{ 0, 0, 0,
956*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
957*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
958*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
959*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
960*5113495bSYour Name 		/* rxdma2host mon ring masks */
961*5113495bSYour Name 		{ 0, 0, 0,
962*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
963*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
964*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
965*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
966*5113495bSYour Name 		/* rx err ring masks */
967*5113495bSYour Name 		{ 0, 0, 0,
968*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
969*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
970*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
971*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
972*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
973*5113495bSYour Name 		/* rx wbm rel ring masks */
974*5113495bSYour Name 		{ 0, 0, 0,
975*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
976*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
977*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
978*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
979*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
980*5113495bSYour Name 		/* reo status ring masks */
981*5113495bSYour Name 		{ 0, 0, 0,
982*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
983*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
984*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
985*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
986*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
987*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
988*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
989*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
990*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
991*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
992*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
993*5113495bSYour Name 		/* host2txmon ring masks */
994*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
995*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
996*5113495bSYour Name 		/* tx mon ring masks */
997*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
998*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
999*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1000*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1001*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1002*5113495bSYour Name 		/* Reo2ppe ring mask */
1003*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
1004*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0},
1005*5113495bSYour Name 		/* ppe2tcl ring mask */
1006*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1007*5113495bSYour Name 		/* umac reset mask */
1008*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
1009*5113495bSYour Name 		 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0, 0, 0, 0},
1010*5113495bSYour Name 	},
1011*5113495bSYour Name 	/* Interrupt assignment for 11 MSI combination */
1012*5113495bSYour Name 	{
1013*5113495bSYour Name 		/* tx ring masks */
1014*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
1015*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
1016*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
1017*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
1018*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1019*5113495bSYour Name 		/* rx ring masks */
1020*5113495bSYour Name 		{ 0, 0, 0, 0,
1021*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
1022*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
1023*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
1024*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
1025*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
1026*5113495bSYour Name 		/* rx mon ring masks */
1027*5113495bSYour Name 		{ 0, 0, 0,
1028*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
1029*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
1030*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
1031*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1032*5113495bSYour Name 		/* host2rxdma ring masks */
1033*5113495bSYour Name 		{ 0, 0, 0,
1034*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
1035*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
1036*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
1037*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
1038*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
1039*5113495bSYour Name 		/* rxdma2host ring masks */
1040*5113495bSYour Name 		{ 0, 0, 0,
1041*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
1042*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
1043*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
1044*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
1045*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
1046*5113495bSYour Name 		/* host2rxdma mon ring masks */
1047*5113495bSYour Name 		{ 0, 0, 0,
1048*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
1049*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
1050*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1051*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1052*5113495bSYour Name 		/* rxdma2host mon ring masks */
1053*5113495bSYour Name 		{ 0, 0, 0,
1054*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
1055*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
1056*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1057*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1058*5113495bSYour Name 		/* rx err ring masks */
1059*5113495bSYour Name 		{ 0, 0, 0,
1060*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
1061*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
1062*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
1063*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
1064*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
1065*5113495bSYour Name 		/* rx wbm rel ring masks */
1066*5113495bSYour Name 		{ 0, 0, 0,
1067*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
1068*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
1069*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
1070*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
1071*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
1072*5113495bSYour Name 		/* reo status ring masks */
1073*5113495bSYour Name 		{ 0, 0, 0,
1074*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
1075*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
1076*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
1077*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
1078*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
1079*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1080*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1081*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1082*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1083*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1084*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1085*5113495bSYour Name 		/* host2txmon ring masks */
1086*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
1087*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1088*5113495bSYour Name 		/* tx mon ring masks */
1089*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
1090*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
1091*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1092*5113495bSYour Name 		/* ppe wbm ds release ring ring mask */
1093*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1094*5113495bSYour Name 		/* Reo2ppe ring mask */
1095*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1096*5113495bSYour Name 		/* ppe2tcl ring mask */
1097*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1098*5113495bSYour Name 		/* umac reset mask */
1099*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
1100*5113495bSYour Name 		 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0, 0, 0},
1101*5113495bSYour Name 	},
1102*5113495bSYour Name 	/* Interrupt assignment for 12 MSI combination */
1103*5113495bSYour Name 	{
1104*5113495bSYour Name 		/* tx ring masks */
1105*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
1106*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
1107*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
1108*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
1109*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1110*5113495bSYour Name 		/* rx ring masks */
1111*5113495bSYour Name 		{ 0, 0, 0, 0,
1112*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
1113*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
1114*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
1115*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
1116*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
1117*5113495bSYour Name 		/* rx mon ring masks */
1118*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1119*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
1120*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
1121*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
1122*5113495bSYour Name 		  0, 0, 0, 0, 0},
1123*5113495bSYour Name 		/* host2rxdma ring masks */
1124*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1125*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
1126*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
1127*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
1128*5113495bSYour Name 		  0, 0, 0, 0, 0},
1129*5113495bSYour Name 		/* rxdma2host ring masks */
1130*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1131*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
1132*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
1133*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
1134*5113495bSYour Name 		  0, 0, 0, 0, 0},
1135*5113495bSYour Name 		/* host2rxdma mon ring masks */
1136*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1137*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
1138*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
1139*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1140*5113495bSYour Name 		  0, 0, 0, 0, 0},
1141*5113495bSYour Name 		/* rxdma2host mon ring masks */
1142*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1143*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
1144*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
1145*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1146*5113495bSYour Name 		  0, 0, 0, 0, 0},
1147*5113495bSYour Name 		/* rx err ring masks */
1148*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1149*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
1150*5113495bSYour Name 		  0, 0, 0, 0},
1151*5113495bSYour Name 		/* rx wbm rel ring masks */
1152*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1153*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
1154*5113495bSYour Name 		  0, 0, 0, 0},
1155*5113495bSYour Name 		/* reo status ring masks */
1156*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1157*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
1158*5113495bSYour Name 		  0, 0, 0, 0},
1159*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1160*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1161*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1162*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1163*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1164*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1165*5113495bSYour Name 		/* host2txmon ring masks */
1166*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1167*5113495bSYour Name 		  WLAN_CFG_HOST2TXMON_RING_MASK_0,
1168*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
1169*5113495bSYour Name 		/* tx mon ring masks */
1170*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1171*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_0,
1172*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
1173*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
1174*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1175*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1176*5113495bSYour Name 		/* Reo2ppe ring mask */
1177*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1178*5113495bSYour Name 		 0, 0, 0, 0, 0, 0},
1179*5113495bSYour Name 		/* ppe2tcl ring mask */
1180*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1181*5113495bSYour Name 		/* umac reset mask */
1182*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
1183*5113495bSYour Name 		 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0, 0},
1184*5113495bSYour Name 	},
1185*5113495bSYour Name 	/* Interrupt assignment for 13 MSI combination */
1186*5113495bSYour Name 	{
1187*5113495bSYour Name 		/* tx ring masks */
1188*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
1189*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
1190*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
1191*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
1192*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1193*5113495bSYour Name 		/* rx ring masks */
1194*5113495bSYour Name 		{ 0, 0, 0, 0,
1195*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
1196*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
1197*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
1198*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
1199*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
1200*5113495bSYour Name 		/* rx mon ring masks */
1201*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1202*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
1203*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
1204*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
1205*5113495bSYour Name 		  0, 0, 0, 0, 0},
1206*5113495bSYour Name 		/* host2rxdma ring masks */
1207*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1208*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
1209*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
1210*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
1211*5113495bSYour Name 		  0, 0, 0, 0, 0},
1212*5113495bSYour Name 		/* rxdma2host ring masks */
1213*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1214*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
1215*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
1216*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
1217*5113495bSYour Name 		  0, 0, 0, 0, 0},
1218*5113495bSYour Name 		/* host2rxdma mon ring masks */
1219*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1220*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
1221*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
1222*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1223*5113495bSYour Name 		  0, 0, 0, 0, 0},
1224*5113495bSYour Name 		/* rxdma2host mon ring masks */
1225*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1226*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
1227*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
1228*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1229*5113495bSYour Name 		  0, 0, 0, 0, 0},
1230*5113495bSYour Name 		/* rx err ring masks */
1231*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1232*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
1233*5113495bSYour Name 		  0, 0, 0, 0},
1234*5113495bSYour Name 		/* rx wbm rel ring masks */
1235*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1236*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
1237*5113495bSYour Name 		  0, 0, 0, 0},
1238*5113495bSYour Name 		/* reo status ring masks */
1239*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1240*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
1241*5113495bSYour Name 		  0, 0, 0, 0},
1242*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1243*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1244*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1245*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1246*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1247*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1248*5113495bSYour Name 		/* host2txmon ring masks */
1249*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1250*5113495bSYour Name 		  WLAN_CFG_HOST2TXMON_RING_MASK_0,
1251*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
1252*5113495bSYour Name 		/* tx mon ring masks */
1253*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1254*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_0,
1255*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
1256*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
1257*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1258*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1259*5113495bSYour Name 		/* Reo2ppe ring mask */
1260*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1261*5113495bSYour Name 		 0, 0, 0, 0, 0},
1262*5113495bSYour Name 		/* ppe2tcl ring mask */
1263*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1264*5113495bSYour Name 		/* umac reset mask */
1265*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
1266*5113495bSYour Name 		 0, 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0},
1267*5113495bSYour Name 	},
1268*5113495bSYour Name 	/* Interrupt assignment for 14 MSI combination */
1269*5113495bSYour Name 	{
1270*5113495bSYour Name 		/* tx ring masks */
1271*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
1272*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
1273*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
1274*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
1275*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1276*5113495bSYour Name 		/* rx ring masks */
1277*5113495bSYour Name 		{ 0, 0, 0, 0,
1278*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
1279*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
1280*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
1281*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
1282*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
1283*5113495bSYour Name 		/* rx mon ring masks */
1284*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1285*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
1286*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
1287*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
1288*5113495bSYour Name 		  0, 0, 0, 0, 0},
1289*5113495bSYour Name 		/* host2rxdma ring masks */
1290*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1291*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
1292*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
1293*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
1294*5113495bSYour Name 		  0, 0, 0, 0, 0},
1295*5113495bSYour Name 		/* rxdma2host ring masks */
1296*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1297*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
1298*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
1299*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
1300*5113495bSYour Name 		  0, 0, 0, 0, 0},
1301*5113495bSYour Name 		/* host2rxdma mon ring masks */
1302*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1303*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
1304*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
1305*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1306*5113495bSYour Name 		  0, 0, 0, 0, 0},
1307*5113495bSYour Name 		/* rxdma2host mon ring masks */
1308*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1309*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
1310*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
1311*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1312*5113495bSYour Name 		  0, 0, 0, 0, 0},
1313*5113495bSYour Name 		/* rx err ring masks */
1314*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1315*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
1316*5113495bSYour Name 		  0, 0, 0, 0},
1317*5113495bSYour Name 		/* rx wbm rel ring masks */
1318*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1319*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
1320*5113495bSYour Name 		  0, 0, 0, 0},
1321*5113495bSYour Name 		/* reo status ring masks */
1322*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1323*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
1324*5113495bSYour Name 		  0, 0, 0, 0},
1325*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1326*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1327*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1328*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1329*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1330*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1331*5113495bSYour Name 		/* host2txmon ring masks */
1332*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1333*5113495bSYour Name 		  WLAN_CFG_HOST2TXMON_RING_MASK_0,
1334*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
1335*5113495bSYour Name 		/* tx mon ring masks */
1336*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1337*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_0,
1338*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
1339*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
1340*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1341*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1342*5113495bSYour Name 		/* Reo2ppe ring mask */
1343*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1344*5113495bSYour Name 		/* ppe2tcl ring mask */
1345*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1346*5113495bSYour Name 		/* umac reset mask */
1347*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
1348*5113495bSYour Name 		 0, 0, 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0},
1349*5113495bSYour Name 	},
1350*5113495bSYour Name 	/* Interrupt assignment for 15 MSI combination */
1351*5113495bSYour Name 	{
1352*5113495bSYour Name 		/* tx ring masks */
1353*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
1354*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
1355*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
1356*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
1357*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1358*5113495bSYour Name 		/* rx ring masks */
1359*5113495bSYour Name 		{ 0, 0, 0, 0,
1360*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
1361*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
1362*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
1363*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
1364*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
1365*5113495bSYour Name 		/* rx mon ring masks */
1366*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1367*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
1368*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
1369*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
1370*5113495bSYour Name 		  0, 0, 0, 0, 0},
1371*5113495bSYour Name 		/* host2rxdma ring masks */
1372*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1373*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
1374*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
1375*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
1376*5113495bSYour Name 		  0, 0, 0, 0, 0},
1377*5113495bSYour Name 		/* rxdma2host ring masks */
1378*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1379*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
1380*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
1381*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
1382*5113495bSYour Name 		  0, 0, 0, 0, 0},
1383*5113495bSYour Name 		/* host2rxdma mon ring masks */
1384*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1385*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
1386*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
1387*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1388*5113495bSYour Name 		  0, 0, 0, 0, 0},
1389*5113495bSYour Name 		/* rxdma2host mon ring masks */
1390*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1391*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
1392*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
1393*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1394*5113495bSYour Name 		  0, 0, 0, 0, 0},
1395*5113495bSYour Name 		/* rx err ring masks */
1396*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1397*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
1398*5113495bSYour Name 		  0, 0, 0, 0},
1399*5113495bSYour Name 		/* rx wbm rel ring masks */
1400*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1401*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
1402*5113495bSYour Name 		  0, 0, 0, 0},
1403*5113495bSYour Name 		/* reo status ring masks */
1404*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1405*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
1406*5113495bSYour Name 		  0, 0, 0, 0},
1407*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1408*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1409*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1410*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1411*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1412*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1413*5113495bSYour Name 		/* host2txmon ring masks */
1414*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1415*5113495bSYour Name 		  WLAN_CFG_HOST2TXMON_RING_MASK_0,
1416*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
1417*5113495bSYour Name 		/* tx mon ring masks */
1418*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1419*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_0,
1420*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
1421*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
1422*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1423*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1424*5113495bSYour Name 		/* Reo2ppe ring mask */
1425*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1426*5113495bSYour Name 		 0, 0, 0, 0, 0},
1427*5113495bSYour Name 		/* ppe2tcl ring mask */
1428*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1429*5113495bSYour Name 		/* umac reset mask */
1430*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
1431*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0},
1432*5113495bSYour Name 	},
1433*5113495bSYour Name 	/* Interrupt assignment for 16 MSI combination */
1434*5113495bSYour Name 	{
1435*5113495bSYour Name 		/* tx ring masks */
1436*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
1437*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
1438*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1439*5113495bSYour Name 		/* rx ring masks */
1440*5113495bSYour Name 		{ 0, 0, 0, 0,
1441*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
1442*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
1443*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
1444*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
1445*5113495bSYour Name 		/* rx mon ring masks */
1446*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1447*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
1448*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
1449*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
1450*5113495bSYour Name 		  0, 0, 0, 0, 0},
1451*5113495bSYour Name 		/* host2rxdma ring masks */
1452*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1453*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
1454*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
1455*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
1456*5113495bSYour Name 		  0, 0, 0, 0, 0},
1457*5113495bSYour Name 		/* rxdma2host ring masks */
1458*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1459*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
1460*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
1461*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
1462*5113495bSYour Name 		  0, 0, 0, 0, 0},
1463*5113495bSYour Name 		/* host2rxdma mon ring masks */
1464*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1465*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
1466*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
1467*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1468*5113495bSYour Name 		  0, 0, 0, 0, 0},
1469*5113495bSYour Name 		/* rxdma2host mon ring masks */
1470*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1471*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
1472*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
1473*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1474*5113495bSYour Name 		  0, 0, 0, 0, 0},
1475*5113495bSYour Name 		/* rx err ring masks */
1476*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1477*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
1478*5113495bSYour Name 		  0, 0, 0, 0},
1479*5113495bSYour Name 		/* rx wbm rel ring masks */
1480*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1481*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
1482*5113495bSYour Name 		  0, 0, 0, 0},
1483*5113495bSYour Name 		/* reo status ring masks */
1484*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1485*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
1486*5113495bSYour Name 		  0, 0, 0, 0},
1487*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1488*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1489*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1490*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1491*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1492*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1493*5113495bSYour Name 		/* host2txmon ring masks */
1494*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
1495*5113495bSYour Name 		  WLAN_CFG_HOST2TXMON_RING_MASK_0,
1496*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
1497*5113495bSYour Name 		/* tx mon ring masks */
1498*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0,
1499*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_0,
1500*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
1501*5113495bSYour Name 		  0, 0, 0, 0, 0},
1502*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1503*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1504*5113495bSYour Name 		/* Reo2ppe ring mask */
1505*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1506*5113495bSYour Name 		 0, 0, 0, 0, 0},
1507*5113495bSYour Name 		/* ppe2tcl ring mask */
1508*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1509*5113495bSYour Name 		/* umac reset mask */
1510*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
1511*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0},
1512*5113495bSYour Name 	},
1513*5113495bSYour Name };
1514*5113495bSYour Name #else
1515*5113495bSYour Name 
1516*5113495bSYour Name /* DS and Umac reset not supported if available MSI lines are less than 8 */
1517*5113495bSYour Name static struct dp_int_mask_assignment dp_mask_assignment[NUM_INTERRUPT_COMBINATIONS] = {
1518*5113495bSYour Name 	/* Interrupt assignment for integrated configuration */
1519*5113495bSYour Name 	{
1520*5113495bSYour Name 		/* tx ring masks */
1521*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
1522*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
1523*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
1524*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
1525*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1526*5113495bSYour Name 		/* rx ring masks */
1527*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0,
1528*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
1529*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
1530*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
1531*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
1532*5113495bSYour Name 		  0, 0, 0, 0, 0},
1533*5113495bSYour Name 		/* rx mon ring masks */
1534*5113495bSYour Name 		{ 0, 0, 0, 0,
1535*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
1536*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
1537*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
1538*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
1539*5113495bSYour Name 		/* host2rxdma ring masks */
1540*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_RING_MASK_0,
1541*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
1542*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
1543*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
1544*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1545*5113495bSYour Name 		/* rxdma2host ring masks */
1546*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_RING_MASK_0,
1547*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
1548*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
1549*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
1550*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1551*5113495bSYour Name 		/* host2rxdma mon ring masks */
1552*5113495bSYour Name 		{ 0, 0, 0, 0,
1553*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
1554*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
1555*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1556*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
1557*5113495bSYour Name 		/* rxdma2host mon ring masks */
1558*5113495bSYour Name 		{ 0, 0,	0, 0,
1559*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
1560*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
1561*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1562*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
1563*5113495bSYour Name 		/* rx err ring masks */
1564*5113495bSYour Name 		{ WLAN_CFG_RX_ERR_RING_MASK_0,
1565*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
1566*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
1567*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
1568*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1569*5113495bSYour Name 		/* rx wbm rel ring masks */
1570*5113495bSYour Name 		{ WLAN_CFG_RX_WBM_REL_RING_MASK_0,
1571*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
1572*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
1573*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
1574*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1575*5113495bSYour Name 		/* reo status ring masks */
1576*5113495bSYour Name 		{ WLAN_CFG_REO_STATUS_RING_MASK_0,
1577*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
1578*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
1579*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
1580*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1581*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1582*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1583*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1584*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1585*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1586*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1587*5113495bSYour Name 		/* host2txmon ring masks */
1588*5113495bSYour Name 		{WLAN_CFG_HOST2TXMON_RING_MASK_0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1589*5113495bSYour Name 		 0, 0, 0, 0, 0, 0},
1590*5113495bSYour Name 		/* tx mon ring masks */
1591*5113495bSYour Name 		{WLAN_CFG_TX_MON_RING_MASK_0, WLAN_CFG_TX_MON_RING_MASK_1, 0,
1592*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1593*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1594*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1595*5113495bSYour Name 		 WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0, 0, 0, 0},
1596*5113495bSYour Name 		/* Reo2ppe ring mask */
1597*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1598*5113495bSYour Name 		 WLAN_CFG_REO2PPE_RING_MASK_0, 0, 0},
1599*5113495bSYour Name 		/* ppe2tcl ring mask */
1600*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1601*5113495bSYour Name 		 WLAN_CFG_PPE2TCL_RING_MASK_0, 0},
1602*5113495bSYour Name 		/* umac reset mask */
1603*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1604*5113495bSYour Name 		 WLAN_CFG_UMAC_RESET_INTR_MASK_0},
1605*5113495bSYour Name 	},
1606*5113495bSYour Name 	/* Interrupt assignment for 1 MSI combination */
1607*5113495bSYour Name 	{
1608*5113495bSYour Name 		/* tx ring masks */
1609*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0 |
1610*5113495bSYour Name 		    WLAN_CFG_TX_RING_MASK_1 |
1611*5113495bSYour Name 		    WLAN_CFG_TX_RING_MASK_2 |
1612*5113495bSYour Name 		    WLAN_CFG_TX_RING_MASK_3,
1613*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1614*5113495bSYour Name 		/* rx ring masks */
1615*5113495bSYour Name 		{ WLAN_CFG_RX_RING_MASK_0 |
1616*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_1 |
1617*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_2 |
1618*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_3,
1619*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1620*5113495bSYour Name 		/* rx mon ring masks */
1621*5113495bSYour Name 		{ WLAN_CFG_RX_MON_RING_MASK_0 |
1622*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_1 |
1623*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_2,
1624*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1625*5113495bSYour Name 		/* host2rxdma ring masks */
1626*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_RING_MASK_0 |
1627*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_1 |
1628*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_2 |
1629*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_3,
1630*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1631*5113495bSYour Name 		/* rxdma2host ring masks */
1632*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_RING_MASK_0 |
1633*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_1 |
1634*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_2 |
1635*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
1636*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1637*5113495bSYour Name 		/* host2rxdma mon ring masks */
1638*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0 |
1639*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1 |
1640*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1641*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1642*5113495bSYour Name 		/* rxdma2host mon ring masks */
1643*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0 |
1644*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1 |
1645*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1646*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1647*5113495bSYour Name 		/* rx err ring masks */
1648*5113495bSYour Name 		{ WLAN_CFG_RX_ERR_RING_MASK_0 |
1649*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_1 |
1650*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_2 |
1651*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_3,
1652*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1653*5113495bSYour Name 		/* rx wbm rel ring masks */
1654*5113495bSYour Name 		{ WLAN_CFG_RX_WBM_REL_RING_MASK_0 |
1655*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_1 |
1656*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_2 |
1657*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_3,
1658*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1659*5113495bSYour Name 		/* reo status ring masks */
1660*5113495bSYour Name 		{ WLAN_CFG_REO_STATUS_RING_MASK_0 |
1661*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_1 |
1662*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_2 |
1663*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_3,
1664*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1665*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1666*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1667*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1668*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1669*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1670*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1671*5113495bSYour Name 		/* host2txmon ring masks */
1672*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
1673*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1674*5113495bSYour Name 		/* tx mon ring masks */
1675*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0 |
1676*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
1677*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1678*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1679*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1680*5113495bSYour Name 		/* Reo2ppe ring mask */
1681*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1682*5113495bSYour Name 		/* ppe2tcl ring mask */
1683*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1684*5113495bSYour Name 		/* umac reset mask */
1685*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1686*5113495bSYour Name 	},
1687*5113495bSYour Name 	/* Interrupt assignment for 2 MSI combination */
1688*5113495bSYour Name 	{
1689*5113495bSYour Name 		/* tx ring masks */
1690*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0 |
1691*5113495bSYour Name 		    WLAN_CFG_TX_RING_MASK_1,
1692*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2 |
1693*5113495bSYour Name 		    WLAN_CFG_TX_RING_MASK_3,
1694*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1695*5113495bSYour Name 		/* rx ring masks */
1696*5113495bSYour Name 		{ WLAN_CFG_RX_RING_MASK_0 |
1697*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_1,
1698*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2 |
1699*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_3,
1700*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1701*5113495bSYour Name 		/* rx mon ring masks */
1702*5113495bSYour Name 		{ WLAN_CFG_RX_MON_RING_MASK_0 |
1703*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_1,
1704*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
1705*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1706*5113495bSYour Name 		/* host2rxdma ring masks */
1707*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_RING_MASK_0 |
1708*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_1,
1709*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2 |
1710*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_3,
1711*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1712*5113495bSYour Name 		/* rxdma2host ring masks */
1713*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_RING_MASK_0 |
1714*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_1,
1715*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2 |
1716*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_3,
1717*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1718*5113495bSYour Name 		/* host2rxdma mon ring masks */
1719*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0 |
1720*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
1721*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1722*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1723*5113495bSYour Name 		/* rxdma2host mon ring masks */
1724*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0 |
1725*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
1726*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1727*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1728*5113495bSYour Name 		/* rx err ring masks */
1729*5113495bSYour Name 		{ WLAN_CFG_RX_ERR_RING_MASK_0 |
1730*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_1,
1731*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2 |
1732*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_3,
1733*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1734*5113495bSYour Name 		/* rx wbm rel ring masks */
1735*5113495bSYour Name 		{ WLAN_CFG_RX_WBM_REL_RING_MASK_0 |
1736*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_1,
1737*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2 |
1738*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_3,
1739*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1740*5113495bSYour Name 		/* reo status ring masks */
1741*5113495bSYour Name 		{ WLAN_CFG_REO_STATUS_RING_MASK_0 |
1742*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_1,
1743*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2 |
1744*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_3,
1745*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1746*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1747*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1748*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1749*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1750*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1751*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1752*5113495bSYour Name 		/* host2txmon ring masks */
1753*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
1754*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1755*5113495bSYour Name 		/* tx mon ring masks */
1756*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
1757*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
1758*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1759*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1760*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1761*5113495bSYour Name 		/* Reo2ppe ring mask */
1762*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1763*5113495bSYour Name 		/* ppe2tcl ring mask */
1764*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1765*5113495bSYour Name 		/* umac reset mask */
1766*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1767*5113495bSYour Name 	},
1768*5113495bSYour Name 	/* Interrupt assignment for 3 MSI combination */
1769*5113495bSYour Name 	{
1770*5113495bSYour Name 		/* tx ring masks */
1771*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0 |
1772*5113495bSYour Name 		    WLAN_CFG_TX_RING_MASK_1,
1773*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2 |
1774*5113495bSYour Name 		    WLAN_CFG_TX_RING_MASK_3,
1775*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1776*5113495bSYour Name 		/* rx ring masks */
1777*5113495bSYour Name 		{ WLAN_CFG_RX_RING_MASK_0 |
1778*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_1,
1779*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2 |
1780*5113495bSYour Name 		    WLAN_CFG_RX_RING_MASK_3,
1781*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1782*5113495bSYour Name 		/* rx mon ring masks */
1783*5113495bSYour Name 		{ 0, 0,
1784*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0 |
1785*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_1 |
1786*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_2,
1787*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1788*5113495bSYour Name 		/* host2rxdma ring masks */
1789*5113495bSYour Name 		{ 0, 0,
1790*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0 |
1791*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_1 |
1792*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_2 |
1793*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_3,
1794*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1795*5113495bSYour Name 		/* rxdma2host ring masks */
1796*5113495bSYour Name 		{ 0, 0,
1797*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0 |
1798*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_1 |
1799*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_2 |
1800*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_3,
1801*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1802*5113495bSYour Name 		/* host2rxdma mon ring masks */
1803*5113495bSYour Name 		{ 0, 0,
1804*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0 |
1805*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1 |
1806*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1807*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1808*5113495bSYour Name 		/* rxdma2host mon ring masks */
1809*5113495bSYour Name 		{ 0, 0,
1810*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0 |
1811*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1 |
1812*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1813*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1814*5113495bSYour Name 		/* rx err ring masks */
1815*5113495bSYour Name 		{ 0, 0,
1816*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0 |
1817*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_1 |
1818*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_2 |
1819*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_3,
1820*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1821*5113495bSYour Name 		/* rx wbm rel ring masks */
1822*5113495bSYour Name 		{ 0, 0,
1823*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0 |
1824*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_1 |
1825*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_2 |
1826*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_3,
1827*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1828*5113495bSYour Name 		/* reo status ring masks */
1829*5113495bSYour Name 		{ 0, 0,
1830*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0 |
1831*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_1 |
1832*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_2 |
1833*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_3,
1834*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1835*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1836*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1837*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1838*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1839*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1840*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1841*5113495bSYour Name 		/* host2txmon ring masks */
1842*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
1843*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1844*5113495bSYour Name 		/* tx mon ring masks */
1845*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
1846*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
1847*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1848*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1849*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1850*5113495bSYour Name 		/* Reo2ppe ring mask */
1851*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1852*5113495bSYour Name 		/* ppe2tcl ring mask */
1853*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1854*5113495bSYour Name 		/* umac reset mask */
1855*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1856*5113495bSYour Name 	},
1857*5113495bSYour Name 	/* Interrupt assignment for 4 MSI combination */
1858*5113495bSYour Name 	{
1859*5113495bSYour Name 		/* tx ring masks */
1860*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
1861*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
1862*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
1863*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
1864*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1865*5113495bSYour Name 		/* rx ring masks */
1866*5113495bSYour Name 		{ WLAN_CFG_RX_RING_MASK_0,
1867*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
1868*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
1869*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
1870*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1871*5113495bSYour Name 		/* rx mon ring masks */
1872*5113495bSYour Name 		{ WLAN_CFG_RX_MON_RING_MASK_0,
1873*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
1874*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
1875*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1876*5113495bSYour Name 		/* host2rxdma ring masks */
1877*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_RING_MASK_0,
1878*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
1879*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
1880*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
1881*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1882*5113495bSYour Name 		/* rxdma2host ring masks */
1883*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_RING_MASK_0,
1884*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
1885*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
1886*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
1887*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1888*5113495bSYour Name 		/* host2rxdma mon ring masks */
1889*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
1890*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
1891*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1892*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1893*5113495bSYour Name 		/* rxdma2host mon ring masks */
1894*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
1895*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
1896*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1897*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1898*5113495bSYour Name 		/* rx err ring masks */
1899*5113495bSYour Name 		{ WLAN_CFG_RX_ERR_RING_MASK_0,
1900*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
1901*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
1902*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
1903*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1904*5113495bSYour Name 		/* rx wbm rel ring masks */
1905*5113495bSYour Name 		{ WLAN_CFG_RX_WBM_REL_RING_MASK_0,
1906*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
1907*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
1908*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
1909*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1910*5113495bSYour Name 		/* reo status ring masks */
1911*5113495bSYour Name 		{ WLAN_CFG_REO_STATUS_RING_MASK_0,
1912*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
1913*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
1914*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
1915*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1916*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
1917*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1918*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
1919*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1920*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
1921*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1922*5113495bSYour Name 		/* host2txmon ring masks */
1923*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
1924*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1925*5113495bSYour Name 		/* tx mon ring masks */
1926*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
1927*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
1928*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1929*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
1930*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1931*5113495bSYour Name 		/* Reo2ppe ring mask */
1932*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1933*5113495bSYour Name 		/* ppe2tcl ring mask */
1934*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1935*5113495bSYour Name 		/* umac reset mask */
1936*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1937*5113495bSYour Name 	},
1938*5113495bSYour Name 	/* Interrupt assignment for 5 MSI combination */
1939*5113495bSYour Name 	{
1940*5113495bSYour Name 		/* tx ring masks */
1941*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
1942*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
1943*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
1944*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
1945*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1946*5113495bSYour Name 		/* rx ring masks */
1947*5113495bSYour Name 		{ WLAN_CFG_RX_RING_MASK_0,
1948*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
1949*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
1950*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
1951*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1952*5113495bSYour Name 		/* rx mon ring masks */
1953*5113495bSYour Name 		{ 0, 0, 0, 0,
1954*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0 |
1955*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_1 |
1956*5113495bSYour Name 		    WLAN_CFG_RX_MON_RING_MASK_2,
1957*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1958*5113495bSYour Name 		/* host2rxdma ring masks */
1959*5113495bSYour Name 		{ 0, 0, 0, 0,
1960*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0 |
1961*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_1 |
1962*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_2 |
1963*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_RING_MASK_3,
1964*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1965*5113495bSYour Name 		/* rxdma2host ring masks */
1966*5113495bSYour Name 		{ 0, 0, 0, 0,
1967*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0 |
1968*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_1 |
1969*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_2 |
1970*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_RING_MASK_3,
1971*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1972*5113495bSYour Name 		/* host2rxdma mon ring masks */
1973*5113495bSYour Name 		{ 0, 0, 0, 0,
1974*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0 |
1975*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1 |
1976*5113495bSYour Name 		    WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
1977*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1978*5113495bSYour Name 		/* rxdma2host mon ring masks */
1979*5113495bSYour Name 		{ 0, 0, 0, 0,
1980*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0 |
1981*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1 |
1982*5113495bSYour Name 		    WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
1983*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1984*5113495bSYour Name 		/* rx err ring masks */
1985*5113495bSYour Name 		{ 0, 0, 0, 0,
1986*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0 |
1987*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_1 |
1988*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_2 |
1989*5113495bSYour Name 		    WLAN_CFG_RX_ERR_RING_MASK_3,
1990*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1991*5113495bSYour Name 		/* rx wbm rel ring masks */
1992*5113495bSYour Name 		{ 0, 0, 0, 0,
1993*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0 |
1994*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_1 |
1995*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_2 |
1996*5113495bSYour Name 		    WLAN_CFG_RX_WBM_REL_RING_MASK_3,
1997*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1998*5113495bSYour Name 		/* reo status ring masks */
1999*5113495bSYour Name 		{ 0, 0, 0, 0,
2000*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0 |
2001*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_1 |
2002*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_2 |
2003*5113495bSYour Name 		    WLAN_CFG_REO_STATUS_RING_MASK_3,
2004*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2005*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2006*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2007*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2008*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2009*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2010*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2011*5113495bSYour Name 		/* host2txmon ring masks */
2012*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
2013*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2014*5113495bSYour Name 		/* tx mon ring masks */
2015*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
2016*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2017*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2018*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2019*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2020*5113495bSYour Name 		/* Reo2ppe ring mask */
2021*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2022*5113495bSYour Name 		/* ppe2tcl ring mask */
2023*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2024*5113495bSYour Name 		/* umac reset mask */
2025*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2026*5113495bSYour Name 	},
2027*5113495bSYour Name 	/* Interrupt assignment for 6 MSI combination */
2028*5113495bSYour Name 	{
2029*5113495bSYour Name 		/* tx ring masks */
2030*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2031*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2032*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2033*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2034*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2035*5113495bSYour Name 		/* rx ring masks */
2036*5113495bSYour Name 		{ 0, 0,
2037*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2038*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2039*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2040*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2041*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2042*5113495bSYour Name 		/* rx mon ring masks */
2043*5113495bSYour Name 		{ WLAN_CFG_RX_MON_RING_MASK_0,
2044*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2045*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2046*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2047*5113495bSYour Name 		/* host2rxdma ring masks */
2048*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2049*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2050*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2051*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
2052*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2053*5113495bSYour Name 		/* rxdma2host ring masks */
2054*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2055*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2056*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2057*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
2058*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2059*5113495bSYour Name 		/* host2rxdma mon ring masks */
2060*5113495bSYour Name 		{ WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2061*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2062*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2063*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2064*5113495bSYour Name 		/* rxdma2host mon ring masks */
2065*5113495bSYour Name 		{ WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2066*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2067*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2068*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2069*5113495bSYour Name 		/* rx err ring masks */
2070*5113495bSYour Name 		{ WLAN_CFG_RX_ERR_RING_MASK_0,
2071*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
2072*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
2073*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
2074*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2075*5113495bSYour Name 		/* rx wbm rel ring masks */
2076*5113495bSYour Name 		{ WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2077*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
2078*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
2079*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
2080*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2081*5113495bSYour Name 		/* reo status ring masks */
2082*5113495bSYour Name 		{ WLAN_CFG_REO_STATUS_RING_MASK_0,
2083*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
2084*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
2085*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
2086*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2087*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2088*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2089*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2090*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2091*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2092*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2093*5113495bSYour Name 		/* host2txmon ring masks */
2094*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
2095*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2096*5113495bSYour Name 		/* tx mon ring masks */
2097*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
2098*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2099*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2100*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2101*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2102*5113495bSYour Name 		/* Reo2ppe ring mask */
2103*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2104*5113495bSYour Name 		/* ppe2tcl ring mask */
2105*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2106*5113495bSYour Name 		/* umac reset mask */
2107*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2108*5113495bSYour Name 	},
2109*5113495bSYour Name 	/* Interrupt assignment for 7 MSI combination */
2110*5113495bSYour Name 	{
2111*5113495bSYour Name 		/* tx ring masks */
2112*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2113*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2114*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2115*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2116*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2117*5113495bSYour Name 		/* rx ring masks */
2118*5113495bSYour Name 		{ 0, 0, 0,
2119*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2120*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2121*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2122*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2123*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
2124*5113495bSYour Name 		/* rx mon ring masks */
2125*5113495bSYour Name 		{ 0, 0, 0,
2126*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
2127*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2128*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2129*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2130*5113495bSYour Name 		/* host2rxdma ring masks */
2131*5113495bSYour Name 		{ 0, 0, 0,
2132*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2133*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2134*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2135*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
2136*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2137*5113495bSYour Name 		/* rxdma2host ring masks */
2138*5113495bSYour Name 		{ 0, 0, 0,
2139*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2140*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2141*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2142*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
2143*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2144*5113495bSYour Name 		/* host2rxdma mon ring masks */
2145*5113495bSYour Name 		{ 0, 0, 0,
2146*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2147*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2148*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2149*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2150*5113495bSYour Name 		/* rxdma2host mon ring masks */
2151*5113495bSYour Name 		{ 0, 0,	0,
2152*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2153*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2154*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2155*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2156*5113495bSYour Name 		/* rx err ring masks */
2157*5113495bSYour Name 		{ 0, 0, 0,
2158*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
2159*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
2160*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
2161*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
2162*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2163*5113495bSYour Name 		/* rx wbm rel ring masks */
2164*5113495bSYour Name 		{ 0, 0, 0,
2165*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2166*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
2167*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
2168*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
2169*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2170*5113495bSYour Name 		/* reo status ring masks */
2171*5113495bSYour Name 		{ 0, 0, 0,
2172*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
2173*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
2174*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
2175*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
2176*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2177*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2178*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2179*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2180*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2181*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2182*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2183*5113495bSYour Name 		/* host2txmon ring masks */
2184*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
2185*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2186*5113495bSYour Name 		/* tx mon ring masks */
2187*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
2188*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2189*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2190*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2191*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2192*5113495bSYour Name 		/* Reo2ppe ring mask */
2193*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2194*5113495bSYour Name 		/* ppe2tcl ring mask */
2195*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2196*5113495bSYour Name 		/* umac reset mask */
2197*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2198*5113495bSYour Name 	},
2199*5113495bSYour Name 	/* Interrupt assignment for 8 MSI combination */
2200*5113495bSYour Name 	{
2201*5113495bSYour Name 		/* tx ring masks */
2202*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2203*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2204*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2205*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2206*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2207*5113495bSYour Name 		/* rx ring masks */
2208*5113495bSYour Name 		{ 0, 0, 0, 0,
2209*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2210*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2211*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2212*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2213*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
2214*5113495bSYour Name 		/* rx mon ring masks */
2215*5113495bSYour Name 		{ 0, 0, 0,
2216*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
2217*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2218*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2219*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2220*5113495bSYour Name 		/* host2rxdma ring masks */
2221*5113495bSYour Name 		{ 0, 0, 0,
2222*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2223*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2224*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2225*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
2226*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2227*5113495bSYour Name 		/* rxdma2host ring masks */
2228*5113495bSYour Name 		{ 0, 0, 0,
2229*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2230*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2231*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2232*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
2233*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2234*5113495bSYour Name 		/* host2rxdma mon ring masks */
2235*5113495bSYour Name 		{ 0, 0, 0,
2236*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2237*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2238*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2239*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2240*5113495bSYour Name 		/* rxdma2host mon ring masks */
2241*5113495bSYour Name 		{ 0, 0, 0,
2242*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2243*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2244*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2245*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2246*5113495bSYour Name 		/* rx err ring masks */
2247*5113495bSYour Name 		{ 0, 0, 0,
2248*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
2249*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
2250*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
2251*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
2252*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2253*5113495bSYour Name 		/* rx wbm rel ring masks */
2254*5113495bSYour Name 		{ 0, 0, 0,
2255*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2256*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
2257*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
2258*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
2259*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2260*5113495bSYour Name 		/* reo status ring masks */
2261*5113495bSYour Name 		{ 0, 0, 0,
2262*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
2263*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
2264*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
2265*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
2266*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2267*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2268*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2269*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2270*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2271*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2272*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2273*5113495bSYour Name 		/* host2txmon ring masks */
2274*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
2275*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2276*5113495bSYour Name 		/* tx mon ring masks */
2277*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
2278*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2279*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2280*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2281*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2282*5113495bSYour Name 		/* Reo2ppe ring mask */
2283*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2284*5113495bSYour Name 		/* ppe2tcl ring mask */
2285*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2286*5113495bSYour Name 		/* umac reset mask */
2287*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2288*5113495bSYour Name 	},
2289*5113495bSYour Name 	/* Interrupt assignment for 9 MSI combination */
2290*5113495bSYour Name 	{
2291*5113495bSYour Name 		/* tx ring masks */
2292*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2293*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2294*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2295*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2296*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2297*5113495bSYour Name 		/* rx ring masks */
2298*5113495bSYour Name 		{ 0, 0, 0, 0,
2299*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2300*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2301*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2302*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2303*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
2304*5113495bSYour Name 		/* rx mon ring masks */
2305*5113495bSYour Name 		{ 0, 0, 0,
2306*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
2307*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2308*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2309*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2310*5113495bSYour Name 		/* host2rxdma ring masks */
2311*5113495bSYour Name 		{ 0, 0, 0,
2312*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2313*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2314*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2315*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
2316*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2317*5113495bSYour Name 		/* rxdma2host ring masks */
2318*5113495bSYour Name 		{ 0, 0, 0,
2319*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2320*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2321*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2322*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
2323*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2324*5113495bSYour Name 		/* host2rxdma mon ring masks */
2325*5113495bSYour Name 		{ 0, 0, 0,
2326*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2327*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2328*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2329*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2330*5113495bSYour Name 		/* rxdma2host mon ring masks */
2331*5113495bSYour Name 		{ 0, 0, 0,
2332*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2333*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2334*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2335*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2336*5113495bSYour Name 		/* rx err ring masks */
2337*5113495bSYour Name 		{ 0, 0, 0,
2338*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
2339*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
2340*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
2341*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
2342*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2343*5113495bSYour Name 		/* rx wbm rel ring masks */
2344*5113495bSYour Name 		{ 0, 0, 0,
2345*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2346*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
2347*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
2348*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
2349*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2350*5113495bSYour Name 		/* reo status ring masks */
2351*5113495bSYour Name 		{ 0, 0, 0,
2352*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
2353*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
2354*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
2355*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
2356*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2357*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2358*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2359*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2360*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2361*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2362*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2363*5113495bSYour Name 		/* host2txmon ring masks */
2364*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
2365*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2366*5113495bSYour Name 		/* tx mon ring masks */
2367*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
2368*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2369*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2370*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2371*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2372*5113495bSYour Name 		/* Reo2ppe ring mask */
2373*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2374*5113495bSYour Name 		/* ppe2tcl ring mask */
2375*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2376*5113495bSYour Name 		/* umac reset mask */
2377*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
2378*5113495bSYour Name 		 WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0, 0, 0, 0, 0},
2379*5113495bSYour Name 	},
2380*5113495bSYour Name 	/* Interrupt assignment for 10 MSI combination */
2381*5113495bSYour Name 	{
2382*5113495bSYour Name 		/* tx ring masks */
2383*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2384*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2385*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2386*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2387*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2388*5113495bSYour Name 		/* rx ring masks */
2389*5113495bSYour Name 		{ 0, 0, 0, 0,
2390*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2391*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2392*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2393*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2394*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
2395*5113495bSYour Name 		/* rx mon ring masks */
2396*5113495bSYour Name 		{ 0, 0, 0,
2397*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
2398*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2399*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2400*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2401*5113495bSYour Name 		/* host2rxdma ring masks */
2402*5113495bSYour Name 		{ 0, 0, 0,
2403*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2404*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2405*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2406*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
2407*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2408*5113495bSYour Name 		/* rxdma2host ring masks */
2409*5113495bSYour Name 		{ 0, 0, 0,
2410*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2411*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2412*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2413*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
2414*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2415*5113495bSYour Name 		/* host2rxdma mon ring masks */
2416*5113495bSYour Name 		{ 0, 0, 0,
2417*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2418*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2419*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2420*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2421*5113495bSYour Name 		/* rxdma2host mon ring masks */
2422*5113495bSYour Name 		{ 0, 0, 0,
2423*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2424*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2425*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2426*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2427*5113495bSYour Name 		/* rx err ring masks */
2428*5113495bSYour Name 		{ 0, 0, 0,
2429*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
2430*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
2431*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
2432*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
2433*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2434*5113495bSYour Name 		/* rx wbm rel ring masks */
2435*5113495bSYour Name 		{ 0, 0, 0,
2436*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2437*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
2438*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
2439*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
2440*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2441*5113495bSYour Name 		/* reo status ring masks */
2442*5113495bSYour Name 		{ 0, 0, 0,
2443*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
2444*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
2445*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
2446*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
2447*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2448*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2449*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2450*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2451*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2452*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2453*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2454*5113495bSYour Name 		/* host2txmon ring masks */
2455*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
2456*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2457*5113495bSYour Name 		/* tx mon ring masks */
2458*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
2459*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2460*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2461*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2462*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0,
2463*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0, 0},
2464*5113495bSYour Name 		/* Reo2ppe ring mask */
2465*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, WLAN_CFG_REO2PPE_RING_MASK_0,
2466*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0},
2467*5113495bSYour Name 		/* ppe2tcl ring mask */
2468*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
2469*5113495bSYour Name 		 WLAN_CFG_PPE2TCL_RING_MASK_0, 0, 0, 0, 0, 0, 0, 0},
2470*5113495bSYour Name 		/* umac reset mask */
2471*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
2472*5113495bSYour Name 		 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0, 0, 0, 0},
2473*5113495bSYour Name 	},
2474*5113495bSYour Name 	/* Interrupt assignment for 11 MSI combination */
2475*5113495bSYour Name 	{
2476*5113495bSYour Name 		/* tx ring masks */
2477*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2478*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2479*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2480*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2481*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2482*5113495bSYour Name 		/* rx ring masks */
2483*5113495bSYour Name 		{ 0, 0, 0, 0,
2484*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2485*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2486*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2487*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2488*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
2489*5113495bSYour Name 		/* rx mon ring masks */
2490*5113495bSYour Name 		{ 0, 0, 0,
2491*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
2492*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2493*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2494*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2495*5113495bSYour Name 		/* host2rxdma ring masks */
2496*5113495bSYour Name 		{ 0, 0, 0,
2497*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2498*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2499*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2500*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
2501*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2502*5113495bSYour Name 		/* rxdma2host ring masks */
2503*5113495bSYour Name 		{ 0, 0, 0,
2504*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2505*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2506*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2507*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
2508*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2509*5113495bSYour Name 		/* host2rxdma mon ring masks */
2510*5113495bSYour Name 		{ 0, 0, 0,
2511*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2512*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2513*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2514*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2515*5113495bSYour Name 		/* rxdma2host mon ring masks */
2516*5113495bSYour Name 		{ 0, 0, 0,
2517*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2518*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2519*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2520*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2521*5113495bSYour Name 		/* rx err ring masks */
2522*5113495bSYour Name 		{ 0, 0, 0,
2523*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
2524*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
2525*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
2526*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
2527*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2528*5113495bSYour Name 		/* rx wbm rel ring masks */
2529*5113495bSYour Name 		{ 0, 0, 0,
2530*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2531*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
2532*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
2533*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
2534*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2535*5113495bSYour Name 		/* reo status ring masks */
2536*5113495bSYour Name 		{ 0, 0, 0,
2537*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
2538*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
2539*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
2540*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
2541*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
2542*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2543*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2544*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2545*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2546*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2547*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2548*5113495bSYour Name 		/* host2txmon ring masks */
2549*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
2550*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2551*5113495bSYour Name 		/* tx mon ring masks */
2552*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
2553*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2554*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2555*5113495bSYour Name 		/* ppe wbm ds release ring ring mask */
2556*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0,
2557*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0},
2558*5113495bSYour Name 		/* Reo2ppe ring mask */
2559*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, WLAN_CFG_REO2PPE_RING_MASK_0,
2560*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0},
2561*5113495bSYour Name 		/* ppe2tcl ring mask */
2562*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0,
2563*5113495bSYour Name 		 WLAN_CFG_PPE2TCL_RING_MASK_0, 0, 0, 0, 0, 0, 0},
2564*5113495bSYour Name 		/* umac reset mask */
2565*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
2566*5113495bSYour Name 		 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0, 0, 0},
2567*5113495bSYour Name 	},
2568*5113495bSYour Name 	/* Interrupt assignment for 12 MSI combination */
2569*5113495bSYour Name 	{
2570*5113495bSYour Name 		/* tx ring masks */
2571*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2572*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2573*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2574*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2575*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2576*5113495bSYour Name 		/* rx ring masks */
2577*5113495bSYour Name 		{ 0, 0, 0, 0,
2578*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2579*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2580*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2581*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2582*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
2583*5113495bSYour Name 		/* rx mon ring masks */
2584*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2585*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
2586*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2587*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2588*5113495bSYour Name 		  0, 0, 0, 0, 0},
2589*5113495bSYour Name 		/* host2rxdma ring masks */
2590*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2591*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2592*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2593*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2594*5113495bSYour Name 		  0, 0, 0, 0, 0},
2595*5113495bSYour Name 		/* rxdma2host ring masks */
2596*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2597*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2598*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2599*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2600*5113495bSYour Name 		  0, 0, 0, 0, 0},
2601*5113495bSYour Name 		/* host2rxdma mon ring masks */
2602*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2603*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2604*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2605*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2606*5113495bSYour Name 		  0, 0, 0, 0, 0},
2607*5113495bSYour Name 		/* rxdma2host mon ring masks */
2608*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2609*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2610*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2611*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2612*5113495bSYour Name 		  0, 0, 0, 0, 0},
2613*5113495bSYour Name 		/* rx err ring masks */
2614*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2615*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
2616*5113495bSYour Name 		  0, 0, 0, 0},
2617*5113495bSYour Name 		/* rx wbm rel ring masks */
2618*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2619*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2620*5113495bSYour Name 		  0, 0, 0, 0},
2621*5113495bSYour Name 		/* reo status ring masks */
2622*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2623*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
2624*5113495bSYour Name 		  0, 0, 0, 0},
2625*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2626*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2627*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2628*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2629*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2630*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2631*5113495bSYour Name 		/* host2txmon ring masks */
2632*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2633*5113495bSYour Name 		  WLAN_CFG_HOST2TXMON_RING_MASK_0,
2634*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
2635*5113495bSYour Name 		/* tx mon ring masks */
2636*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2637*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_0,
2638*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2639*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
2640*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2641*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2642*5113495bSYour Name 		  WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0, 0, 0, 0, 0, 0, 0, 0},
2643*5113495bSYour Name 		/* Reo2ppe ring mask */
2644*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, WLAN_CFG_REO2PPE_RING_MASK_0,
2645*5113495bSYour Name 		 0, 0, 0, 0, 0, 0},
2646*5113495bSYour Name 		/* ppe2tcl ring mask */
2647*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2648*5113495bSYour Name 		 WLAN_CFG_PPE2TCL_RING_MASK_0, 0, 0, 0, 0, 0},
2649*5113495bSYour Name 		/* umac reset mask */
2650*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
2651*5113495bSYour Name 		 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0, 0},
2652*5113495bSYour Name 	},
2653*5113495bSYour Name 	/* Interrupt assignment for 13 MSI combination */
2654*5113495bSYour Name 	{
2655*5113495bSYour Name 		/* tx ring masks */
2656*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2657*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2658*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2659*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2660*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2661*5113495bSYour Name 		/* rx ring masks */
2662*5113495bSYour Name 		{ 0, 0, 0, 0,
2663*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2664*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2665*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2666*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2667*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
2668*5113495bSYour Name 		/* rx mon ring masks */
2669*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2670*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
2671*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2672*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2673*5113495bSYour Name 		  0, 0, 0, 0, 0},
2674*5113495bSYour Name 		/* host2rxdma ring masks */
2675*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2676*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2677*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2678*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2679*5113495bSYour Name 		  0, 0, 0, 0, 0},
2680*5113495bSYour Name 		/* rxdma2host ring masks */
2681*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2682*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2683*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2684*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2685*5113495bSYour Name 		  0, 0, 0, 0, 0},
2686*5113495bSYour Name 		/* host2rxdma mon ring masks */
2687*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2688*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2689*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2690*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2691*5113495bSYour Name 		  0, 0, 0, 0, 0},
2692*5113495bSYour Name 		/* rxdma2host mon ring masks */
2693*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2694*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2695*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2696*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2697*5113495bSYour Name 		  0, 0, 0, 0, 0},
2698*5113495bSYour Name 		/* rx err ring masks */
2699*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2700*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
2701*5113495bSYour Name 		  0, 0, 0, 0},
2702*5113495bSYour Name 		/* rx wbm rel ring masks */
2703*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2704*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2705*5113495bSYour Name 		  0, 0, 0, 0},
2706*5113495bSYour Name 		/* reo status ring masks */
2707*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2708*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
2709*5113495bSYour Name 		  0, 0, 0, 0},
2710*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2711*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2712*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2713*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2714*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2715*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2716*5113495bSYour Name 		/* host2txmon ring masks */
2717*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2718*5113495bSYour Name 		  WLAN_CFG_HOST2TXMON_RING_MASK_0,
2719*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
2720*5113495bSYour Name 		/* tx mon ring masks */
2721*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2722*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_0,
2723*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2724*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
2725*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2726*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0,
2727*5113495bSYour Name 		  WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0, 0, 0, 0, 0, 0, 0},
2728*5113495bSYour Name 		/* Reo2ppe ring mask */
2729*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, WLAN_CFG_REO2PPE_RING_MASK_0,
2730*5113495bSYour Name 		 0, 0, 0, 0, 0},
2731*5113495bSYour Name 		/* ppe2tcl ring mask */
2732*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2733*5113495bSYour Name 		 WLAN_CFG_PPE2TCL_RING_MASK_0, 0, 0, 0, 0},
2734*5113495bSYour Name 		/* umac reset mask */
2735*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
2736*5113495bSYour Name 		 0, 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0},
2737*5113495bSYour Name 	},
2738*5113495bSYour Name 	/* Interrupt assignment for 14 MSI combination */
2739*5113495bSYour Name 	{
2740*5113495bSYour Name 		/* tx ring masks */
2741*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2742*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2743*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2744*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2745*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2746*5113495bSYour Name 		/* rx ring masks */
2747*5113495bSYour Name 		{ 0, 0, 0, 0,
2748*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2749*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2750*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2751*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2752*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
2753*5113495bSYour Name 		/* rx mon ring masks */
2754*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2755*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
2756*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2757*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2758*5113495bSYour Name 		  0, 0, 0, 0, 0},
2759*5113495bSYour Name 		/* host2rxdma ring masks */
2760*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2761*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2762*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2763*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2764*5113495bSYour Name 		  0, 0, 0, 0, 0},
2765*5113495bSYour Name 		/* rxdma2host ring masks */
2766*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2767*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2768*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2769*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2770*5113495bSYour Name 		  0, 0, 0, 0, 0},
2771*5113495bSYour Name 		/* host2rxdma mon ring masks */
2772*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2773*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2774*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2775*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2776*5113495bSYour Name 		  0, 0, 0, 0, 0},
2777*5113495bSYour Name 		/* rxdma2host mon ring masks */
2778*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2779*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2780*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2781*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2782*5113495bSYour Name 		  0, 0, 0, 0, 0},
2783*5113495bSYour Name 		/* rx err ring masks */
2784*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2785*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
2786*5113495bSYour Name 		  0, 0, 0, 0},
2787*5113495bSYour Name 		/* rx wbm rel ring masks */
2788*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2789*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2790*5113495bSYour Name 		  0, 0, 0, 0},
2791*5113495bSYour Name 		/* reo status ring masks */
2792*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2793*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
2794*5113495bSYour Name 		  0, 0, 0, 0},
2795*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2796*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2797*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2798*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2799*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2800*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2801*5113495bSYour Name 		/* host2txmon ring masks */
2802*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2803*5113495bSYour Name 		  WLAN_CFG_HOST2TXMON_RING_MASK_0,
2804*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
2805*5113495bSYour Name 		/* tx mon ring masks */
2806*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2807*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_0,
2808*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2809*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
2810*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2811*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2812*5113495bSYour Name 		  WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0, 0, 0, 0, 0, 0},
2813*5113495bSYour Name 		/* Reo2ppe ring mask */
2814*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2815*5113495bSYour Name 		 WLAN_CFG_REO2PPE_RING_MASK_0, 0, 0, 0, 0},
2816*5113495bSYour Name 		/* ppe2tcl ring mask */
2817*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2818*5113495bSYour Name 		 0, WLAN_CFG_PPE2TCL_RING_MASK_0, 0, 0, 0},
2819*5113495bSYour Name 		/* umac reset mask */
2820*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
2821*5113495bSYour Name 		 0, 0, 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0},
2822*5113495bSYour Name 	},
2823*5113495bSYour Name 	/* Interrupt assignment for 15 MSI combination */
2824*5113495bSYour Name 	{
2825*5113495bSYour Name 		/* tx ring masks */
2826*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2827*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2828*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2829*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2830*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2831*5113495bSYour Name 		/* rx ring masks */
2832*5113495bSYour Name 		{ 0, 0, 0, 0,
2833*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2834*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2835*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2836*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2837*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
2838*5113495bSYour Name 		/* rx mon ring masks */
2839*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2840*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
2841*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2842*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2843*5113495bSYour Name 		  0, 0, 0, 0, 0},
2844*5113495bSYour Name 		/* host2rxdma ring masks */
2845*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2846*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2847*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2848*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2849*5113495bSYour Name 		  0, 0, 0, 0, 0},
2850*5113495bSYour Name 		/* rxdma2host ring masks */
2851*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2852*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2853*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2854*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2855*5113495bSYour Name 		  0, 0, 0, 0, 0},
2856*5113495bSYour Name 		/* host2rxdma mon ring masks */
2857*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2858*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2859*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2860*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2861*5113495bSYour Name 		  0, 0, 0, 0, 0},
2862*5113495bSYour Name 		/* rxdma2host mon ring masks */
2863*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2864*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2865*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2866*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2867*5113495bSYour Name 		  0, 0, 0, 0, 0},
2868*5113495bSYour Name 		/* rx err ring masks */
2869*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2870*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
2871*5113495bSYour Name 		  0, 0, 0, 0},
2872*5113495bSYour Name 		/* rx wbm rel ring masks */
2873*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2874*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2875*5113495bSYour Name 		  0, 0, 0, 0},
2876*5113495bSYour Name 		/* reo status ring masks */
2877*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2878*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
2879*5113495bSYour Name 		  0, 0, 0, 0},
2880*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2881*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2882*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2883*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2884*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2885*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2886*5113495bSYour Name 		/* host2txmon ring masks */
2887*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2888*5113495bSYour Name 		  WLAN_CFG_HOST2TXMON_RING_MASK_0,
2889*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
2890*5113495bSYour Name 		/* tx mon ring masks */
2891*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2892*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_0,
2893*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2894*5113495bSYour Name 		  0, 0, 0, 0, 0, 0},
2895*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2896*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2897*5113495bSYour Name 		  WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0, 0, 0, 0, 0},
2898*5113495bSYour Name 		/* Reo2ppe ring mask */
2899*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2900*5113495bSYour Name 		 0, WLAN_CFG_REO2PPE_RING_MASK_0, 0, 0, 0},
2901*5113495bSYour Name 		/* ppe2tcl ring mask */
2902*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2903*5113495bSYour Name 		 0, 0, WLAN_CFG_PPE2TCL_RING_MASK_0, 0, 0},
2904*5113495bSYour Name 		/* umac reset mask */
2905*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
2906*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0},
2907*5113495bSYour Name 	},
2908*5113495bSYour Name 	/* Interrupt assignment for 16 MSI combination */
2909*5113495bSYour Name 	{
2910*5113495bSYour Name 		/* tx ring masks */
2911*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
2912*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
2913*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
2914*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
2915*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2916*5113495bSYour Name 		/* rx ring masks */
2917*5113495bSYour Name 		{ 0, 0, 0, 0,
2918*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
2919*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
2920*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2,
2921*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
2922*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0},
2923*5113495bSYour Name 		/* rx mon ring masks */
2924*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2925*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
2926*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
2927*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
2928*5113495bSYour Name 		  0, 0, 0, 0, 0},
2929*5113495bSYour Name 		/* host2rxdma ring masks */
2930*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2931*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
2932*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
2933*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
2934*5113495bSYour Name 		  0, 0, 0, 0, 0},
2935*5113495bSYour Name 		/* rxdma2host ring masks */
2936*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2937*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
2938*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
2939*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
2940*5113495bSYour Name 		  0, 0, 0, 0, 0},
2941*5113495bSYour Name 		/* host2rxdma mon ring masks */
2942*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2943*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
2944*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
2945*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
2946*5113495bSYour Name 		  0, 0, 0, 0, 0},
2947*5113495bSYour Name 		/* rxdma2host mon ring masks */
2948*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2949*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
2950*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
2951*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
2952*5113495bSYour Name 		  0, 0, 0, 0, 0},
2953*5113495bSYour Name 		/* rx err ring masks */
2954*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2955*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
2956*5113495bSYour Name 		  0, 0, 0, 0},
2957*5113495bSYour Name 		/* rx wbm rel ring masks */
2958*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2959*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
2960*5113495bSYour Name 		  0, 0, 0, 0},
2961*5113495bSYour Name 		/* reo status ring masks */
2962*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2963*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
2964*5113495bSYour Name 		  0, 0, 0, 0},
2965*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
2966*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2967*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
2968*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2969*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
2970*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2971*5113495bSYour Name 		/* host2txmon ring masks */
2972*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0,
2973*5113495bSYour Name 		  WLAN_CFG_HOST2TXMON_RING_MASK_0,
2974*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0},
2975*5113495bSYour Name 		/* tx mon ring masks */
2976*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0,
2977*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_0,
2978*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
2979*5113495bSYour Name 		  0, 0, 0, 0, 0},
2980*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
2981*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2982*5113495bSYour Name 		  0, WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0, 0, 0, 0},
2983*5113495bSYour Name 		/* Reo2ppe ring mask */
2984*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2985*5113495bSYour Name 		 0, 0, WLAN_CFG_REO2PPE_RING_MASK_0, 0, 0},
2986*5113495bSYour Name 		/* ppe2tcl ring mask */
2987*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2988*5113495bSYour Name 		 0, 0, 0, WLAN_CFG_PPE2TCL_RING_MASK_0, 0},
2989*5113495bSYour Name 		/* umac reset mask */
2990*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
2991*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0},
2992*5113495bSYour Name 	},
2993*5113495bSYour Name };
2994*5113495bSYour Name #endif
2995*5113495bSYour Name 
2996*5113495bSYour Name struct dp_int_mask_assignment dp_ur_mask_assignment_8msi =
2997*5113495bSYour Name 	/* Interrupt assignment for 8 MSI combination with Umac reset support */
2998*5113495bSYour Name 	{
2999*5113495bSYour Name 		/* tx ring masks */
3000*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
3001*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
3002*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
3003*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
3004*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3005*5113495bSYour Name 		/* rx ring masks */
3006*5113495bSYour Name 		{ 0, 0, 0, 0,
3007*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
3008*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
3009*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2 |
3010*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
3011*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3012*5113495bSYour Name 		/* rx mon ring masks */
3013*5113495bSYour Name 		{ 0, 0, 0,
3014*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
3015*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
3016*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
3017*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3018*5113495bSYour Name 		/* host2rxdma ring masks */
3019*5113495bSYour Name 		{ 0, 0, 0,
3020*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
3021*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
3022*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
3023*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
3024*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3025*5113495bSYour Name 		/* rxdma2host ring masks */
3026*5113495bSYour Name 		{ 0, 0, 0,
3027*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
3028*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
3029*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
3030*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
3031*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3032*5113495bSYour Name 		/* host2rxdma mon ring masks */
3033*5113495bSYour Name 		{ 0, 0, 0,
3034*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
3035*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
3036*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
3037*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3038*5113495bSYour Name 		/* rxdma2host mon ring masks */
3039*5113495bSYour Name 		{ 0, 0, 0,
3040*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
3041*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
3042*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
3043*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3044*5113495bSYour Name 		/* rx err ring masks */
3045*5113495bSYour Name 		{ 0, 0, 0,
3046*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
3047*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
3048*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
3049*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
3050*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3051*5113495bSYour Name 		/* rx wbm rel ring masks */
3052*5113495bSYour Name 		{ 0, 0, 0,
3053*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
3054*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
3055*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
3056*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
3057*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3058*5113495bSYour Name 		/* reo status ring masks */
3059*5113495bSYour Name 		{ 0, 0, 0,
3060*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
3061*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
3062*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
3063*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
3064*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3065*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
3066*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3067*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
3068*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3069*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
3070*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3071*5113495bSYour Name 		/* host2txmon ring masks */
3072*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
3073*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3074*5113495bSYour Name 		/* tx mon ring masks */
3075*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
3076*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
3077*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3078*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
3079*5113495bSYour Name 		{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3080*5113495bSYour Name 		/* Reo2ppe ring mask */
3081*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3082*5113495bSYour Name 		/* ppe2tcl ring mask */
3083*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3084*5113495bSYour Name 		/* umac reset mask */
3085*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0,
3086*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0},
3087*5113495bSYour Name 	};
3088*5113495bSYour Name 
3089*5113495bSYour Name struct dp_int_mask_assignment dp_ds_mask_assignment_8msi =
3090*5113495bSYour Name 	/* Interrupt assignment for 8 MSI combination */
3091*5113495bSYour Name 	{
3092*5113495bSYour Name 		/* tx ring masks */
3093*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
3094*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
3095*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2 |
3096*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
3097*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3098*5113495bSYour Name 		/* rx ring masks */
3099*5113495bSYour Name 		{ 0, 0, 0,
3100*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
3101*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
3102*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2 |
3103*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
3104*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3105*5113495bSYour Name 		/* rx mon ring masks */
3106*5113495bSYour Name 		{ 0, 0,
3107*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
3108*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
3109*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
3110*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3111*5113495bSYour Name 		/* host2rxdma ring masks */
3112*5113495bSYour Name 		{ 0, 0,
3113*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
3114*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
3115*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2 |
3116*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
3117*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3118*5113495bSYour Name 		/* rxdma2host ring masks */
3119*5113495bSYour Name 		{ 0, 0,
3120*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
3121*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
3122*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2 |
3123*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
3124*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3125*5113495bSYour Name 		/* host2rxdma mon ring masks */
3126*5113495bSYour Name 		{ 0, 0,
3127*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
3128*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
3129*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
3130*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3131*5113495bSYour Name 		/* rxdma2host mon ring masks */
3132*5113495bSYour Name 		{ 0, 0,
3133*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
3134*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
3135*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
3136*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3137*5113495bSYour Name 		/* rx err ring masks */
3138*5113495bSYour Name 		{ 0, 0,
3139*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
3140*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
3141*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2 |
3142*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
3143*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3144*5113495bSYour Name 		/* rx wbm rel ring masks */
3145*5113495bSYour Name 		{ 0, 0,
3146*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
3147*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
3148*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2 |
3149*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
3150*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3151*5113495bSYour Name 		/* reo status ring masks */
3152*5113495bSYour Name 		{ 0, 0,
3153*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
3154*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
3155*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2 |
3156*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
3157*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3158*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
3159*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3160*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
3161*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3162*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
3163*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3164*5113495bSYour Name 		/* host2txmon ring masks */
3165*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
3166*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3167*5113495bSYour Name 		/* tx mon ring masks */
3168*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
3169*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
3170*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3171*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
3172*5113495bSYour Name 		{ WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0, 0, 0, 0, 0,
3173*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3174*5113495bSYour Name 		/* Reo2ppe ring mask */
3175*5113495bSYour Name 		{0, 0, 0, 0, 0, WLAN_CFG_REO2PPE_RING_MASK_0, 0,
3176*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0, 0},
3177*5113495bSYour Name 		/* ppe2tcl ring mask */
3178*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, WLAN_CFG_PPE2TCL_RING_MASK_0, 0,
3179*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0},
3180*5113495bSYour Name 		/* umac reset mask */
3181*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, WLAN_CFG_UMAC_RESET_INTR_MASK_0,
3182*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0},
3183*5113495bSYour Name 	};
3184*5113495bSYour Name 
3185*5113495bSYour Name struct dp_int_mask_assignment dp_ds_mask_assignment_9msi =
3186*5113495bSYour Name 	/* Interrupt assignment for 9 MSI combination */
3187*5113495bSYour Name 	{
3188*5113495bSYour Name 		/* tx ring masks */
3189*5113495bSYour Name 		{ WLAN_CFG_TX_RING_MASK_0,
3190*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_1,
3191*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_2,
3192*5113495bSYour Name 		  WLAN_CFG_TX_RING_MASK_3,
3193*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3194*5113495bSYour Name 		/* rx ring masks */
3195*5113495bSYour Name 		{ 0, 0, 0, 0,
3196*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_0,
3197*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_1,
3198*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_2 |
3199*5113495bSYour Name 		  WLAN_CFG_RX_RING_MASK_3,
3200*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3201*5113495bSYour Name 		/* rx mon ring masks */
3202*5113495bSYour Name 		{ 0, 0, 0,
3203*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_0,
3204*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_1,
3205*5113495bSYour Name 		  WLAN_CFG_RX_MON_RING_MASK_2,
3206*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3207*5113495bSYour Name 		/* host2rxdma ring masks */
3208*5113495bSYour Name 		{ 0, 0, 0,
3209*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_0,
3210*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_1,
3211*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_2,
3212*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_RING_MASK_3,
3213*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3214*5113495bSYour Name 		/* rxdma2host ring masks */
3215*5113495bSYour Name 		{ 0, 0, 0,
3216*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_0,
3217*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_1,
3218*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_2,
3219*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_RING_MASK_3,
3220*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3221*5113495bSYour Name 		/* host2rxdma mon ring masks */
3222*5113495bSYour Name 		{ 0, 0, 0,
3223*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_0,
3224*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_1,
3225*5113495bSYour Name 		  WLAN_CFG_HOST2RXDMA_MON_RING_MASK_2,
3226*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3227*5113495bSYour Name 		/* rxdma2host mon ring masks */
3228*5113495bSYour Name 		{ 0, 0, 0,
3229*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_0,
3230*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_1,
3231*5113495bSYour Name 		  WLAN_CFG_RXDMA2HOST_MON_RING_MASK_2,
3232*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3233*5113495bSYour Name 		/* rx err ring masks */
3234*5113495bSYour Name 		{ 0, 0, 0,
3235*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_0,
3236*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_1,
3237*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_2,
3238*5113495bSYour Name 		  WLAN_CFG_RX_ERR_RING_MASK_3,
3239*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3240*5113495bSYour Name 		/* rx wbm rel ring masks */
3241*5113495bSYour Name 		{ 0, 0, 0,
3242*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_0,
3243*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_1,
3244*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_2,
3245*5113495bSYour Name 		  WLAN_CFG_RX_WBM_REL_RING_MASK_3,
3246*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3247*5113495bSYour Name 		/* reo status ring masks */
3248*5113495bSYour Name 		{ 0, 0, 0,
3249*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_0,
3250*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_1,
3251*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_2,
3252*5113495bSYour Name 		  WLAN_CFG_REO_STATUS_RING_MASK_3,
3253*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0},
3254*5113495bSYour Name 		/* rx_ring_near_full_irq mask */
3255*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3256*5113495bSYour Name 		/* rx_ring_near_full_irq_2 mask */
3257*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3258*5113495bSYour Name 		/* tx_ring_near_full_irq mask */
3259*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3260*5113495bSYour Name 		/* host2txmon ring masks */
3261*5113495bSYour Name 		{ WLAN_CFG_HOST2TXMON_RING_MASK_0,
3262*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3263*5113495bSYour Name 		/* tx mon ring masks */
3264*5113495bSYour Name 		{ WLAN_CFG_TX_MON_RING_MASK_0,
3265*5113495bSYour Name 		  WLAN_CFG_TX_MON_RING_MASK_1,
3266*5113495bSYour Name 		  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3267*5113495bSYour Name 		/* ppe ds wbm release ring ring mask */
3268*5113495bSYour Name 		{ WLAN_CFG_PPEDS_WBM_RELEASE_RING_MASK_0, 0, 0, 0, 0, 0,
3269*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
3270*5113495bSYour Name 		/* Reo2ppe ring mask */
3271*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, WLAN_CFG_REO2PPE_RING_MASK_0,
3272*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0, 0},
3273*5113495bSYour Name 		/* ppe2tcl ring mask */
3274*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, WLAN_CFG_PPE2TCL_RING_MASK_0,
3275*5113495bSYour Name 		 0, 0, 0, 0, 0, 0, 0, 0},
3276*5113495bSYour Name 		/* umac reset mask */
3277*5113495bSYour Name 		{0, 0, 0, 0, 0, 0, 0, 0,
3278*5113495bSYour Name 		 WLAN_CFG_UMAC_RESET_INTR_MASK_0, 0, 0, 0, 0, 0, 0, 0},
3279*5113495bSYour Name 	};
3280*5113495bSYour Name #endif
3281*5113495bSYour Name 
3282*5113495bSYour Name /* g_wlan_srng_cfg[] - Per ring_type specific configuration */
3283*5113495bSYour Name struct wlan_srng_cfg g_wlan_srng_cfg[MAX_RING_TYPES];
3284*5113495bSYour Name 
3285*5113495bSYour Name #ifndef WLAN_SOFTUMAC_SUPPORT
3286*5113495bSYour Name /* REO_DST ring configuration */
3287*5113495bSYour Name struct wlan_srng_cfg wlan_srng_reo_cfg = {
3288*5113495bSYour Name 	.timer_threshold = WLAN_CFG_INT_TIMER_THRESHOLD_REO_RING,
3289*5113495bSYour Name 	.batch_count_threshold = WLAN_CFG_INT_BATCH_THRESHOLD_REO_RING,
3290*5113495bSYour Name 	.low_threshold = 0,
3291*5113495bSYour Name };
3292*5113495bSYour Name 
3293*5113495bSYour Name /* WBM2SW_RELEASE ring configuration */
3294*5113495bSYour Name struct wlan_srng_cfg wlan_srng_wbm_release_cfg = {
3295*5113495bSYour Name 	.timer_threshold = WLAN_CFG_INT_TIMER_THRESHOLD_WBM_RELEASE_RING,
3296*5113495bSYour Name 	.batch_count_threshold = 0,
3297*5113495bSYour Name 	.low_threshold = 0,
3298*5113495bSYour Name };
3299*5113495bSYour Name #endif
3300*5113495bSYour Name 
3301*5113495bSYour Name /* RXDMA_BUF ring configuration */
3302*5113495bSYour Name struct wlan_srng_cfg wlan_srng_rxdma_buf_cfg = {
3303*5113495bSYour Name 	.timer_threshold = WLAN_CFG_INT_TIMER_THRESHOLD_RX,
3304*5113495bSYour Name 	.batch_count_threshold = 0,
3305*5113495bSYour Name 	.low_threshold = WLAN_CFG_RXDMA_REFILL_RING_SIZE >> 3,
3306*5113495bSYour Name };
3307*5113495bSYour Name 
3308*5113495bSYour Name /* RXDMA_MONITOR_BUF ring configuration */
3309*5113495bSYour Name struct wlan_srng_cfg wlan_srng_rxdma_monitor_buf_cfg = {
3310*5113495bSYour Name 	.timer_threshold = WLAN_CFG_INT_TIMER_THRESHOLD_RX,
3311*5113495bSYour Name 	.batch_count_threshold = 0,
3312*5113495bSYour Name 	.low_threshold = WLAN_CFG_RXDMA_MONITOR_BUF_RING_SIZE >> 3,
3313*5113495bSYour Name };
3314*5113495bSYour Name 
3315*5113495bSYour Name /* RXDMA_MONITOR_STATUS ring configuration */
3316*5113495bSYour Name #ifdef DP_CON_MON_MSI_ENABLED
3317*5113495bSYour Name /*
3318*5113495bSYour Name  * Configure batch count threshold as 1 to enable interrupt
3319*5113495bSYour Name  * when HW updated TP (monitor status buffer DMA is done),
3320*5113495bSYour Name  * then host could reap monitor status srng. timer threshold
3321*5113495bSYour Name  * based interrupt is only used for low threshold interrupt which
3322*5113495bSYour Name  * can not be used for monitor status buffer reaping directly
3323*5113495bSYour Name  * unless configure low threshold value to a big value, perhaps
3324*5113495bSYour Name  * (number of entries - 2).
3325*5113495bSYour Name  */
3326*5113495bSYour Name struct wlan_srng_cfg wlan_srng_rxdma_monitor_status_cfg = {
3327*5113495bSYour Name 	.timer_threshold = WLAN_CFG_INT_TIMER_THRESHOLD_RX,
3328*5113495bSYour Name 	.batch_count_threshold = 1,
3329*5113495bSYour Name 	.low_threshold = WLAN_CFG_RXDMA_MONITOR_STATUS_RING_SIZE >> 3,
3330*5113495bSYour Name };
3331*5113495bSYour Name #else
3332*5113495bSYour Name struct wlan_srng_cfg wlan_srng_rxdma_monitor_status_cfg = {
3333*5113495bSYour Name 	.timer_threshold = WLAN_CFG_INT_TIMER_THRESHOLD_RX,
3334*5113495bSYour Name 	.batch_count_threshold = 0,
3335*5113495bSYour Name 	.low_threshold = WLAN_CFG_RXDMA_MONITOR_STATUS_RING_SIZE >> 3,
3336*5113495bSYour Name };
3337*5113495bSYour Name #endif
3338*5113495bSYour Name 
3339*5113495bSYour Name /* TX_MONITOR_BUF ring configuration */
3340*5113495bSYour Name struct wlan_srng_cfg wlan_srng_tx_monitor_buf_cfg = {
3341*5113495bSYour Name 	.timer_threshold = WLAN_CFG_INT_TIMER_THRESHOLD_TX,
3342*5113495bSYour Name 	.batch_count_threshold = 0,
3343*5113495bSYour Name 	.low_threshold = WLAN_CFG_TX_MONITOR_BUF_RING_SIZE_MAX >> 3,
3344*5113495bSYour Name };
3345*5113495bSYour Name 
3346*5113495bSYour Name /* DEFAULT_CONFIG ring configuration */
3347*5113495bSYour Name struct wlan_srng_cfg wlan_srng_default_cfg = {
3348*5113495bSYour Name 	.timer_threshold = WLAN_CFG_INT_TIMER_THRESHOLD_OTHER,
3349*5113495bSYour Name 	.batch_count_threshold = WLAN_CFG_INT_BATCH_THRESHOLD_OTHER,
3350*5113495bSYour Name 	.low_threshold = 0,
3351*5113495bSYour Name };
3352*5113495bSYour Name 
3353*5113495bSYour Name /* DEFAULT_CONFIG source ring configuration */
3354*5113495bSYour Name struct wlan_srng_cfg wlan_src_srng_default_cfg = {
3355*5113495bSYour Name 	.timer_threshold = 0,
3356*5113495bSYour Name 	.batch_count_threshold = 0,
3357*5113495bSYour Name 	.low_threshold = 0,
3358*5113495bSYour Name };
3359*5113495bSYour Name 
3360*5113495bSYour Name #ifdef WLAN_SOFTUMAC_SUPPORT
wlan_set_srng_cfg(struct wlan_srng_cfg ** wlan_cfg)3361*5113495bSYour Name void wlan_set_srng_cfg(struct wlan_srng_cfg **wlan_cfg)
3362*5113495bSYour Name {
3363*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_BUF] = wlan_srng_rxdma_buf_cfg;
3364*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_MONITOR_BUF] =
3365*5113495bSYour Name 			wlan_srng_rxdma_monitor_buf_cfg;
3366*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_MONITOR_STATUS] =
3367*5113495bSYour Name 			wlan_srng_rxdma_monitor_status_cfg;
3368*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_MONITOR_DST] = wlan_srng_default_cfg;
3369*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_MONITOR_DESC] = wlan_srng_default_cfg;
3370*5113495bSYour Name 	g_wlan_srng_cfg[DIR_BUF_RX_DMA_SRC] = wlan_srng_default_cfg;
3371*5113495bSYour Name #ifdef WLAN_FEATURE_CIF_CFR
3372*5113495bSYour Name 	g_wlan_srng_cfg[WIFI_POS_SRC] = wlan_srng_default_cfg;
3373*5113495bSYour Name #endif
3374*5113495bSYour Name 	g_wlan_srng_cfg[TX_MONITOR_BUF] = wlan_srng_tx_monitor_buf_cfg;
3375*5113495bSYour Name 	*wlan_cfg = g_wlan_srng_cfg;
3376*5113495bSYour Name }
3377*5113495bSYour Name #else
wlan_set_srng_cfg(struct wlan_srng_cfg ** wlan_cfg)3378*5113495bSYour Name void wlan_set_srng_cfg(struct wlan_srng_cfg **wlan_cfg)
3379*5113495bSYour Name {
3380*5113495bSYour Name 	g_wlan_srng_cfg[REO_DST] = wlan_srng_reo_cfg;
3381*5113495bSYour Name 	g_wlan_srng_cfg[WBM2SW_RELEASE] = wlan_srng_wbm_release_cfg;
3382*5113495bSYour Name 	g_wlan_srng_cfg[REO_EXCEPTION] = wlan_srng_default_cfg;
3383*5113495bSYour Name 	g_wlan_srng_cfg[REO_REINJECT] = wlan_src_srng_default_cfg;
3384*5113495bSYour Name 	g_wlan_srng_cfg[REO_CMD] = wlan_src_srng_default_cfg;
3385*5113495bSYour Name 	g_wlan_srng_cfg[REO_STATUS] = wlan_srng_default_cfg;
3386*5113495bSYour Name 	g_wlan_srng_cfg[TCL_DATA] = wlan_src_srng_default_cfg;
3387*5113495bSYour Name 	g_wlan_srng_cfg[TCL_CMD_CREDIT] = wlan_src_srng_default_cfg;
3388*5113495bSYour Name 	g_wlan_srng_cfg[TCL_STATUS] = wlan_srng_default_cfg;
3389*5113495bSYour Name 	g_wlan_srng_cfg[WBM_IDLE_LINK] = wlan_src_srng_default_cfg;
3390*5113495bSYour Name 	g_wlan_srng_cfg[SW2WBM_RELEASE] = wlan_src_srng_default_cfg;
3391*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_BUF] = wlan_srng_rxdma_buf_cfg;
3392*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_DST] = wlan_srng_default_cfg;
3393*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_MONITOR_BUF] =
3394*5113495bSYour Name 			wlan_srng_rxdma_monitor_buf_cfg;
3395*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_MONITOR_STATUS] =
3396*5113495bSYour Name 			wlan_srng_rxdma_monitor_status_cfg;
3397*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_MONITOR_DST] = wlan_srng_default_cfg;
3398*5113495bSYour Name 	g_wlan_srng_cfg[REO2PPE] = wlan_srng_default_cfg;
3399*5113495bSYour Name 	g_wlan_srng_cfg[PPE2TCL] = wlan_srng_default_cfg;
3400*5113495bSYour Name 	g_wlan_srng_cfg[RXDMA_MONITOR_DESC] = wlan_srng_default_cfg;
3401*5113495bSYour Name 	g_wlan_srng_cfg[DIR_BUF_RX_DMA_SRC] = wlan_srng_default_cfg;
3402*5113495bSYour Name #ifdef WLAN_FEATURE_CIF_CFR
3403*5113495bSYour Name 	g_wlan_srng_cfg[WIFI_POS_SRC] = wlan_srng_default_cfg;
3404*5113495bSYour Name #endif
3405*5113495bSYour Name 	g_wlan_srng_cfg[TX_MONITOR_BUF] = wlan_srng_tx_monitor_buf_cfg;
3406*5113495bSYour Name 	*wlan_cfg = g_wlan_srng_cfg;
3407*5113495bSYour Name }
3408*5113495bSYour Name #endif
3409*5113495bSYour Name 
3410*5113495bSYour Name static const uint8_t rx_fst_toeplitz_key[WLAN_CFG_RX_FST_TOEPLITZ_KEYLEN] = {
3411*5113495bSYour Name 	0x6d, 0x5a, 0x56, 0xda, 0x25, 0x5b, 0x0e, 0xc2,
3412*5113495bSYour Name 	0x41, 0x67, 0x25, 0x3d, 0x43, 0xa3, 0x8f, 0xb0,
3413*5113495bSYour Name 	0xd0, 0xca, 0x2b, 0xcb, 0xae, 0x7b, 0x30, 0xb4,
3414*5113495bSYour Name 	0x77, 0xcb, 0x2d, 0xa3, 0x80, 0x30, 0xf2, 0x0c,
3415*5113495bSYour Name 	0x6a, 0x42, 0xb7, 0x3b, 0xbe, 0xac, 0x01, 0xfa
3416*5113495bSYour Name };
3417*5113495bSYour Name 
3418*5113495bSYour Name #if defined(WLAN_MAX_PDEVS) && (WLAN_MAX_PDEVS == 1)
3419*5113495bSYour Name #ifdef WLAN_SOFTUMAC_SUPPORT
wlan_cfg_fill_interrupt_mask(struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx,int num_dp_msi,int interrupt_mode,bool is_monitor_mode,bool ppeds_attached,bool umac_reset_support)3420*5113495bSYour Name void wlan_cfg_fill_interrupt_mask(struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx,
3421*5113495bSYour Name 				  int num_dp_msi,
3422*5113495bSYour Name 				  int interrupt_mode,
3423*5113495bSYour Name 				  bool is_monitor_mode,
3424*5113495bSYour Name 				  bool ppeds_attached,
3425*5113495bSYour Name 				  bool umac_reset_support)
3426*5113495bSYour Name {	int i = 0;
3427*5113495bSYour Name 
3428*5113495bSYour Name 	for (i = 0; i < WLAN_CFG_INT_NUM_CONTEXTS; i++) {
3429*5113495bSYour Name 		wlan_cfg_ctx->int_rx_mon_ring_mask[i] =
3430*5113495bSYour Name 							rx_mon_ring_mask_msi[i];
3431*5113495bSYour Name 		wlan_cfg_ctx->int_tx_mon_ring_mask[i] = 0;
3432*5113495bSYour Name 		if (is_monitor_mode) {
3433*5113495bSYour Name 			wlan_cfg_ctx->int_rx_ring_mask[i] = 0;
3434*5113495bSYour Name 			if (interrupt_mode == DP_INTR_POLL)
3435*5113495bSYour Name 				wlan_cfg_ctx->int_rxdma2host_ring_mask[i] = 0;
3436*5113495bSYour Name 			else
3437*5113495bSYour Name 				wlan_cfg_ctx->int_rxdma2host_ring_mask[i] =
3438*5113495bSYour Name 						rxdma2host_ring_mask_msi[i];
3439*5113495bSYour Name 		} else {
3440*5113495bSYour Name 			wlan_cfg_ctx->int_rx_ring_mask[i] =
3441*5113495bSYour Name 							rx_ring_mask_msi[i];
3442*5113495bSYour Name 			wlan_cfg_ctx->int_rxdma2host_ring_mask[i] =
3443*5113495bSYour Name 						rxdma2host_ring_mask_msi[i];
3444*5113495bSYour Name 		}
3445*5113495bSYour Name 		wlan_cfg_ctx->int_host2rxdma_mon_ring_mask[i] =
3446*5113495bSYour Name 						host2rxdma_mon_ring_mask_msi[i];
3447*5113495bSYour Name 		wlan_cfg_ctx->int_rxdma2host_mon_ring_mask[i] =
3448*5113495bSYour Name 						rxdma2host_mon_ring_mask_msi[i];
3449*5113495bSYour Name 	}
3450*5113495bSYour Name }
3451*5113495bSYour Name #else
wlan_cfg_fill_interrupt_mask(struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx,int num_dp_msi,int interrupt_mode,bool is_monitor_mode,bool ppeds_attached,bool umac_reset_support)3452*5113495bSYour Name void wlan_cfg_fill_interrupt_mask(struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx,
3453*5113495bSYour Name 				  int num_dp_msi,
3454*5113495bSYour Name 				  int interrupt_mode,
3455*5113495bSYour Name 				  bool is_monitor_mode,
3456*5113495bSYour Name 				  bool ppeds_attached,
3457*5113495bSYour Name 				  bool umac_reset_support)
3458*5113495bSYour Name {	int i = 0;
3459*5113495bSYour Name 	const uint8_t *tx_ring_intr_mask =
3460*5113495bSYour Name 				wlan_cfg_get_tx_ring_int_mask(wlan_cfg_ctx);
3461*5113495bSYour Name 
3462*5113495bSYour Name 	for (i = 0; i < WLAN_CFG_INT_NUM_CONTEXTS; i++) {
3463*5113495bSYour Name 		wlan_cfg_ctx->int_tx_ring_mask[i] = tx_ring_intr_mask[i];
3464*5113495bSYour Name 		if (wlan_cfg_ctx->int_tx_ring_mask[i])
3465*5113495bSYour Name 			wlan_cfg_ctx->tx_rings_grp_bitmap |= BIT(i);
3466*5113495bSYour Name 
3467*5113495bSYour Name 		wlan_cfg_ctx->int_rx_mon_ring_mask[i] =
3468*5113495bSYour Name 							rx_mon_ring_mask_msi[i];
3469*5113495bSYour Name 		wlan_cfg_ctx->int_tx_mon_ring_mask[i] = tx_mon_ring_mask_msi[i];
3470*5113495bSYour Name 		wlan_cfg_ctx->int_rx_err_ring_mask[i] =
3471*5113495bSYour Name 							rx_err_ring_mask_msi[i];
3472*5113495bSYour Name 		wlan_cfg_ctx->int_rx_wbm_rel_ring_mask[i] =
3473*5113495bSYour Name 						rx_wbm_rel_ring_mask_msi[i];
3474*5113495bSYour Name 		wlan_cfg_ctx->int_reo_status_ring_mask[i] =
3475*5113495bSYour Name 							reo_status_ring_mask_msi[i];
3476*5113495bSYour Name 		if (is_monitor_mode) {
3477*5113495bSYour Name 			wlan_cfg_ctx->int_rx_ring_mask[i] = 0;
3478*5113495bSYour Name 			if (interrupt_mode == DP_INTR_POLL)
3479*5113495bSYour Name 				wlan_cfg_ctx->int_rxdma2host_ring_mask[i] = 0;
3480*5113495bSYour Name 			else
3481*5113495bSYour Name 				wlan_cfg_ctx->int_rxdma2host_ring_mask[i] =
3482*5113495bSYour Name 						rxdma2host_ring_mask_msi[i];
3483*5113495bSYour Name 		} else {
3484*5113495bSYour Name 			wlan_cfg_ctx->int_rx_ring_mask[i] =
3485*5113495bSYour Name 							rx_ring_mask_msi[i];
3486*5113495bSYour Name 			wlan_cfg_ctx->int_rxdma2host_ring_mask[i] =
3487*5113495bSYour Name 						rxdma2host_ring_mask_msi[i];
3488*5113495bSYour Name 		}
3489*5113495bSYour Name 		wlan_cfg_ctx->int_host2rxdma_ring_mask[i] =
3490*5113495bSYour Name 						host2rxdma_ring_mask_msi[i];
3491*5113495bSYour Name 		wlan_cfg_ctx->int_host2rxdma_mon_ring_mask[i] =
3492*5113495bSYour Name 						host2rxdma_mon_ring_mask_msi[i];
3493*5113495bSYour Name 		wlan_cfg_ctx->int_rxdma2host_mon_ring_mask[i] =
3494*5113495bSYour Name 						rxdma2host_mon_ring_mask_msi[i];
3495*5113495bSYour Name 		wlan_cfg_ctx->int_rx_ring_near_full_irq_1_mask[i] =
3496*5113495bSYour Name 					rx_ring_near_full_irq_1_mask_msi[i];
3497*5113495bSYour Name 		wlan_cfg_ctx->int_rx_ring_near_full_irq_2_mask[i] =
3498*5113495bSYour Name 					rx_ring_near_full_irq_2_mask_msi[i];
3499*5113495bSYour Name 		wlan_cfg_ctx->int_tx_ring_near_full_irq_mask[i] =
3500*5113495bSYour Name 					tx_ring_near_full_irq_mask_msi[i];
3501*5113495bSYour Name 	}
3502*5113495bSYour Name }
3503*5113495bSYour Name #endif
3504*5113495bSYour Name 
3505*5113495bSYour Name #else
3506*5113495bSYour Name 
3507*5113495bSYour Name static void
wlan_cfg_mask_assignment(struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx,struct dp_int_mask_assignment * mask_assignment,int interrupt_index,int i,bool is_monitor_mode)3508*5113495bSYour Name wlan_cfg_mask_assignment(struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx,
3509*5113495bSYour Name 			 struct dp_int_mask_assignment *mask_assignment,
3510*5113495bSYour Name 			 int interrupt_index, int i, bool is_monitor_mode)
3511*5113495bSYour Name {
3512*5113495bSYour Name 	int int_host2rxdma_mon_ring_mask;
3513*5113495bSYour Name 	bool host2rxmon_mask_set = false;
3514*5113495bSYour Name 	bool txmon_hw_support = false;
3515*5113495bSYour Name 
3516*5113495bSYour Name 	wlan_cfg_ctx->int_tx_ring_mask[i] =
3517*5113495bSYour Name 		mask_assignment->tx_ring_mask[i];
3518*5113495bSYour Name 	wlan_cfg_ctx->int_rx_mon_ring_mask[i] =
3519*5113495bSYour Name 		mask_assignment->rx_mon_ring_mask[i];
3520*5113495bSYour Name 	wlan_cfg_ctx->int_rx_err_ring_mask[i] =
3521*5113495bSYour Name 		mask_assignment->rx_err_ring_mask[i];
3522*5113495bSYour Name 	wlan_cfg_ctx->int_rx_wbm_rel_ring_mask[i] =
3523*5113495bSYour Name 		mask_assignment->rx_wbm_rel_ring_mask[i];
3524*5113495bSYour Name 	wlan_cfg_ctx->int_reo_status_ring_mask[i] =
3525*5113495bSYour Name 		mask_assignment->reo_status_ring_mask[i];
3526*5113495bSYour Name 	wlan_cfg_ctx->int_ppeds_wbm_release_ring_mask[i] =
3527*5113495bSYour Name 		mask_assignment->ppeds_wbm_release_ring_mask[i];
3528*5113495bSYour Name 	wlan_cfg_ctx->int_ppe2tcl_ring_mask[i] =
3529*5113495bSYour Name 		mask_assignment->ppe2tcl_ring_mask[i];
3530*5113495bSYour Name 	wlan_cfg_ctx->int_reo2ppe_ring_mask[i] =
3531*5113495bSYour Name 		mask_assignment->reo2ppe_ring_mask[i];
3532*5113495bSYour Name 	if (is_monitor_mode) {
3533*5113495bSYour Name 		wlan_cfg_ctx->int_rx_ring_mask[i] = 0;
3534*5113495bSYour Name 		wlan_cfg_ctx->int_rxdma2host_ring_mask[i] = 0;
3535*5113495bSYour Name 	} else {
3536*5113495bSYour Name 		wlan_cfg_ctx->int_rx_ring_mask[i] =
3537*5113495bSYour Name 			mask_assignment->rx_ring_mask[i];
3538*5113495bSYour Name 		wlan_cfg_ctx->int_rxdma2host_ring_mask[i] =
3539*5113495bSYour Name 			mask_assignment->rxdma2host_ring_mask[i];
3540*5113495bSYour Name 	}
3541*5113495bSYour Name 	wlan_cfg_ctx->int_host2rxdma_ring_mask[i] =
3542*5113495bSYour Name 		mask_assignment->host2rxdma_ring_mask[i];
3543*5113495bSYour Name 	wlan_cfg_ctx->int_host2rxdma_mon_ring_mask[i] =
3544*5113495bSYour Name 		mask_assignment->host2rxdma_mon_ring_mask[i];
3545*5113495bSYour Name 	wlan_cfg_ctx->int_rxdma2host_mon_ring_mask[i] =
3546*5113495bSYour Name 		mask_assignment->rxdma2host_mon_ring_mask[i];
3547*5113495bSYour Name 	wlan_cfg_ctx->int_rx_ring_near_full_irq_1_mask[i] =
3548*5113495bSYour Name 		mask_assignment->rx_ring_near_full_irq_1_mask[i];
3549*5113495bSYour Name 	wlan_cfg_ctx->int_rx_ring_near_full_irq_2_mask[i] =
3550*5113495bSYour Name 		mask_assignment->rx_ring_near_full_irq_2_mask[i];
3551*5113495bSYour Name 	wlan_cfg_ctx->int_tx_ring_near_full_irq_mask[i] =
3552*5113495bSYour Name 		mask_assignment->tx_ring_near_full_irq_mask[i];
3553*5113495bSYour Name 
3554*5113495bSYour Name 	txmon_hw_support = wlan_cfg_get_txmon_hw_support(wlan_cfg_ctx);
3555*5113495bSYour Name 	if (txmon_hw_support) {
3556*5113495bSYour Name 		wlan_cfg_ctx->int_tx_mon_ring_mask[i] =
3557*5113495bSYour Name 			mask_assignment->tx_mon_ring_mask[i];
3558*5113495bSYour Name 		wlan_cfg_ctx->int_host2txmon_ring_mask[i] =
3559*5113495bSYour Name 			mask_assignment->host2txmon_ring_mask[i];
3560*5113495bSYour Name 		int_host2rxdma_mon_ring_mask =
3561*5113495bSYour Name 			mask_assignment->host2rxdma_mon_ring_mask[i];
3562*5113495bSYour Name 		if (int_host2rxdma_mon_ring_mask && !host2rxmon_mask_set) {
3563*5113495bSYour Name 			wlan_cfg_ctx->int_host2rxdma_mon_ring_mask[interrupt_index] =
3564*5113495bSYour Name 				mask_assignment->host2rxdma_mon_ring_mask[i];
3565*5113495bSYour Name 			host2rxmon_mask_set = true;
3566*5113495bSYour Name 		}
3567*5113495bSYour Name 	} else {
3568*5113495bSYour Name 		wlan_cfg_ctx->int_tx_mon_ring_mask[i] = 0;
3569*5113495bSYour Name 		wlan_cfg_ctx->int_host2txmon_ring_mask[i] = 0;
3570*5113495bSYour Name 		wlan_cfg_ctx->int_host2rxdma_mon_ring_mask[i] =
3571*5113495bSYour Name 			mask_assignment->host2rxdma_mon_ring_mask[i];
3572*5113495bSYour Name 	}
3573*5113495bSYour Name 	wlan_cfg_ctx->int_umac_reset_intr_mask[i] =
3574*5113495bSYour Name 		mask_assignment->umac_reset_intr_mask[i];
3575*5113495bSYour Name }
3576*5113495bSYour Name 
wlan_cfg_fill_interrupt_mask(struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx,int num_dp_msi,int interrupt_mode,bool is_monitor_mode,bool ppeds_attached,bool umac_reset_support)3577*5113495bSYour Name void wlan_cfg_fill_interrupt_mask(struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx,
3578*5113495bSYour Name 				  int num_dp_msi,
3579*5113495bSYour Name 				  int interrupt_mode,
3580*5113495bSYour Name 				  bool is_monitor_mode,
3581*5113495bSYour Name 				  bool ppeds_attached,
3582*5113495bSYour Name 				  bool umac_reset_support)
3583*5113495bSYour Name {
3584*5113495bSYour Name 	int i = 0;
3585*5113495bSYour Name 	int interrupt_index = 0;
3586*5113495bSYour Name 	struct dp_int_mask_assignment *mask_assignment;
3587*5113495bSYour Name 
3588*5113495bSYour Name 	if(interrupt_mode == DP_INTR_INTEGRATED) {
3589*5113495bSYour Name 		interrupt_index = 0;
3590*5113495bSYour Name 	} else if (interrupt_mode == DP_INTR_MSI || interrupt_mode ==
3591*5113495bSYour Name 		   DP_INTR_POLL) {
3592*5113495bSYour Name 		interrupt_index = num_dp_msi;
3593*5113495bSYour Name 	} else {
3594*5113495bSYour Name 		qdf_err("Interrupt mode %d", interrupt_mode);
3595*5113495bSYour Name 	}
3596*5113495bSYour Name 
3597*5113495bSYour Name 	for (i = 0; i < WLAN_CFG_INT_NUM_CONTEXTS; i++) {
3598*5113495bSYour Name 		if (!ppeds_attached) {
3599*5113495bSYour Name 			if (interrupt_index == 8 && umac_reset_support)
3600*5113495bSYour Name 				mask_assignment = &dp_ur_mask_assignment_8msi;
3601*5113495bSYour Name 			else
3602*5113495bSYour Name 				mask_assignment =
3603*5113495bSYour Name 					&dp_mask_assignment[interrupt_index];
3604*5113495bSYour Name 
3605*5113495bSYour Name 		} else if (interrupt_index == 8) {
3606*5113495bSYour Name 			mask_assignment = &dp_ds_mask_assignment_8msi;
3607*5113495bSYour Name 		} else if (interrupt_index == 9) {
3608*5113495bSYour Name 			mask_assignment = &dp_ds_mask_assignment_9msi;
3609*5113495bSYour Name 		} else {
3610*5113495bSYour Name 			mask_assignment = &dp_mask_assignment[interrupt_index];
3611*5113495bSYour Name 		}
3612*5113495bSYour Name 
3613*5113495bSYour Name 		wlan_cfg_mask_assignment(wlan_cfg_ctx, mask_assignment,
3614*5113495bSYour Name 					 interrupt_index, i, is_monitor_mode);
3615*5113495bSYour Name 	}
3616*5113495bSYour Name }
3617*5113495bSYour Name #endif
3618*5113495bSYour Name 
3619*5113495bSYour Name #ifdef IPA_OFFLOAD
3620*5113495bSYour Name 
3621*5113495bSYour Name #define WLAN_CFG_IPA_ENABLE_MASK BIT(0)
3622*5113495bSYour Name #ifdef IPA_WDI3_TX_TWO_PIPES
3623*5113495bSYour Name /**
3624*5113495bSYour Name  * wlan_soc_ipa_cfg_attach() - Update ipa tx and tx alt config
3625*5113495bSYour Name  *  in dp soc cfg context
3626*5113495bSYour Name  * @psoc: Object manager psoc
3627*5113495bSYour Name  * @wlan_cfg_ctx: dp soc cfg ctx
3628*5113495bSYour Name  *
3629*5113495bSYour Name  * Return: None
3630*5113495bSYour Name  */
3631*5113495bSYour Name static void
wlan_soc_ipa_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3632*5113495bSYour Name wlan_soc_ipa_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3633*5113495bSYour Name 			struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3634*5113495bSYour Name {
3635*5113495bSYour Name 	if (ucfg_ipa_get_pld_enable()) {
3636*5113495bSYour Name 		wlan_cfg_ctx->ipa_enabled =
3637*5113495bSYour Name 			(get_ipa_config((struct wlan_objmgr_psoc *)psoc) &
3638*5113495bSYour Name 			 WLAN_CFG_IPA_ENABLE_MASK);
3639*5113495bSYour Name 		dp_info("is IPA enabled from ini: %d",
3640*5113495bSYour Name 			wlan_cfg_ctx->ipa_enabled);
3641*5113495bSYour Name 	} else {
3642*5113495bSYour Name 		wlan_cfg_ctx->ipa_enabled = false;
3643*5113495bSYour Name 		dp_info("IPA disabled from platform driver");
3644*5113495bSYour Name 	}
3645*5113495bSYour Name 	wlan_cfg_ctx->ipa_tx_ring_size =
3646*5113495bSYour Name 			cfg_get(psoc, CFG_DP_IPA_TX_RING_SIZE);
3647*5113495bSYour Name 	wlan_cfg_ctx->ipa_tx_comp_ring_size =
3648*5113495bSYour Name 			cfg_get(psoc, CFG_DP_IPA_TX_COMP_RING_SIZE);
3649*5113495bSYour Name 	wlan_cfg_ctx->ipa_tx_alt_ring_size =
3650*5113495bSYour Name 			cfg_get(psoc, CFG_DP_IPA_TX_ALT_RING_SIZE);
3651*5113495bSYour Name 	wlan_cfg_ctx->ipa_tx_alt_comp_ring_size =
3652*5113495bSYour Name 			cfg_get(psoc, CFG_DP_IPA_TX_ALT_COMP_RING_SIZE);
3653*5113495bSYour Name }
3654*5113495bSYour Name #else /* !IPA_WDI3_TX_TWO_PIPES */
3655*5113495bSYour Name /**
3656*5113495bSYour Name  * wlan_soc_ipa_cfg_attach() - Update ipa config in dp soc
3657*5113495bSYour Name  *  cfg context
3658*5113495bSYour Name  * @psoc: Object manager psoc
3659*5113495bSYour Name  * @wlan_cfg_ctx: dp soc cfg ctx
3660*5113495bSYour Name  *
3661*5113495bSYour Name  * Return: None
3662*5113495bSYour Name  */
3663*5113495bSYour Name static void
wlan_soc_ipa_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3664*5113495bSYour Name wlan_soc_ipa_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3665*5113495bSYour Name 			struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3666*5113495bSYour Name {
3667*5113495bSYour Name 	if (ucfg_ipa_get_pld_enable()) {
3668*5113495bSYour Name 		wlan_cfg_ctx->ipa_enabled =
3669*5113495bSYour Name 			(get_ipa_config((struct wlan_objmgr_psoc *)psoc) &
3670*5113495bSYour Name 			 WLAN_CFG_IPA_ENABLE_MASK);
3671*5113495bSYour Name 		dp_info("is IPA enabled from ini: %d",
3672*5113495bSYour Name 			wlan_cfg_ctx->ipa_enabled);
3673*5113495bSYour Name 	} else {
3674*5113495bSYour Name 		wlan_cfg_ctx->ipa_enabled = false;
3675*5113495bSYour Name 		dp_info("IPA disabled from platform driver");
3676*5113495bSYour Name 	}
3677*5113495bSYour Name 	wlan_cfg_ctx->ipa_tx_ring_size =
3678*5113495bSYour Name 			cfg_get(psoc, CFG_DP_IPA_TX_RING_SIZE);
3679*5113495bSYour Name 	wlan_cfg_ctx->ipa_tx_comp_ring_size =
3680*5113495bSYour Name 			cfg_get(psoc, CFG_DP_IPA_TX_COMP_RING_SIZE);
3681*5113495bSYour Name }
3682*5113495bSYour Name #endif /* IPA_WDI3_TX_TWO_PIPES */
3683*5113495bSYour Name #else /* !IPA_OFFLOAD */
3684*5113495bSYour Name static inline void
wlan_soc_ipa_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3685*5113495bSYour Name wlan_soc_ipa_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3686*5113495bSYour Name 			struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3687*5113495bSYour Name {
3688*5113495bSYour Name }
3689*5113495bSYour Name #endif
3690*5113495bSYour Name 
3691*5113495bSYour Name #ifdef DP_HW_COOKIE_CONVERT_EXCEPTION
3692*5113495bSYour Name static void
wlan_soc_hw_cc_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3693*5113495bSYour Name wlan_soc_hw_cc_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3694*5113495bSYour Name 			  struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3695*5113495bSYour Name {
3696*5113495bSYour Name 	wlan_cfg_ctx->hw_cc_enabled =
3697*5113495bSYour Name 			cfg_get(psoc, CFG_DP_HW_CC_ENABLE);
3698*5113495bSYour Name }
3699*5113495bSYour Name #else
3700*5113495bSYour Name static void
wlan_soc_hw_cc_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3701*5113495bSYour Name wlan_soc_hw_cc_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3702*5113495bSYour Name 			  struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3703*5113495bSYour Name {
3704*5113495bSYour Name 	wlan_cfg_ctx->hw_cc_enabled = true;
3705*5113495bSYour Name }
3706*5113495bSYour Name #endif
3707*5113495bSYour Name 
3708*5113495bSYour Name #ifdef WLAN_SUPPORT_PPEDS
3709*5113495bSYour Name /**
3710*5113495bSYour Name  * wlan_soc_ppe_cfg_attach() - Update ppe config in dp soc
3711*5113495bSYour Name  *  cfg context
3712*5113495bSYour Name  * @psoc: Object manager psoc
3713*5113495bSYour Name  * @wlan_cfg_ctx: dp soc cfg ctx
3714*5113495bSYour Name  *
3715*5113495bSYour Name  * Return: None
3716*5113495bSYour Name  */
3717*5113495bSYour Name static void
wlan_soc_ppe_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3718*5113495bSYour Name wlan_soc_ppe_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3719*5113495bSYour Name 			struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3720*5113495bSYour Name {
3721*5113495bSYour Name 	uint32_t ppeds_cfg;
3722*5113495bSYour Name 	uint8_t psoc_id;
3723*5113495bSYour Name 
3724*5113495bSYour Name 	/*
3725*5113495bSYour Name 	 * The CFG_DP_PPEDS_WIFI_SOC_CFG provides WLAN SoC level PPEDS
3726*5113495bSYour Name 	 * enable/disable support. The bit map position corresponds to
3727*5113495bSYour Name 	 * WLAN SoC position in config/wireless file. With this we can
3728*5113495bSYour Name 	 * configure PPEDS for multiple WLAN SoC having same device ID.
3729*5113495bSYour Name 	 */
3730*5113495bSYour Name 	psoc_id = wlan_psoc_get_id((struct wlan_objmgr_psoc *)psoc);
3731*5113495bSYour Name 	ppeds_cfg = cfg_get(psoc, CFG_DP_PPEDS_WIFI_SOC_CFG);
3732*5113495bSYour Name 	if (!(ppeds_cfg & (1 << psoc_id))) {
3733*5113495bSYour Name 		dp_info("ppeds_cfg is disabled for psoc_id  %d", psoc_id);
3734*5113495bSYour Name 		return;
3735*5113495bSYour Name 	}
3736*5113495bSYour Name 
3737*5113495bSYour Name 	/*
3738*5113495bSYour Name 	 * The CFG_DP_PPEDS_ENABLE provides ppeds enable/disable support
3739*5113495bSYour Name 	 * based on device ID in corresponding INI file.
3740*5113495bSYour Name 	 */
3741*5113495bSYour Name 	wlan_cfg_ctx->ppeds_enable = cfg_get(psoc, CFG_DP_PPEDS_ENABLE);
3742*5113495bSYour Name 	if (!wlan_cfg_ctx->ppeds_enable)
3743*5113495bSYour Name 		return;
3744*5113495bSYour Name 
3745*5113495bSYour Name 	wlan_cfg_ctx->reo2ppe_ring = cfg_get(psoc, CFG_DP_REO2PPE_RING);
3746*5113495bSYour Name 	wlan_cfg_ctx->ppe2tcl_ring = cfg_get(psoc, CFG_DP_PPE2TCL_RING);
3747*5113495bSYour Name 	wlan_cfg_ctx->ppeds_num_tx_desc = cfg_get(psoc, CFG_DP_PPEDS_TX_DESC);
3748*5113495bSYour Name 	wlan_cfg_ctx->ppeds_tx_desc_hotlist_len =
3749*5113495bSYour Name 				cfg_get(psoc, CFG_DP_PPEDS_TX_DESC_HOTLIST_LEN);
3750*5113495bSYour Name 	wlan_cfg_ctx->ppeds_tx_comp_napi_budget =
3751*5113495bSYour Name 				cfg_get(psoc, CFG_DP_PPEDS_TX_CMP_NAPI_BUDGET);
3752*5113495bSYour Name }
3753*5113495bSYour Name #else
3754*5113495bSYour Name static inline void
wlan_soc_ppe_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3755*5113495bSYour Name wlan_soc_ppe_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3756*5113495bSYour Name 			struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3757*5113495bSYour Name {
3758*5113495bSYour Name }
3759*5113495bSYour Name #endif
3760*5113495bSYour Name 
3761*5113495bSYour Name #if defined(WLAN_FEATURE_11BE_MLO) && defined(WLAN_MLO_MULTI_CHIP)
3762*5113495bSYour Name /**
3763*5113495bSYour Name  * wlan_cfg_get_lsb_set_pos() - returns position of LSB which is set
3764*5113495bSYour Name  * @val: value to test
3765*5113495bSYour Name  *
3766*5113495bSYour Name  * Return: position of LSB which is set
3767*5113495bSYour Name  */
wlan_cfg_get_lsb_set_pos(uint8_t val)3768*5113495bSYour Name static uint8_t wlan_cfg_get_lsb_set_pos(uint8_t val)
3769*5113495bSYour Name {
3770*5113495bSYour Name 	uint8_t pos = 0;
3771*5113495bSYour Name 
3772*5113495bSYour Name 	while (pos < 8) {
3773*5113495bSYour Name 		if (val & (1 << pos))
3774*5113495bSYour Name 			return pos;
3775*5113495bSYour Name 
3776*5113495bSYour Name 		pos++;
3777*5113495bSYour Name 	}
3778*5113495bSYour Name 
3779*5113495bSYour Name 	return 0;
3780*5113495bSYour Name }
3781*5113495bSYour Name 
3782*5113495bSYour Name /**
3783*5113495bSYour Name  * wlan_multi_soc_mlo_cfg_attach() - Update multi soc mlo config in dp soc
3784*5113495bSYour Name  *  cfg context
3785*5113495bSYour Name  * @psoc: Object manager psoc
3786*5113495bSYour Name  * @wlan_cfg_ctx: dp soc cfg ctx
3787*5113495bSYour Name  *
3788*5113495bSYour Name  * Return: None
3789*5113495bSYour Name  */
3790*5113495bSYour Name static void
wlan_multi_soc_mlo_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3791*5113495bSYour Name wlan_multi_soc_mlo_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3792*5113495bSYour Name 			      struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3793*5113495bSYour Name {
3794*5113495bSYour Name 	uint8_t rx_ring_map;
3795*5113495bSYour Name 
3796*5113495bSYour Name 	rx_ring_map =
3797*5113495bSYour Name 		cfg_get(psoc, CFG_DP_MLO_RX_RING_MAP);
3798*5113495bSYour Name 	wlan_cfg_ctx->mlo_chip_rx_ring_map = rx_ring_map;
3799*5113495bSYour Name }
3800*5113495bSYour Name #else
3801*5113495bSYour Name static inline void
wlan_multi_soc_mlo_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3802*5113495bSYour Name wlan_multi_soc_mlo_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3803*5113495bSYour Name 			      struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3804*5113495bSYour Name {
3805*5113495bSYour Name }
3806*5113495bSYour Name #endif
3807*5113495bSYour Name 
3808*5113495bSYour Name #ifdef WLAN_FEATURE_11BE_MLO
3809*5113495bSYour Name /**
3810*5113495bSYour Name  * wlan_soc_mlo_cfg_attach() - Update mlo config in dp soc
3811*5113495bSYour Name  *  cfg context
3812*5113495bSYour Name  * @psoc: Object manager psoc
3813*5113495bSYour Name  * @wlan_cfg_ctx: dp soc cfg ctx
3814*5113495bSYour Name  *
3815*5113495bSYour Name  * Return: None
3816*5113495bSYour Name  */
3817*5113495bSYour Name static void
wlan_soc_mlo_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3818*5113495bSYour Name wlan_soc_mlo_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3819*5113495bSYour Name 			struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3820*5113495bSYour Name {
3821*5113495bSYour Name 	wlan_multi_soc_mlo_cfg_attach(psoc, wlan_cfg_ctx);
3822*5113495bSYour Name }
3823*5113495bSYour Name #else
3824*5113495bSYour Name static inline void
wlan_soc_mlo_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3825*5113495bSYour Name wlan_soc_mlo_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3826*5113495bSYour Name 			struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3827*5113495bSYour Name {
3828*5113495bSYour Name }
3829*5113495bSYour Name #endif
3830*5113495bSYour Name 
3831*5113495bSYour Name #ifdef QCA_VDEV_STATS_HW_OFFLOAD_SUPPORT
3832*5113495bSYour Name /**
3833*5113495bSYour Name  * wlan_soc_vdev_hw_stats_cfg_attach() - Update hw vdev stats config in dp soc
3834*5113495bSYour Name  *  cfg context
3835*5113495bSYour Name  * @psoc: Object manager psoc
3836*5113495bSYour Name  * @wlan_cfg_ctx: dp soc cfg ctx
3837*5113495bSYour Name  *
3838*5113495bSYour Name  * Return: None
3839*5113495bSYour Name  */
3840*5113495bSYour Name static void
wlan_soc_vdev_hw_stats_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3841*5113495bSYour Name wlan_soc_vdev_hw_stats_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3842*5113495bSYour Name 				  struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3843*5113495bSYour Name {
3844*5113495bSYour Name 	wlan_cfg_ctx->vdev_stats_hw_offload_config = cfg_get(psoc,
3845*5113495bSYour Name 					CFG_DP_VDEV_STATS_HW_OFFLOAD_CONFIG);
3846*5113495bSYour Name 	wlan_cfg_ctx->vdev_stats_hw_offload_timer = cfg_get(psoc,
3847*5113495bSYour Name 					CFG_DP_VDEV_STATS_HW_OFFLOAD_TIMER);
3848*5113495bSYour Name }
3849*5113495bSYour Name #else
3850*5113495bSYour Name static void
wlan_soc_vdev_hw_stats_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3851*5113495bSYour Name wlan_soc_vdev_hw_stats_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3852*5113495bSYour Name 				  struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3853*5113495bSYour Name {
3854*5113495bSYour Name }
3855*5113495bSYour Name #endif
3856*5113495bSYour Name 
3857*5113495bSYour Name #ifdef WLAN_TX_PKT_CAPTURE_ENH
wlan_soc_tx_capt_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3858*5113495bSYour Name static void wlan_soc_tx_capt_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3859*5113495bSYour Name 				struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3860*5113495bSYour Name {
3861*5113495bSYour Name 	int i = 0;
3862*5113495bSYour Name 	uint8_t rbm_id = 0;
3863*5113495bSYour Name 
3864*5113495bSYour Name 	wlan_cfg_ctx->tx_capt_max_mem_allowed =
3865*5113495bSYour Name 		cfg_get(psoc, CFG_DP_TX_CAPT_MAX_MEM_MB) * 1024 * 1024;
3866*5113495bSYour Name 
3867*5113495bSYour Name 	for (i = 0; i < MAX_PDEV_CNT; i++) {
3868*5113495bSYour Name 		switch (i) {
3869*5113495bSYour Name 		case 0:
3870*5113495bSYour Name 			rbm_id = cfg_get(psoc, CFG_DP_TX_CAPT_RADIO_0_RBM_ID);
3871*5113495bSYour Name 		break;
3872*5113495bSYour Name 		case 1:
3873*5113495bSYour Name 			rbm_id = cfg_get(psoc, CFG_DP_TX_CAPT_RADIO_1_RBM_ID);
3874*5113495bSYour Name 		break;
3875*5113495bSYour Name 		case 2:
3876*5113495bSYour Name 			rbm_id = cfg_get(psoc, CFG_DP_TX_CAPT_RADIO_2_RBM_ID);
3877*5113495bSYour Name 		break;
3878*5113495bSYour Name 		default:
3879*5113495bSYour Name 			rbm_id = cfg_get(psoc, CFG_DP_TX_CAPT_RADIO_3_RBM_ID);
3880*5113495bSYour Name 		break;
3881*5113495bSYour Name 		}
3882*5113495bSYour Name 
3883*5113495bSYour Name 		wlan_cfg_ctx->tx_capt_rbm_id[i] = rbm_id;
3884*5113495bSYour Name 	}
3885*5113495bSYour Name }
3886*5113495bSYour Name #else
wlan_soc_tx_capt_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3887*5113495bSYour Name static void wlan_soc_tx_capt_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3888*5113495bSYour Name 				struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3889*5113495bSYour Name {
3890*5113495bSYour Name }
3891*5113495bSYour Name #endif
3892*5113495bSYour Name 
3893*5113495bSYour Name #ifdef WLAN_FEATURE_LOCAL_PKT_CAPTURE
3894*5113495bSYour Name static void
wlan_soc_local_pkt_capture_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3895*5113495bSYour Name wlan_soc_local_pkt_capture_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3896*5113495bSYour Name 				      struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3897*5113495bSYour Name {
3898*5113495bSYour Name 	wlan_cfg_ctx->local_pkt_capture =
3899*5113495bSYour Name 				cfg_get(psoc, CFG_DP_LOCAL_PKT_CAPTURE);
3900*5113495bSYour Name }
3901*5113495bSYour Name #else
3902*5113495bSYour Name static void
wlan_soc_local_pkt_capture_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3903*5113495bSYour Name wlan_soc_local_pkt_capture_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3904*5113495bSYour Name 				      struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3905*5113495bSYour Name {
3906*5113495bSYour Name }
3907*5113495bSYour Name #endif
3908*5113495bSYour Name 
3909*5113495bSYour Name void
wlan_cfg_soc_update_tgt_params(struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx,struct cdp_ctrl_objmgr_psoc * psoc)3910*5113495bSYour Name wlan_cfg_soc_update_tgt_params(struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx,
3911*5113495bSYour Name 			       struct cdp_ctrl_objmgr_psoc *psoc)
3912*5113495bSYour Name {
3913*5113495bSYour Name 	wlan_cfg_ctx->reo_rings_mapping = cfg_get(psoc,
3914*5113495bSYour Name 						  CFG_DP_REO_RINGS_MAP);
3915*5113495bSYour Name }
3916*5113495bSYour Name 
3917*5113495bSYour Name #ifdef CONFIG_SAWF_STATS
3918*5113495bSYour Name /**
3919*5113495bSYour Name  * wlan_soc_sawf_stats_cfg_attach() - Update sawf stats config in dp soc
3920*5113495bSYour Name  *  cfg context
3921*5113495bSYour Name  * @psoc: Object manager psoc
3922*5113495bSYour Name  * @wlan_cfg_ctx: dp soc cfg ctx
3923*5113495bSYour Name  *
3924*5113495bSYour Name  * Return: None
3925*5113495bSYour Name  */
3926*5113495bSYour Name static void
wlan_soc_sawf_stats_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3927*5113495bSYour Name wlan_soc_sawf_stats_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3928*5113495bSYour Name 			       struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3929*5113495bSYour Name {
3930*5113495bSYour Name 	wlan_cfg_ctx->sawf_stats = cfg_get(psoc, CFG_DP_SAWF_STATS);
3931*5113495bSYour Name }
3932*5113495bSYour Name 
wlan_cfg_get_sawf_stats_config(struct wlan_cfg_dp_soc_ctxt * cfg)3933*5113495bSYour Name uint8_t wlan_cfg_get_sawf_stats_config(struct wlan_cfg_dp_soc_ctxt *cfg)
3934*5113495bSYour Name {
3935*5113495bSYour Name 	return cfg->sawf_stats;
3936*5113495bSYour Name }
3937*5113495bSYour Name 
3938*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_sawf_stats_config);
3939*5113495bSYour Name 
wlan_cfg_set_sawf_stats_config(struct wlan_cfg_dp_soc_ctxt * cfg,uint8_t val)3940*5113495bSYour Name void wlan_cfg_set_sawf_stats_config(struct wlan_cfg_dp_soc_ctxt *cfg,
3941*5113495bSYour Name 				    uint8_t val)
3942*5113495bSYour Name {
3943*5113495bSYour Name 	cfg->sawf_stats = val;
3944*5113495bSYour Name }
3945*5113495bSYour Name #else
3946*5113495bSYour Name static void
wlan_soc_sawf_stats_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3947*5113495bSYour Name wlan_soc_sawf_stats_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3948*5113495bSYour Name 			       struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3949*5113495bSYour Name {
3950*5113495bSYour Name }
3951*5113495bSYour Name 
wlan_cfg_get_sawf_stats_config(struct wlan_cfg_dp_soc_ctxt * cfg)3952*5113495bSYour Name uint8_t wlan_cfg_get_sawf_stats_config(struct wlan_cfg_dp_soc_ctxt *cfg)
3953*5113495bSYour Name {
3954*5113495bSYour Name 	return 0;
3955*5113495bSYour Name }
3956*5113495bSYour Name 
3957*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_sawf_stats_config);
3958*5113495bSYour Name 
wlan_cfg_set_sawf_stats_config(struct wlan_cfg_dp_soc_ctxt * cfg,uint8_t val)3959*5113495bSYour Name void wlan_cfg_set_sawf_stats_config(struct wlan_cfg_dp_soc_ctxt *cfg,
3960*5113495bSYour Name 				    uint8_t val)
3961*5113495bSYour Name {
3962*5113495bSYour Name }
3963*5113495bSYour Name #endif /* CONFIG_SAWF_STATS */
3964*5113495bSYour Name 
3965*5113495bSYour Name #ifdef DP_TX_PACKET_INSPECT_FOR_ILP
3966*5113495bSYour Name /**
3967*5113495bSYour Name  * wlan_soc_tx_packet_inspect_attach() - Update TX packet inspection config
3968*5113495bSYour Name  * @psoc: object manager psoc
3969*5113495bSYour Name  * @wlan_cfg_ctx: dp soc cfg ctx
3970*5113495bSYour Name  *
3971*5113495bSYour Name  * Return: None
3972*5113495bSYour Name  */
3973*5113495bSYour Name static void
wlan_soc_tx_packet_inspect_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3974*5113495bSYour Name wlan_soc_tx_packet_inspect_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3975*5113495bSYour Name 				  struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3976*5113495bSYour Name {
3977*5113495bSYour Name 	wlan_cfg_ctx->tx_pkt_inspect_for_ilp =
3978*5113495bSYour Name 			cfg_get(psoc, CFG_TX_PKT_INSPECT_FOR_ILP);
3979*5113495bSYour Name }
3980*5113495bSYour Name #else
3981*5113495bSYour Name static void
wlan_soc_tx_packet_inspect_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3982*5113495bSYour Name wlan_soc_tx_packet_inspect_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3983*5113495bSYour Name 				  struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3984*5113495bSYour Name {
3985*5113495bSYour Name }
3986*5113495bSYour Name #endif
3987*5113495bSYour Name 
3988*5113495bSYour Name #ifdef DP_UMAC_HW_RESET_SUPPORT
3989*5113495bSYour Name /**
3990*5113495bSYour Name  * wlan_soc_umac_reset_cfg_attach() - Update umac reset buffer window config
3991*5113495bSYour Name  * @psoc: object manager psoc
3992*5113495bSYour Name  * @wlan_cfg_ctx: dp soc cfg ctx
3993*5113495bSYour Name  *
3994*5113495bSYour Name  * Return: None
3995*5113495bSYour Name  */
3996*5113495bSYour Name static void
wlan_soc_umac_reset_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)3997*5113495bSYour Name wlan_soc_umac_reset_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
3998*5113495bSYour Name 			       struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
3999*5113495bSYour Name {
4000*5113495bSYour Name 	wlan_cfg_ctx->umac_reset_buffer_window =
4001*5113495bSYour Name 		cfg_get(psoc, CFG_DP_UMAC_RESET_BUFFER_WINDOW);
4002*5113495bSYour Name }
4003*5113495bSYour Name #else
4004*5113495bSYour Name static void
wlan_soc_umac_reset_cfg_attach(struct cdp_ctrl_objmgr_psoc * psoc,struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)4005*5113495bSYour Name wlan_soc_umac_reset_cfg_attach(struct cdp_ctrl_objmgr_psoc *psoc,
4006*5113495bSYour Name 			       struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
4007*5113495bSYour Name {
4008*5113495bSYour Name }
4009*5113495bSYour Name #endif /* DP_UMAC_HW_RESET_SUPPORT */
4010*5113495bSYour Name 
4011*5113495bSYour Name #ifdef WLAN_SOFTUMAC_SUPPORT
4012*5113495bSYour Name struct wlan_cfg_dp_soc_ctxt *
wlan_cfg_soc_attach(struct cdp_ctrl_objmgr_psoc * psoc)4013*5113495bSYour Name wlan_cfg_soc_attach(struct cdp_ctrl_objmgr_psoc *psoc)
4014*5113495bSYour Name {
4015*5113495bSYour Name 	struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx =
4016*5113495bSYour Name 		qdf_mem_malloc(sizeof(struct wlan_cfg_dp_soc_ctxt));
4017*5113495bSYour Name 	uint32_t gro_bit_set;
4018*5113495bSYour Name 
4019*5113495bSYour Name 	if (!wlan_cfg_ctx)
4020*5113495bSYour Name 		return NULL;
4021*5113495bSYour Name 
4022*5113495bSYour Name 	wlan_cfg_ctx->rxdma1_enable = WLAN_CFG_RXDMA1_ENABLE;
4023*5113495bSYour Name 	wlan_cfg_ctx->num_int_ctxts = WLAN_CFG_INT_NUM_CONTEXTS;
4024*5113495bSYour Name 	wlan_cfg_ctx->max_clients = cfg_get(psoc, CFG_DP_MAX_CLIENTS);
4025*5113495bSYour Name 	wlan_cfg_ctx->max_alloc_size = cfg_get(psoc, CFG_DP_MAX_ALLOC_SIZE);
4026*5113495bSYour Name 	wlan_cfg_ctx->per_pdev_lmac_ring = cfg_get(psoc, CFG_DP_PDEV_LMAC_RING);
4027*5113495bSYour Name 	wlan_cfg_ctx->num_tx_desc_pool = MAX_TXDESC_POOLS;
4028*5113495bSYour Name 	wlan_cfg_ctx->num_tx_ext_desc_pool = cfg_get(psoc,
4029*5113495bSYour Name 						     CFG_DP_TX_EXT_DESC_POOLS);
4030*5113495bSYour Name 	wlan_cfg_ctx->num_tx_desc = cfg_get(psoc, CFG_DP_TX_DESC);
4031*5113495bSYour Name 	wlan_cfg_ctx->num_tx_spl_desc = cfg_get(psoc, CFG_DP_TX_SPL_DESC);
4032*5113495bSYour Name 	wlan_cfg_ctx->min_tx_desc = WLAN_CFG_NUM_TX_DESC_MIN;
4033*5113495bSYour Name 	wlan_cfg_ctx->num_tx_ext_desc = cfg_get(psoc, CFG_DP_TX_EXT_DESC);
4034*5113495bSYour Name 	wlan_cfg_ctx->htt_packet_type = cfg_get(psoc, CFG_DP_HTT_PACKET_TYPE);
4035*5113495bSYour Name 	wlan_cfg_ctx->max_peer_id = cfg_get(psoc, CFG_DP_MAX_PEER_ID);
4036*5113495bSYour Name 
4037*5113495bSYour Name 	wlan_cfg_ctx->int_batch_threshold_tx =
4038*5113495bSYour Name 			cfg_get(psoc, CFG_DP_INT_BATCH_THRESHOLD_TX);
4039*5113495bSYour Name 	wlan_cfg_ctx->int_timer_threshold_tx =
4040*5113495bSYour Name 			cfg_get(psoc, CFG_DP_INT_TIMER_THRESHOLD_TX);
4041*5113495bSYour Name 	wlan_cfg_ctx->int_batch_threshold_rx =
4042*5113495bSYour Name 			cfg_get(psoc, CFG_DP_INT_BATCH_THRESHOLD_RX);
4043*5113495bSYour Name 	wlan_cfg_ctx->int_timer_threshold_rx =
4044*5113495bSYour Name 			cfg_get(psoc, CFG_DP_INT_TIMER_THRESHOLD_RX);
4045*5113495bSYour Name 	wlan_cfg_ctx->int_batch_threshold_other =
4046*5113495bSYour Name 		cfg_get(psoc, CFG_DP_INT_BATCH_THRESHOLD_OTHER);
4047*5113495bSYour Name 	wlan_cfg_ctx->int_timer_threshold_other =
4048*5113495bSYour Name 		cfg_get(psoc, CFG_DP_INT_TIMER_THRESHOLD_OTHER);
4049*5113495bSYour Name 	wlan_cfg_ctx->int_batch_threshold_mon_dest =
4050*5113495bSYour Name 		cfg_get(psoc, CFG_DP_INT_BATCH_THRESHOLD_MON_DEST);
4051*5113495bSYour Name 	wlan_cfg_ctx->int_timer_threshold_mon_dest =
4052*5113495bSYour Name 		cfg_get(psoc, CFG_DP_INT_TIMER_THRESHOLD_MON_DEST);
4053*5113495bSYour Name 	wlan_cfg_ctx->pktlog_buffer_size =
4054*5113495bSYour Name 		cfg_get(psoc, CFG_DP_PKTLOG_BUFFER_SIZE);
4055*5113495bSYour Name 
4056*5113495bSYour Name 	/*
4057*5113495bSYour Name 	 * This is default mapping and can be overridden by
4058*5113495bSYour Name 	 * HW config received from FW.
4059*5113495bSYour Name 	 */
4060*5113495bSYour Name 	wlan_cfg_set_hw_mac_idx(wlan_cfg_ctx, 0, 0);
4061*5113495bSYour Name 	if (MAX_PDEV_CNT > 1)
4062*5113495bSYour Name 		wlan_cfg_set_hw_mac_idx(wlan_cfg_ctx, 1, 2);
4063*5113495bSYour Name 	if (MAX_PDEV_CNT > 2)
4064*5113495bSYour Name 		wlan_cfg_set_hw_mac_idx(wlan_cfg_ctx, 2, 1);
4065*5113495bSYour Name 
4066*5113495bSYour Name 	wlan_cfg_ctx->base_hw_macid = cfg_get(psoc, CFG_DP_BASE_HW_MAC_ID);
4067*5113495bSYour Name 
4068*5113495bSYour Name 	wlan_cfg_ctx->rx_hash = cfg_get(psoc, CFG_DP_RX_HASH);
4069*5113495bSYour Name 	wlan_cfg_ctx->tso_enabled = cfg_get(psoc, CFG_DP_TSO);
4070*5113495bSYour Name 	wlan_cfg_ctx->lro_enabled = cfg_get(psoc, CFG_DP_LRO);
4071*5113495bSYour Name 	wlan_cfg_ctx->sg_enabled = cfg_get(psoc, CFG_DP_SG);
4072*5113495bSYour Name 	gro_bit_set = cfg_get(psoc, CFG_DP_GRO);
4073*5113495bSYour Name 	if (gro_bit_set & DP_GRO_ENABLE_BIT_SET) {
4074*5113495bSYour Name 		wlan_cfg_ctx->gro_enabled = true;
4075*5113495bSYour Name 		if (gro_bit_set & DP_TC_BASED_DYNAMIC_GRO)
4076*5113495bSYour Name 			wlan_cfg_ctx->tc_based_dynamic_gro = true;
4077*5113495bSYour Name 	}
4078*5113495bSYour Name 	wlan_cfg_ctx->tc_ingress_prio = cfg_get(psoc, CFG_DP_TC_INGRESS_PRIO);
4079*5113495bSYour Name 	wlan_cfg_ctx->ol_tx_csum_enabled = cfg_get(psoc, CFG_DP_OL_TX_CSUM);
4080*5113495bSYour Name 	wlan_cfg_ctx->ol_rx_csum_enabled = cfg_get(psoc, CFG_DP_OL_RX_CSUM);
4081*5113495bSYour Name 	wlan_cfg_ctx->rawmode_enabled = cfg_get(psoc, CFG_DP_RAWMODE);
4082*5113495bSYour Name 	wlan_cfg_ctx->peer_flow_ctrl_enabled =
4083*5113495bSYour Name 			cfg_get(psoc, CFG_DP_PEER_FLOW_CTRL);
4084*5113495bSYour Name 	wlan_cfg_ctx->napi_enabled = cfg_get(psoc, CFG_DP_NAPI);
4085*5113495bSYour Name 	wlan_cfg_ctx->p2p_tcp_udp_checksumoffload =
4086*5113495bSYour Name 			cfg_get(psoc, CFG_DP_P2P_TCP_UDP_CKSUM_OFFLOAD);
4087*5113495bSYour Name 	wlan_cfg_ctx->nan_tcp_udp_checksumoffload =
4088*5113495bSYour Name 			cfg_get(psoc, CFG_DP_NAN_TCP_UDP_CKSUM_OFFLOAD);
4089*5113495bSYour Name 	wlan_cfg_ctx->tcp_udp_checksumoffload =
4090*5113495bSYour Name 			cfg_get(psoc, CFG_DP_TCP_UDP_CKSUM_OFFLOAD);
4091*5113495bSYour Name 	wlan_cfg_ctx->legacy_mode_checksumoffload_disable =
4092*5113495bSYour Name 			cfg_get(psoc, CFG_DP_LEGACY_MODE_CSUM_DISABLE);
4093*5113495bSYour Name 	wlan_cfg_ctx->per_pkt_trace = cfg_get(psoc, CFG_DP_PER_PKT_LOGGING);
4094*5113495bSYour Name 	wlan_cfg_ctx->defrag_timeout_check =
4095*5113495bSYour Name 			cfg_get(psoc, CFG_DP_DEFRAG_TIMEOUT_CHECK);
4096*5113495bSYour Name 	wlan_cfg_ctx->rx_defrag_min_timeout =
4097*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_DEFRAG_TIMEOUT);
4098*5113495bSYour Name 
4099*5113495bSYour Name 	wlan_cfg_ctx->rxdma_refill_ring = cfg_get(psoc,
4100*5113495bSYour Name 						  CFG_DP_RXDMA_REFILL_RING);
4101*5113495bSYour Name 	wlan_cfg_ctx->tx_desc_limit_0 = cfg_get(psoc,
4102*5113495bSYour Name 						CFG_DP_TX_DESC_LIMIT_0);
4103*5113495bSYour Name 	wlan_cfg_ctx->tx_desc_limit_1 = cfg_get(psoc,
4104*5113495bSYour Name 						CFG_DP_TX_DESC_LIMIT_1);
4105*5113495bSYour Name 	wlan_cfg_ctx->tx_desc_limit_2 = cfg_get(psoc,
4106*5113495bSYour Name 						CFG_DP_TX_DESC_LIMIT_2);
4107*5113495bSYour Name 	wlan_cfg_ctx->tx_device_limit = cfg_get(psoc,
4108*5113495bSYour Name 						CFG_DP_TX_DEVICE_LIMIT);
4109*5113495bSYour Name 	wlan_cfg_ctx->tx_spl_device_limit = cfg_get(psoc,
4110*5113495bSYour Name 						    CFG_DP_TX_SPL_DEVICE_LIMIT);
4111*5113495bSYour Name 	wlan_cfg_ctx->tx_sw_internode_queue = cfg_get(psoc,
4112*5113495bSYour Name 						CFG_DP_TX_SW_INTERNODE_QUEUE);
4113*5113495bSYour Name 	wlan_cfg_ctx->rxdma_err_dst_ring = cfg_get(psoc,
4114*5113495bSYour Name 						   CFG_DP_RXDMA_ERR_DST_RING);
4115*5113495bSYour Name 	wlan_cfg_ctx->enable_data_stall_detection =
4116*5113495bSYour Name 		cfg_get(psoc, CFG_DP_ENABLE_DATA_STALL_DETECTION);
4117*5113495bSYour Name 	wlan_cfg_ctx->tx_flow_start_queue_offset =
4118*5113495bSYour Name 		cfg_get(psoc, CFG_DP_TX_FLOW_START_QUEUE_OFFSET);
4119*5113495bSYour Name 	wlan_cfg_ctx->tx_flow_stop_queue_threshold =
4120*5113495bSYour Name 		cfg_get(psoc, CFG_DP_TX_FLOW_STOP_QUEUE_TH);
4121*5113495bSYour Name 	wlan_cfg_ctx->disable_intra_bss_fwd =
4122*5113495bSYour Name 		cfg_get(psoc, CFG_DP_AP_STA_SECURITY_SEPERATION);
4123*5113495bSYour Name 	wlan_cfg_ctx->rx_sw_desc_weight = cfg_get(psoc,
4124*5113495bSYour Name 						   CFG_DP_RX_SW_DESC_WEIGHT);
4125*5113495bSYour Name 	wlan_cfg_ctx->rx_sw_desc_num = cfg_get(psoc,
4126*5113495bSYour Name 						   CFG_DP_RX_SW_DESC_NUM);
4127*5113495bSYour Name 	wlan_cfg_ctx->rx_toeplitz_hash_key = (uint8_t *)rx_fst_toeplitz_key;
4128*5113495bSYour Name 	wlan_cfg_ctx->rx_flow_max_search = WLAN_CFG_RX_FST_MAX_SEARCH;
4129*5113495bSYour Name 	wlan_cfg_ctx->is_rx_flow_tag_enabled =
4130*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_FLOW_TAG_ENABLE);
4131*5113495bSYour Name 	wlan_cfg_ctx->is_rx_flow_search_table_per_pdev =
4132*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_FLOW_SEARCH_TABLE_PER_PDEV);
4133*5113495bSYour Name 	wlan_cfg_ctx->rx_flow_search_table_size =
4134*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_FLOW_SEARCH_TABLE_SIZE);
4135*5113495bSYour Name 	wlan_cfg_ctx->is_rx_mon_protocol_flow_tag_enabled =
4136*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_MON_PROTOCOL_FLOW_TAG_ENABLE);
4137*5113495bSYour Name 	wlan_cfg_ctx->mon_drop_thresh =
4138*5113495bSYour Name 		cfg_get(psoc, CFG_DP_RXDMA_MONITOR_RX_DROP_THRESHOLD);
4139*5113495bSYour Name 	/* TODO: add INI item for RX RINGS MAPPING in RHINE */
4140*5113495bSYour Name 	wlan_cfg_ctx->rx_rings_mapping = 0x7;
4141*5113495bSYour Name 	wlan_cfg_ctx->pext_stats_enabled = cfg_get(psoc, CFG_DP_PEER_EXT_STATS);
4142*5113495bSYour Name 	wlan_cfg_ctx->is_rx_buff_pool_enabled =
4143*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_BUFF_POOL_ENABLE);
4144*5113495bSYour Name 	wlan_cfg_ctx->is_rx_refill_buff_pool_enabled =
4145*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_REFILL_BUFF_POOL_ENABLE);
4146*5113495bSYour Name 	wlan_cfg_ctx->enable_dp_buf_page_frag_alloc =
4147*5113495bSYour Name 			cfg_get(psoc, CFG_DP_BUFS_PAGE_FRAG_ALLOCS);
4148*5113495bSYour Name 	wlan_cfg_ctx->rx_pending_high_threshold =
4149*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_PENDING_HL_THRESHOLD);
4150*5113495bSYour Name 	wlan_cfg_ctx->rx_pending_low_threshold =
4151*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_PENDING_LO_THRESHOLD);
4152*5113495bSYour Name 	wlan_cfg_ctx->is_poll_mode_enabled =
4153*5113495bSYour Name 			cfg_get(psoc, CFG_DP_POLL_MODE_ENABLE);
4154*5113495bSYour Name 	wlan_cfg_ctx->is_swlm_enabled = cfg_get(psoc, CFG_DP_SWLM_ENABLE);
4155*5113495bSYour Name 	wlan_cfg_ctx->fst_in_cmem = cfg_get(psoc, CFG_DP_RX_FST_IN_CMEM);
4156*5113495bSYour Name 	wlan_cfg_ctx->tx_per_pkt_vdev_id_check =
4157*5113495bSYour Name 			cfg_get(psoc, CFG_DP_TX_PER_PKT_VDEV_ID_CHECK);
4158*5113495bSYour Name 	wlan_cfg_ctx->wow_check_rx_pending_enable =
4159*5113495bSYour Name 			cfg_get(psoc, CFG_DP_WOW_CHECK_RX_PENDING);
4160*5113495bSYour Name 	wlan_cfg_ctx->delay_mon_replenish = cfg_get(psoc,
4161*5113495bSYour Name 			CFG_DP_DELAY_MON_REPLENISH);
4162*5113495bSYour Name 	wlan_cfg_ctx->rx_mon_buf_ring_size = cfg_get(psoc,
4163*5113495bSYour Name 					CFG_DP_RXDMA_MONITOR_BUF_RING);
4164*5113495bSYour Name 	wlan_cfg_ctx->tx_mon_buf_ring_size = cfg_get(psoc,
4165*5113495bSYour Name 					CFG_DP_TX_MONITOR_BUF_RING);
4166*5113495bSYour Name 	wlan_soc_ipa_cfg_attach(psoc, wlan_cfg_ctx);
4167*5113495bSYour Name 	wlan_soc_hw_cc_cfg_attach(psoc, wlan_cfg_ctx);
4168*5113495bSYour Name 	wlan_soc_ppe_cfg_attach(psoc, wlan_cfg_ctx);
4169*5113495bSYour Name 	wlan_soc_mlo_cfg_attach(psoc, wlan_cfg_ctx);
4170*5113495bSYour Name 	wlan_soc_vdev_hw_stats_cfg_attach(psoc, wlan_cfg_ctx);
4171*5113495bSYour Name #ifdef WLAN_FEATURE_PKT_CAPTURE_V2
4172*5113495bSYour Name 	wlan_cfg_ctx->pkt_capture_mode = cfg_get(psoc, CFG_PKT_CAPTURE_MODE) &
4173*5113495bSYour Name 						 PKT_CAPTURE_MODE_DATA_ONLY;
4174*5113495bSYour Name #endif
4175*5113495bSYour Name #ifdef WLAN_FEATURE_RX_PREALLOC_BUFFER_POOL
4176*5113495bSYour Name 	wlan_cfg_ctx->rx_refill_buff_pool_size = DP_RX_REFILL_BUFF_POOL_SIZE;
4177*5113495bSYour Name #endif
4178*5113495bSYour Name 	wlan_cfg_ctx->num_rxdma_dst_rings_per_pdev = NUM_RXDMA_RINGS_PER_PDEV;
4179*5113495bSYour Name 	wlan_cfg_ctx->num_rxdma_status_rings_per_pdev =
4180*5113495bSYour Name 					NUM_RXDMA_STATUS_RINGS_PER_PDEV;
4181*5113495bSYour Name 	wlan_soc_tx_capt_cfg_attach(psoc, wlan_cfg_ctx);
4182*5113495bSYour Name 	wlan_cfg_ctx->mpdu_retry_threshold_1 =
4183*5113495bSYour Name 			cfg_get(psoc, CFG_DP_MPDU_RETRY_THRESHOLD_1);
4184*5113495bSYour Name 	wlan_cfg_ctx->mpdu_retry_threshold_2 =
4185*5113495bSYour Name 			cfg_get(psoc, CFG_DP_MPDU_RETRY_THRESHOLD_2);
4186*5113495bSYour Name 
4187*5113495bSYour Name 	wlan_cfg_ctx->napi_scale_factor = cfg_get(psoc,
4188*5113495bSYour Name 						  CFG_DP_NAPI_SCALE_FACTOR);
4189*5113495bSYour Name 	wlan_soc_sawf_stats_cfg_attach(psoc, wlan_cfg_ctx);
4190*5113495bSYour Name 	wlan_cfg_ctx->txmon_sw_peer_filtering =
4191*5113495bSYour Name 			cfg_get(psoc, CFG_DP_TXMON_SW_PEER_FILTERING);
4192*5113495bSYour Name 	wlan_soc_tx_packet_inspect_attach(psoc, wlan_cfg_ctx);
4193*5113495bSYour Name 	wlan_soc_local_pkt_capture_cfg_attach(psoc, wlan_cfg_ctx);
4194*5113495bSYour Name 	wlan_soc_umac_reset_cfg_attach(psoc, wlan_cfg_ctx);
4195*5113495bSYour Name 	wlan_cfg_ctx->rx_buffer_size = cfg_get(psoc, CFG_DP_RX_BUFFER_SIZE);
4196*5113495bSYour Name 	wlan_cfg_ctx->avg_rate_stats_filter_val =
4197*5113495bSYour Name 		cfg_get(psoc, CFG_DP_STATS_AVG_RATE_FILTER);
4198*5113495bSYour Name 	return wlan_cfg_ctx;
4199*5113495bSYour Name }
4200*5113495bSYour Name 
4201*5113495bSYour Name #else
4202*5113495bSYour Name 
4203*5113495bSYour Name struct wlan_cfg_dp_soc_ctxt *
wlan_cfg_soc_attach(struct cdp_ctrl_objmgr_psoc * psoc)4204*5113495bSYour Name wlan_cfg_soc_attach(struct cdp_ctrl_objmgr_psoc *psoc)
4205*5113495bSYour Name {
4206*5113495bSYour Name 	struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx =
4207*5113495bSYour Name 		qdf_mem_malloc(sizeof(struct wlan_cfg_dp_soc_ctxt));
4208*5113495bSYour Name 	uint32_t gro_bit_set;
4209*5113495bSYour Name 
4210*5113495bSYour Name 	if (!wlan_cfg_ctx)
4211*5113495bSYour Name 		return NULL;
4212*5113495bSYour Name 
4213*5113495bSYour Name 	wlan_cfg_ctx->rxdma1_enable = WLAN_CFG_RXDMA1_ENABLE;
4214*5113495bSYour Name 	wlan_cfg_ctx->num_int_ctxts = WLAN_CFG_INT_NUM_CONTEXTS;
4215*5113495bSYour Name 	wlan_cfg_ctx->max_clients = cfg_get(psoc, CFG_DP_MAX_CLIENTS);
4216*5113495bSYour Name 	wlan_cfg_ctx->max_alloc_size = cfg_get(psoc, CFG_DP_MAX_ALLOC_SIZE);
4217*5113495bSYour Name 	wlan_cfg_ctx->per_pdev_tx_ring = cfg_get(psoc, CFG_DP_PDEV_TX_RING);
4218*5113495bSYour Name 	wlan_cfg_ctx->num_reo_dest_rings = cfg_get(psoc, CFG_DP_REO_DEST_RINGS);
4219*5113495bSYour Name 	wlan_cfg_ctx->num_tcl_data_rings = cfg_get(psoc, CFG_DP_TCL_DATA_RINGS);
4220*5113495bSYour Name 	wlan_cfg_ctx->num_tx_comp_rings = cfg_get(psoc, CFG_DP_TX_COMP_RINGS);
4221*5113495bSYour Name 	wlan_cfg_ctx->num_nss_reo_dest_rings =
4222*5113495bSYour Name 				cfg_get(psoc, CFG_DP_NSS_REO_DEST_RINGS);
4223*5113495bSYour Name 	wlan_cfg_ctx->num_nss_tcl_data_rings =
4224*5113495bSYour Name 				cfg_get(psoc, CFG_DP_NSS_TCL_DATA_RINGS);
4225*5113495bSYour Name 	wlan_cfg_ctx->per_pdev_rx_ring = cfg_get(psoc, CFG_DP_PDEV_RX_RING);
4226*5113495bSYour Name 	wlan_cfg_ctx->per_pdev_lmac_ring = cfg_get(psoc, CFG_DP_PDEV_LMAC_RING);
4227*5113495bSYour Name 	wlan_cfg_ctx->num_tx_desc_pool = MAX_TXDESC_POOLS;
4228*5113495bSYour Name 	wlan_cfg_ctx->num_tx_ext_desc_pool = cfg_get(psoc,
4229*5113495bSYour Name 						     CFG_DP_TX_EXT_DESC_POOLS);
4230*5113495bSYour Name 	wlan_cfg_ctx->num_tx_desc = cfg_get(psoc, CFG_DP_TX_DESC);
4231*5113495bSYour Name 	wlan_cfg_ctx->num_tx_spl_desc = cfg_get(psoc, CFG_DP_TX_SPL_DESC);
4232*5113495bSYour Name 	wlan_cfg_ctx->min_tx_desc = WLAN_CFG_NUM_TX_DESC_MIN;
4233*5113495bSYour Name 	wlan_cfg_ctx->num_tx_ext_desc = cfg_get(psoc, CFG_DP_TX_EXT_DESC);
4234*5113495bSYour Name 	wlan_cfg_ctx->htt_packet_type = cfg_get(psoc, CFG_DP_HTT_PACKET_TYPE);
4235*5113495bSYour Name 	wlan_cfg_ctx->max_peer_id = cfg_get(psoc, CFG_DP_MAX_PEER_ID);
4236*5113495bSYour Name 
4237*5113495bSYour Name 	wlan_cfg_ctx->tx_ring_size = cfg_get(psoc, CFG_DP_TX_RING_SIZE);
4238*5113495bSYour Name 	wlan_cfg_ctx->time_control_bp = cfg_get(psoc, CFG_DP_TIME_CONTROL_BP);
4239*5113495bSYour Name 	wlan_cfg_ctx->qref_control_size =
4240*5113495bSYour Name 					cfg_get(psoc, CFG_DP_QREF_CONTROL_SIZE);
4241*5113495bSYour Name 	wlan_cfg_ctx->tx_comp_ring_size = cfg_get(psoc,
4242*5113495bSYour Name 						  CFG_DP_TX_COMPL_RING_SIZE);
4243*5113495bSYour Name 
4244*5113495bSYour Name 	wlan_cfg_ctx->tx_comp_ring_size_nss =
4245*5113495bSYour Name 		cfg_get(psoc, CFG_DP_NSS_COMP_RING_SIZE);
4246*5113495bSYour Name 
4247*5113495bSYour Name 	wlan_cfg_ctx->int_batch_threshold_tx =
4248*5113495bSYour Name 			cfg_get(psoc, CFG_DP_INT_BATCH_THRESHOLD_TX);
4249*5113495bSYour Name 	wlan_cfg_ctx->int_timer_threshold_tx =
4250*5113495bSYour Name 			cfg_get(psoc, CFG_DP_INT_TIMER_THRESHOLD_TX);
4251*5113495bSYour Name 	wlan_cfg_ctx->int_batch_threshold_rx =
4252*5113495bSYour Name 			cfg_get(psoc, CFG_DP_INT_BATCH_THRESHOLD_RX);
4253*5113495bSYour Name 	wlan_cfg_ctx->int_timer_threshold_rx =
4254*5113495bSYour Name 			cfg_get(psoc, CFG_DP_INT_TIMER_THRESHOLD_RX);
4255*5113495bSYour Name 	wlan_cfg_ctx->int_batch_threshold_other =
4256*5113495bSYour Name 		cfg_get(psoc, CFG_DP_INT_BATCH_THRESHOLD_OTHER);
4257*5113495bSYour Name 	wlan_cfg_ctx->int_timer_threshold_other =
4258*5113495bSYour Name 		cfg_get(psoc, CFG_DP_INT_TIMER_THRESHOLD_OTHER);
4259*5113495bSYour Name 	wlan_cfg_ctx->int_batch_threshold_mon_dest =
4260*5113495bSYour Name 		cfg_get(psoc, CFG_DP_INT_BATCH_THRESHOLD_MON_DEST);
4261*5113495bSYour Name 	wlan_cfg_ctx->int_timer_threshold_mon_dest =
4262*5113495bSYour Name 		cfg_get(psoc, CFG_DP_INT_TIMER_THRESHOLD_MON_DEST);
4263*5113495bSYour Name 	wlan_cfg_ctx->int_batch_threshold_ppe2tcl =
4264*5113495bSYour Name 			cfg_get(psoc, CFG_DP_INT_BATCH_THRESHOLD_PPE2TCL);
4265*5113495bSYour Name 	wlan_cfg_ctx->int_timer_threshold_ppe2tcl =
4266*5113495bSYour Name 			cfg_get(psoc, CFG_DP_INT_TIMER_THRESHOLD_PPE2TCL);
4267*5113495bSYour Name 
4268*5113495bSYour Name 	wlan_cfg_ctx->pktlog_buffer_size =
4269*5113495bSYour Name 		cfg_get(psoc, CFG_DP_PKTLOG_BUFFER_SIZE);
4270*5113495bSYour Name 
4271*5113495bSYour Name 	/* This is default mapping and can be overridden by HW config
4272*5113495bSYour Name 	 * received from FW */
4273*5113495bSYour Name 	wlan_cfg_set_hw_mac_idx(wlan_cfg_ctx, 0, 0);
4274*5113495bSYour Name 	if (MAX_PDEV_CNT > 1)
4275*5113495bSYour Name 		wlan_cfg_set_hw_mac_idx(wlan_cfg_ctx, 1, 2);
4276*5113495bSYour Name 	if (MAX_PDEV_CNT > 2)
4277*5113495bSYour Name 		wlan_cfg_set_hw_mac_idx(wlan_cfg_ctx, 2, 1);
4278*5113495bSYour Name 
4279*5113495bSYour Name 	wlan_cfg_ctx->base_hw_macid = cfg_get(psoc, CFG_DP_BASE_HW_MAC_ID);
4280*5113495bSYour Name 
4281*5113495bSYour Name 	wlan_cfg_ctx->rx_hash = cfg_get(psoc, CFG_DP_RX_HASH);
4282*5113495bSYour Name 	wlan_cfg_ctx->tso_enabled = cfg_get(psoc, CFG_DP_TSO);
4283*5113495bSYour Name 	wlan_cfg_ctx->lro_enabled = cfg_get(psoc, CFG_DP_LRO);
4284*5113495bSYour Name 	wlan_cfg_ctx->sg_enabled = cfg_get(psoc, CFG_DP_SG);
4285*5113495bSYour Name 	gro_bit_set = cfg_get(psoc, CFG_DP_GRO);
4286*5113495bSYour Name 	if (gro_bit_set & DP_GRO_ENABLE_BIT_SET) {
4287*5113495bSYour Name 		wlan_cfg_ctx->gro_enabled = true;
4288*5113495bSYour Name 		if (gro_bit_set & DP_TC_BASED_DYNAMIC_GRO)
4289*5113495bSYour Name 			wlan_cfg_ctx->tc_based_dynamic_gro = true;
4290*5113495bSYour Name 	}
4291*5113495bSYour Name 	wlan_cfg_ctx->tc_ingress_prio = cfg_get(psoc, CFG_DP_TC_INGRESS_PRIO);
4292*5113495bSYour Name 	wlan_cfg_ctx->ol_tx_csum_enabled = cfg_get(psoc, CFG_DP_OL_TX_CSUM);
4293*5113495bSYour Name 	wlan_cfg_ctx->ol_rx_csum_enabled = cfg_get(psoc, CFG_DP_OL_RX_CSUM);
4294*5113495bSYour Name 	wlan_cfg_ctx->rawmode_enabled = cfg_get(psoc, CFG_DP_RAWMODE);
4295*5113495bSYour Name 	wlan_cfg_ctx->peer_flow_ctrl_enabled =
4296*5113495bSYour Name 			cfg_get(psoc, CFG_DP_PEER_FLOW_CTRL);
4297*5113495bSYour Name 	wlan_cfg_ctx->napi_enabled = cfg_get(psoc, CFG_DP_NAPI);
4298*5113495bSYour Name 	wlan_cfg_ctx->p2p_tcp_udp_checksumoffload =
4299*5113495bSYour Name 			cfg_get(psoc, CFG_DP_P2P_TCP_UDP_CKSUM_OFFLOAD);
4300*5113495bSYour Name 	wlan_cfg_ctx->nan_tcp_udp_checksumoffload =
4301*5113495bSYour Name 			cfg_get(psoc, CFG_DP_NAN_TCP_UDP_CKSUM_OFFLOAD);
4302*5113495bSYour Name 	wlan_cfg_ctx->tcp_udp_checksumoffload =
4303*5113495bSYour Name 			cfg_get(psoc, CFG_DP_TCP_UDP_CKSUM_OFFLOAD);
4304*5113495bSYour Name 	wlan_cfg_ctx->legacy_mode_checksumoffload_disable =
4305*5113495bSYour Name 			cfg_get(psoc, CFG_DP_LEGACY_MODE_CSUM_DISABLE);
4306*5113495bSYour Name 	wlan_cfg_ctx->per_pkt_trace = cfg_get(psoc, CFG_DP_PER_PKT_LOGGING);
4307*5113495bSYour Name 	wlan_cfg_ctx->defrag_timeout_check =
4308*5113495bSYour Name 			cfg_get(psoc, CFG_DP_DEFRAG_TIMEOUT_CHECK);
4309*5113495bSYour Name 	wlan_cfg_ctx->rx_defrag_min_timeout =
4310*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_DEFRAG_TIMEOUT);
4311*5113495bSYour Name 
4312*5113495bSYour Name 	wlan_cfg_ctx->wbm_release_ring = cfg_get(psoc,
4313*5113495bSYour Name 						 CFG_DP_WBM_RELEASE_RING);
4314*5113495bSYour Name 	wlan_cfg_ctx->tcl_cmd_credit_ring = cfg_get(psoc,
4315*5113495bSYour Name 					     CFG_DP_TCL_CMD_CREDIT_RING);
4316*5113495bSYour Name 	wlan_cfg_ctx->tcl_status_ring = cfg_get(psoc,
4317*5113495bSYour Name 						CFG_DP_TCL_STATUS_RING);
4318*5113495bSYour Name 	wlan_cfg_ctx->reo_dst_ring_size = cfg_get(psoc,
4319*5113495bSYour Name 						  CFG_DP_RX_DESTINATION_RING);
4320*5113495bSYour Name 	wlan_cfg_ctx->reo_reinject_ring = cfg_get(psoc,
4321*5113495bSYour Name 						  CFG_DP_REO_REINJECT_RING);
4322*5113495bSYour Name 	wlan_cfg_ctx->rx_release_ring = cfg_get(psoc,
4323*5113495bSYour Name 						CFG_DP_RX_RELEASE_RING);
4324*5113495bSYour Name 	wlan_cfg_ctx->reo_exception_ring = cfg_get(psoc,
4325*5113495bSYour Name 						   CFG_DP_REO_EXCEPTION_RING);
4326*5113495bSYour Name 	wlan_cfg_ctx->reo_cmd_ring = cfg_get(psoc,
4327*5113495bSYour Name 					     CFG_DP_REO_CMD_RING);
4328*5113495bSYour Name 	wlan_cfg_ctx->reo_status_ring = cfg_get(psoc,
4329*5113495bSYour Name 						CFG_DP_REO_STATUS_RING);
4330*5113495bSYour Name 	wlan_cfg_ctx->rxdma_refill_ring = cfg_get(psoc,
4331*5113495bSYour Name 						  CFG_DP_RXDMA_REFILL_RING);
4332*5113495bSYour Name 	wlan_cfg_ctx->rxdma_refill_lt_disable =
4333*5113495bSYour Name 					cfg_get(psoc,
4334*5113495bSYour Name 						CFG_DP_RXDMA_REFILL_LT_DISABLE);
4335*5113495bSYour Name 	wlan_cfg_ctx->tx_desc_limit_0 = cfg_get(psoc,
4336*5113495bSYour Name 						CFG_DP_TX_DESC_LIMIT_0);
4337*5113495bSYour Name 	wlan_cfg_ctx->tx_desc_limit_1 = cfg_get(psoc,
4338*5113495bSYour Name 						CFG_DP_TX_DESC_LIMIT_1);
4339*5113495bSYour Name 	wlan_cfg_ctx->tx_desc_limit_2 = cfg_get(psoc,
4340*5113495bSYour Name 						CFG_DP_TX_DESC_LIMIT_2);
4341*5113495bSYour Name 	wlan_cfg_ctx->tx_device_limit = cfg_get(psoc,
4342*5113495bSYour Name 						CFG_DP_TX_DEVICE_LIMIT);
4343*5113495bSYour Name 	wlan_cfg_ctx->tx_spl_device_limit = cfg_get(psoc,
4344*5113495bSYour Name 						    CFG_DP_TX_SPL_DEVICE_LIMIT);
4345*5113495bSYour Name 	wlan_cfg_ctx->tx_sw_internode_queue = cfg_get(psoc,
4346*5113495bSYour Name 						CFG_DP_TX_SW_INTERNODE_QUEUE);
4347*5113495bSYour Name 	wlan_cfg_ctx->rxdma_err_dst_ring = cfg_get(psoc,
4348*5113495bSYour Name 						   CFG_DP_RXDMA_ERR_DST_RING);
4349*5113495bSYour Name 	wlan_cfg_ctx->enable_data_stall_detection =
4350*5113495bSYour Name 		cfg_get(psoc, CFG_DP_ENABLE_DATA_STALL_DETECTION);
4351*5113495bSYour Name 	wlan_cfg_ctx->tx_flow_start_queue_offset =
4352*5113495bSYour Name 		cfg_get(psoc, CFG_DP_TX_FLOW_START_QUEUE_OFFSET);
4353*5113495bSYour Name 	wlan_cfg_ctx->tx_flow_stop_queue_threshold =
4354*5113495bSYour Name 		cfg_get(psoc, CFG_DP_TX_FLOW_STOP_QUEUE_TH);
4355*5113495bSYour Name 	wlan_cfg_ctx->disable_intra_bss_fwd =
4356*5113495bSYour Name 		cfg_get(psoc, CFG_DP_AP_STA_SECURITY_SEPERATION);
4357*5113495bSYour Name 	wlan_cfg_ctx->rx_sw_desc_weight = cfg_get(psoc,
4358*5113495bSYour Name 						   CFG_DP_RX_SW_DESC_WEIGHT);
4359*5113495bSYour Name 	wlan_cfg_ctx->rx_sw_desc_num = cfg_get(psoc,
4360*5113495bSYour Name 						   CFG_DP_RX_SW_DESC_NUM);
4361*5113495bSYour Name 	wlan_cfg_ctx->rx_toeplitz_hash_key = (uint8_t *)rx_fst_toeplitz_key;
4362*5113495bSYour Name 	wlan_cfg_ctx->rx_flow_max_search = WLAN_CFG_RX_FST_MAX_SEARCH;
4363*5113495bSYour Name 	wlan_cfg_ctx->is_rx_flow_tag_enabled =
4364*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_FLOW_TAG_ENABLE);
4365*5113495bSYour Name 	wlan_cfg_ctx->is_rx_flow_search_table_per_pdev =
4366*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_FLOW_SEARCH_TABLE_PER_PDEV);
4367*5113495bSYour Name 	wlan_cfg_ctx->rx_flow_search_table_size =
4368*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_FLOW_SEARCH_TABLE_SIZE);
4369*5113495bSYour Name 	wlan_cfg_ctx->is_rx_mon_protocol_flow_tag_enabled =
4370*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_MON_PROTOCOL_FLOW_TAG_ENABLE);
4371*5113495bSYour Name 	wlan_cfg_ctx->mon_drop_thresh =
4372*5113495bSYour Name 		cfg_get(psoc, CFG_DP_RXDMA_MONITOR_RX_DROP_THRESHOLD);
4373*5113495bSYour Name 	wlan_cfg_ctx->reo_rings_mapping = cfg_get(psoc, CFG_DP_REO_RINGS_MAP);
4374*5113495bSYour Name 	wlan_cfg_ctx->pext_stats_enabled = cfg_get(psoc, CFG_DP_PEER_EXT_STATS);
4375*5113495bSYour Name 	wlan_cfg_ctx->jitter_stats_enabled =
4376*5113495bSYour Name 			cfg_get(psoc, CFG_DP_PEER_JITTER_STATS);
4377*5113495bSYour Name 	wlan_cfg_ctx->peer_link_stats_enabled =
4378*5113495bSYour Name 			cfg_get(psoc, CFG_DP_PEER_LINK_STATS);
4379*5113495bSYour Name 	wlan_cfg_ctx->is_rx_buff_pool_enabled =
4380*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_BUFF_POOL_ENABLE);
4381*5113495bSYour Name 	wlan_cfg_ctx->is_rx_refill_buff_pool_enabled =
4382*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_REFILL_BUFF_POOL_ENABLE);
4383*5113495bSYour Name 	wlan_cfg_ctx->enable_dp_buf_page_frag_alloc =
4384*5113495bSYour Name 			cfg_get(psoc, CFG_DP_BUFS_PAGE_FRAG_ALLOCS);
4385*5113495bSYour Name #ifdef WLAN_FEATURE_RX_PREALLOC_BUFFER_POOL
4386*5113495bSYour Name 	wlan_cfg_ctx->rx_refill_buff_pool_size =
4387*5113495bSYour Name 		DP_RX_REFILL_BUFF_POOL_SIZE;
4388*5113495bSYour Name #endif
4389*5113495bSYour Name 	wlan_cfg_ctx->rx_pending_high_threshold =
4390*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_PENDING_HL_THRESHOLD);
4391*5113495bSYour Name 	wlan_cfg_ctx->rx_pending_low_threshold =
4392*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_PENDING_LO_THRESHOLD);
4393*5113495bSYour Name 	wlan_cfg_ctx->is_poll_mode_enabled =
4394*5113495bSYour Name 			cfg_get(psoc, CFG_DP_POLL_MODE_ENABLE);
4395*5113495bSYour Name 	wlan_cfg_ctx->is_swlm_enabled = cfg_get(psoc, CFG_DP_SWLM_ENABLE);
4396*5113495bSYour Name 	wlan_cfg_ctx->fst_in_cmem = cfg_get(psoc, CFG_DP_RX_FST_IN_CMEM);
4397*5113495bSYour Name 	wlan_cfg_ctx->tx_per_pkt_vdev_id_check =
4398*5113495bSYour Name 			cfg_get(psoc, CFG_DP_TX_PER_PKT_VDEV_ID_CHECK);
4399*5113495bSYour Name 	wlan_cfg_ctx->radio0_rx_default_reo =
4400*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_RADIO_0_DEFAULT_REO);
4401*5113495bSYour Name 	wlan_cfg_ctx->radio1_rx_default_reo =
4402*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_RADIO_1_DEFAULT_REO);
4403*5113495bSYour Name 	wlan_cfg_ctx->radio2_rx_default_reo =
4404*5113495bSYour Name 			cfg_get(psoc, CFG_DP_RX_RADIO_2_DEFAULT_REO);
4405*5113495bSYour Name 	wlan_cfg_ctx->wow_check_rx_pending_enable =
4406*5113495bSYour Name 			cfg_get(psoc, CFG_DP_WOW_CHECK_RX_PENDING);
4407*5113495bSYour Name 	wlan_cfg_ctx->delay_mon_replenish = cfg_get(psoc,
4408*5113495bSYour Name 			CFG_DP_DELAY_MON_REPLENISH);
4409*5113495bSYour Name 	wlan_cfg_ctx->num_global_tx_desc = cfg_get(psoc,
4410*5113495bSYour Name 					CFG_DP_TX_DESC_GLOBAL_COUNT);
4411*5113495bSYour Name 	wlan_cfg_ctx->num_global_spcl_tx_desc = cfg_get(psoc,
4412*5113495bSYour Name 					CFG_DP_SPCL_TX_DESC_GLOBAL_COUNT);
4413*5113495bSYour Name 	wlan_cfg_ctx->rx_mon_buf_ring_size = cfg_get(psoc,
4414*5113495bSYour Name 					CFG_DP_RXDMA_MONITOR_BUF_RING);
4415*5113495bSYour Name 	wlan_cfg_ctx->tx_mon_buf_ring_size = cfg_get(psoc,
4416*5113495bSYour Name 					CFG_DP_TX_MONITOR_BUF_RING);
4417*5113495bSYour Name 	wlan_soc_ipa_cfg_attach(psoc, wlan_cfg_ctx);
4418*5113495bSYour Name 	wlan_soc_hw_cc_cfg_attach(psoc, wlan_cfg_ctx);
4419*5113495bSYour Name 	wlan_soc_ppe_cfg_attach(psoc, wlan_cfg_ctx);
4420*5113495bSYour Name 	wlan_soc_mlo_cfg_attach(psoc, wlan_cfg_ctx);
4421*5113495bSYour Name 	wlan_soc_vdev_hw_stats_cfg_attach(psoc, wlan_cfg_ctx);
4422*5113495bSYour Name #ifdef WLAN_FEATURE_PKT_CAPTURE_V2
4423*5113495bSYour Name 	wlan_cfg_ctx->pkt_capture_mode = cfg_get(psoc, CFG_PKT_CAPTURE_MODE) &
4424*5113495bSYour Name 						 PKT_CAPTURE_MODE_DATA_ONLY;
4425*5113495bSYour Name #endif
4426*5113495bSYour Name 	wlan_cfg_ctx->num_rxdma_dst_rings_per_pdev = NUM_RXDMA_RINGS_PER_PDEV;
4427*5113495bSYour Name 	wlan_cfg_ctx->num_rxdma_status_rings_per_pdev =
4428*5113495bSYour Name 					NUM_RXDMA_STATUS_RINGS_PER_PDEV;
4429*5113495bSYour Name 	wlan_soc_tx_capt_cfg_attach(psoc, wlan_cfg_ctx);
4430*5113495bSYour Name 	wlan_cfg_ctx->mpdu_retry_threshold_1 =
4431*5113495bSYour Name 			cfg_get(psoc, CFG_DP_MPDU_RETRY_THRESHOLD_1);
4432*5113495bSYour Name 	wlan_cfg_ctx->mpdu_retry_threshold_2 =
4433*5113495bSYour Name 			cfg_get(psoc, CFG_DP_MPDU_RETRY_THRESHOLD_2);
4434*5113495bSYour Name 
4435*5113495bSYour Name 	wlan_cfg_ctx->napi_scale_factor = cfg_get(psoc,
4436*5113495bSYour Name 						  CFG_DP_NAPI_SCALE_FACTOR);
4437*5113495bSYour Name 	wlan_soc_sawf_stats_cfg_attach(psoc, wlan_cfg_ctx);
4438*5113495bSYour Name 	wlan_cfg_ctx->is_handle_invalid_decap_type_disabled =
4439*5113495bSYour Name 			cfg_get(psoc, CFG_DP_HANDLE_INVALID_DECAP_TYPE_DISABLE);
4440*5113495bSYour Name 	wlan_cfg_ctx->txmon_sw_peer_filtering =
4441*5113495bSYour Name 			cfg_get(psoc, CFG_DP_TXMON_SW_PEER_FILTERING);
4442*5113495bSYour Name 	wlan_cfg_ctx->pointer_timer_threshold_rx =
4443*5113495bSYour Name 			cfg_get(psoc, CFG_DP_POINTER_TIMER_THRESHOLD_RX);
4444*5113495bSYour Name 	wlan_cfg_ctx->pointer_num_threshold_rx =
4445*5113495bSYour Name 			cfg_get(psoc, CFG_DP_POINTER_NUM_THRESHOLD_RX);
4446*5113495bSYour Name 	wlan_soc_tx_packet_inspect_attach(psoc, wlan_cfg_ctx);
4447*5113495bSYour Name 	wlan_soc_local_pkt_capture_cfg_attach(psoc, wlan_cfg_ctx);
4448*5113495bSYour Name 	wlan_cfg_ctx->special_frame_msk =
4449*5113495bSYour Name 			cfg_get(psoc, CFG_SPECIAL_FRAME_MSK);
4450*5113495bSYour Name 	wlan_soc_umac_reset_cfg_attach(psoc, wlan_cfg_ctx);
4451*5113495bSYour Name 	wlan_cfg_ctx->rx_buffer_size = cfg_get(psoc, CFG_DP_RX_BUFFER_SIZE);
4452*5113495bSYour Name 	wlan_cfg_ctx->avg_rate_stats_filter_val =
4453*5113495bSYour Name 		cfg_get(psoc, CFG_DP_STATS_AVG_RATE_FILTER);
4454*5113495bSYour Name 	return wlan_cfg_ctx;
4455*5113495bSYour Name }
4456*5113495bSYour Name #endif
4457*5113495bSYour Name 
wlan_cfg_soc_detach(struct wlan_cfg_dp_soc_ctxt * wlan_cfg_ctx)4458*5113495bSYour Name void wlan_cfg_soc_detach(struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx)
4459*5113495bSYour Name {
4460*5113495bSYour Name 	qdf_mem_free(wlan_cfg_ctx);
4461*5113495bSYour Name }
4462*5113495bSYour Name 
4463*5113495bSYour Name struct wlan_cfg_dp_pdev_ctxt *
wlan_cfg_pdev_attach(struct cdp_ctrl_objmgr_psoc * psoc)4464*5113495bSYour Name wlan_cfg_pdev_attach(struct cdp_ctrl_objmgr_psoc *psoc)
4465*5113495bSYour Name {
4466*5113495bSYour Name 	struct wlan_cfg_dp_pdev_ctxt *wlan_cfg_ctx =
4467*5113495bSYour Name 		qdf_mem_malloc(sizeof(struct wlan_cfg_dp_pdev_ctxt));
4468*5113495bSYour Name 
4469*5113495bSYour Name 	if (!wlan_cfg_ctx)
4470*5113495bSYour Name 		return NULL;
4471*5113495bSYour Name 
4472*5113495bSYour Name 	wlan_cfg_ctx->rx_dma_buf_ring_size = cfg_get(psoc,
4473*5113495bSYour Name 					CFG_DP_RXDMA_BUF_RING);
4474*5113495bSYour Name 	wlan_cfg_ctx->dma_mon_buf_ring_size = cfg_get(psoc,
4475*5113495bSYour Name 					CFG_DP_RXDMA_MONITOR_BUF_RING);
4476*5113495bSYour Name 	wlan_cfg_ctx->dma_rx_mon_dest_ring_size = cfg_get(psoc,
4477*5113495bSYour Name 					CFG_DP_RXDMA_MONITOR_DST_RING);
4478*5113495bSYour Name 	wlan_cfg_ctx->dma_tx_mon_dest_ring_size = cfg_get(psoc,
4479*5113495bSYour Name 					CFG_DP_TX_MONITOR_DST_RING);
4480*5113495bSYour Name 	wlan_cfg_ctx->dma_mon_status_ring_size = cfg_get(psoc,
4481*5113495bSYour Name 					CFG_DP_RXDMA_MONITOR_STATUS_RING);
4482*5113495bSYour Name 	wlan_cfg_ctx->rxdma_monitor_desc_ring = cfg_get(psoc,
4483*5113495bSYour Name 					CFG_DP_RXDMA_MONITOR_DESC_RING);
4484*5113495bSYour Name 	wlan_cfg_ctx->num_mac_rings = NUM_RXDMA_RINGS_PER_PDEV;
4485*5113495bSYour Name 	wlan_cfg_ctx->sw2rxdma_link_ring_size = cfg_get(psoc,
4486*5113495bSYour Name 					CFG_DP_SW2RXDMA_LINK_RING);
4487*5113495bSYour Name 
4488*5113495bSYour Name 	return wlan_cfg_ctx;
4489*5113495bSYour Name }
4490*5113495bSYour Name 
wlan_cfg_set_mon_delayed_replenish_entries(struct wlan_cfg_dp_soc_ctxt * cfg,uint32_t val)4491*5113495bSYour Name void wlan_cfg_set_mon_delayed_replenish_entries(
4492*5113495bSYour Name 					struct wlan_cfg_dp_soc_ctxt *cfg,
4493*5113495bSYour Name 					uint32_t val)
4494*5113495bSYour Name {
4495*5113495bSYour Name 	cfg->delayed_replenish_entries = val;
4496*5113495bSYour Name }
4497*5113495bSYour Name 
4498*5113495bSYour Name qdf_export_symbol(wlan_cfg_set_mon_delayed_replenish_entries);
4499*5113495bSYour Name 
wlan_cfg_get_mon_delayed_replenish_entries(struct wlan_cfg_dp_soc_ctxt * cfg)4500*5113495bSYour Name int wlan_cfg_get_mon_delayed_replenish_entries(struct wlan_cfg_dp_soc_ctxt *cfg)
4501*5113495bSYour Name {
4502*5113495bSYour Name 	return cfg->delayed_replenish_entries;
4503*5113495bSYour Name }
4504*5113495bSYour Name 
wlan_cfg_pdev_detach(struct wlan_cfg_dp_pdev_ctxt * wlan_cfg_ctx)4505*5113495bSYour Name void wlan_cfg_pdev_detach(struct wlan_cfg_dp_pdev_ctxt *wlan_cfg_ctx)
4506*5113495bSYour Name {
4507*5113495bSYour Name 	if (wlan_cfg_ctx)
4508*5113495bSYour Name 		qdf_mem_free(wlan_cfg_ctx);
4509*5113495bSYour Name }
4510*5113495bSYour Name 
wlan_cfg_get_mon_drop_thresh(struct wlan_cfg_dp_soc_ctxt * cfg)4511*5113495bSYour Name int wlan_cfg_get_mon_drop_thresh(struct wlan_cfg_dp_soc_ctxt *cfg)
4512*5113495bSYour Name {
4513*5113495bSYour Name 	return cfg->mon_drop_thresh;
4514*5113495bSYour Name }
4515*5113495bSYour Name 
wlan_cfg_set_num_contexts(struct wlan_cfg_dp_soc_ctxt * cfg,int num)4516*5113495bSYour Name void wlan_cfg_set_num_contexts(struct wlan_cfg_dp_soc_ctxt *cfg, int num)
4517*5113495bSYour Name {
4518*5113495bSYour Name 	cfg->num_int_ctxts = num;
4519*5113495bSYour Name }
4520*5113495bSYour Name 
wlan_cfg_set_max_peer_id(struct wlan_cfg_dp_soc_ctxt * cfg,uint32_t val)4521*5113495bSYour Name void wlan_cfg_set_max_peer_id(struct wlan_cfg_dp_soc_ctxt *cfg, uint32_t val)
4522*5113495bSYour Name {
4523*5113495bSYour Name 	cfg->max_peer_id = val;
4524*5113495bSYour Name }
4525*5113495bSYour Name 
wlan_cfg_set_max_ast_idx(struct wlan_cfg_dp_soc_ctxt * cfg,uint32_t val)4526*5113495bSYour Name void wlan_cfg_set_max_ast_idx(struct wlan_cfg_dp_soc_ctxt *cfg, uint32_t val)
4527*5113495bSYour Name {
4528*5113495bSYour Name 	cfg->max_ast_idx = val;
4529*5113495bSYour Name }
4530*5113495bSYour Name 
wlan_cfg_get_max_ast_idx(struct wlan_cfg_dp_soc_ctxt * cfg)4531*5113495bSYour Name int wlan_cfg_get_max_ast_idx(struct wlan_cfg_dp_soc_ctxt *cfg)
4532*5113495bSYour Name {
4533*5113495bSYour Name 	return cfg->max_ast_idx;
4534*5113495bSYour Name }
4535*5113495bSYour Name 
4536*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_max_ast_idx);
4537*5113495bSYour Name 
wlan_cfg_set_tx_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4538*5113495bSYour Name void wlan_cfg_set_tx_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4539*5113495bSYour Name 		int context, int mask)
4540*5113495bSYour Name {
4541*5113495bSYour Name 	cfg->int_tx_ring_mask[context] = mask;
4542*5113495bSYour Name }
4543*5113495bSYour Name 
wlan_cfg_set_rx_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4544*5113495bSYour Name void wlan_cfg_set_rx_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4545*5113495bSYour Name 			       int context, int mask)
4546*5113495bSYour Name {
4547*5113495bSYour Name 	cfg->int_rx_ring_mask[context] = mask;
4548*5113495bSYour Name }
4549*5113495bSYour Name 
wlan_cfg_set_rx_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4550*5113495bSYour Name void wlan_cfg_set_rx_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4551*5113495bSYour Name 		int context, int mask)
4552*5113495bSYour Name {
4553*5113495bSYour Name 	cfg->int_rx_mon_ring_mask[context] = mask;
4554*5113495bSYour Name }
4555*5113495bSYour Name 
wlan_cfg_set_tx_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4556*5113495bSYour Name void wlan_cfg_set_tx_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4557*5113495bSYour Name 				   int context, int mask)
4558*5113495bSYour Name {
4559*5113495bSYour Name 	cfg->int_tx_mon_ring_mask[context] = mask;
4560*5113495bSYour Name }
4561*5113495bSYour Name 
wlan_cfg_get_host2rxdma_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4562*5113495bSYour Name int wlan_cfg_get_host2rxdma_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4563*5113495bSYour Name 					  int context)
4564*5113495bSYour Name {
4565*5113495bSYour Name 	return cfg->int_host2rxdma_mon_ring_mask[context];
4566*5113495bSYour Name }
4567*5113495bSYour Name 
wlan_cfg_set_host2rxdma_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4568*5113495bSYour Name void wlan_cfg_set_host2rxdma_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4569*5113495bSYour Name 					   int context, int mask)
4570*5113495bSYour Name {
4571*5113495bSYour Name 	cfg->int_host2rxdma_mon_ring_mask[context] = mask;
4572*5113495bSYour Name }
4573*5113495bSYour Name 
wlan_cfg_get_rxdma2host_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4574*5113495bSYour Name int wlan_cfg_get_rxdma2host_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4575*5113495bSYour Name 					  int context)
4576*5113495bSYour Name {
4577*5113495bSYour Name 	return cfg->int_rxdma2host_mon_ring_mask[context];
4578*5113495bSYour Name }
4579*5113495bSYour Name 
wlan_cfg_set_rxdma2host_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4580*5113495bSYour Name void wlan_cfg_set_rxdma2host_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4581*5113495bSYour Name 					   int context, int mask)
4582*5113495bSYour Name {
4583*5113495bSYour Name 	cfg->int_rxdma2host_mon_ring_mask[context] = mask;
4584*5113495bSYour Name }
4585*5113495bSYour Name 
wlan_cfg_set_rxdma2host_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4586*5113495bSYour Name void wlan_cfg_set_rxdma2host_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4587*5113495bSYour Name 	int context, int mask)
4588*5113495bSYour Name {
4589*5113495bSYour Name 	cfg->int_rxdma2host_ring_mask[context] = mask;
4590*5113495bSYour Name }
4591*5113495bSYour Name 
wlan_cfg_get_rxdma2host_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4592*5113495bSYour Name int wlan_cfg_get_rxdma2host_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4593*5113495bSYour Name 	int context)
4594*5113495bSYour Name {
4595*5113495bSYour Name 	return cfg->int_rxdma2host_ring_mask[context];
4596*5113495bSYour Name }
4597*5113495bSYour Name 
wlan_cfg_set_host2rxdma_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4598*5113495bSYour Name void wlan_cfg_set_host2rxdma_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4599*5113495bSYour Name 	int context, int mask)
4600*5113495bSYour Name {
4601*5113495bSYour Name 	cfg->int_host2rxdma_ring_mask[context] = mask;
4602*5113495bSYour Name }
4603*5113495bSYour Name 
wlan_cfg_get_host2rxdma_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4604*5113495bSYour Name int wlan_cfg_get_host2rxdma_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4605*5113495bSYour Name 	int context)
4606*5113495bSYour Name {
4607*5113495bSYour Name 	return cfg->int_host2rxdma_ring_mask[context];
4608*5113495bSYour Name }
4609*5113495bSYour Name 
wlan_cfg_get_rx_near_full_grp_1_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4610*5113495bSYour Name int wlan_cfg_get_rx_near_full_grp_1_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4611*5113495bSYour Name 					 int context)
4612*5113495bSYour Name {
4613*5113495bSYour Name 	return cfg->int_rx_ring_near_full_irq_1_mask[context];
4614*5113495bSYour Name }
4615*5113495bSYour Name 
wlan_cfg_get_rx_near_full_grp_2_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4616*5113495bSYour Name int wlan_cfg_get_rx_near_full_grp_2_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4617*5113495bSYour Name 					 int context)
4618*5113495bSYour Name {
4619*5113495bSYour Name 	return cfg->int_rx_ring_near_full_irq_2_mask[context];
4620*5113495bSYour Name }
4621*5113495bSYour Name 
wlan_cfg_get_tx_ring_near_full_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4622*5113495bSYour Name int wlan_cfg_get_tx_ring_near_full_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4623*5113495bSYour Name 					int context)
4624*5113495bSYour Name {
4625*5113495bSYour Name 	return cfg->int_tx_ring_near_full_irq_mask[context];
4626*5113495bSYour Name }
4627*5113495bSYour Name 
wlan_cfg_set_hw_mac_idx(struct wlan_cfg_dp_soc_ctxt * cfg,int pdev_idx,int hw_macid)4628*5113495bSYour Name void wlan_cfg_set_hw_mac_idx(struct wlan_cfg_dp_soc_ctxt *cfg, int pdev_idx,
4629*5113495bSYour Name 			     int hw_macid)
4630*5113495bSYour Name {
4631*5113495bSYour Name 	qdf_assert_always(pdev_idx < MAX_PDEV_CNT);
4632*5113495bSYour Name 	cfg->hw_macid[pdev_idx] = hw_macid;
4633*5113495bSYour Name }
4634*5113495bSYour Name 
wlan_cfg_get_hw_mac_idx(struct wlan_cfg_dp_soc_ctxt * cfg,int pdev_idx)4635*5113495bSYour Name int wlan_cfg_get_hw_mac_idx(struct wlan_cfg_dp_soc_ctxt *cfg, int pdev_idx)
4636*5113495bSYour Name {
4637*5113495bSYour Name 	qdf_assert_always(pdev_idx < MAX_PDEV_CNT);
4638*5113495bSYour Name 	return cfg->hw_macid[pdev_idx];
4639*5113495bSYour Name }
4640*5113495bSYour Name 
4641*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_hw_mac_idx);
4642*5113495bSYour Name 
wlan_cfg_get_target_pdev_id(struct wlan_cfg_dp_soc_ctxt * cfg,int hw_macid)4643*5113495bSYour Name int wlan_cfg_get_target_pdev_id(struct wlan_cfg_dp_soc_ctxt *cfg,
4644*5113495bSYour Name 				int hw_macid)
4645*5113495bSYour Name {
4646*5113495bSYour Name 	int idx;
4647*5113495bSYour Name 
4648*5113495bSYour Name 	for (idx = 0; idx < MAX_PDEV_CNT; idx++) {
4649*5113495bSYour Name 		if (cfg->hw_macid[idx] == hw_macid)
4650*5113495bSYour Name 			return (idx + 1);
4651*5113495bSYour Name 	}
4652*5113495bSYour Name 	qdf_assert_always(idx < MAX_PDEV_CNT);
4653*5113495bSYour Name 	return WLAN_INVALID_PDEV_ID;
4654*5113495bSYour Name }
4655*5113495bSYour Name 
wlan_cfg_set_pdev_idx(struct wlan_cfg_dp_soc_ctxt * cfg,int pdev_idx,int hw_macid)4656*5113495bSYour Name void wlan_cfg_set_pdev_idx(struct wlan_cfg_dp_soc_ctxt *cfg, int pdev_idx,
4657*5113495bSYour Name 			   int hw_macid)
4658*5113495bSYour Name {
4659*5113495bSYour Name 	qdf_assert_always((pdev_idx < MAX_PDEV_CNT) ||
4660*5113495bSYour Name 			  (pdev_idx == INVALID_PDEV_ID));
4661*5113495bSYour Name 	qdf_assert_always(hw_macid < MAX_NUM_LMAC_HW);
4662*5113495bSYour Name 	cfg->hw_macid_pdev_id_map[hw_macid] = pdev_idx;
4663*5113495bSYour Name }
4664*5113495bSYour Name 
wlan_cfg_get_pdev_idx(struct wlan_cfg_dp_soc_ctxt * cfg,int hw_macid)4665*5113495bSYour Name int wlan_cfg_get_pdev_idx(struct wlan_cfg_dp_soc_ctxt *cfg, int hw_macid)
4666*5113495bSYour Name {
4667*5113495bSYour Name 	qdf_assert_always(hw_macid < MAX_NUM_LMAC_HW);
4668*5113495bSYour Name 	return cfg->hw_macid_pdev_id_map[hw_macid];
4669*5113495bSYour Name }
4670*5113495bSYour Name 
4671*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_pdev_idx);
4672*5113495bSYour Name 
wlan_cfg_set_ce_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4673*5113495bSYour Name void wlan_cfg_set_ce_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4674*5113495bSYour Name 		int context, int mask)
4675*5113495bSYour Name {
4676*5113495bSYour Name 	cfg->int_ce_ring_mask[context] = mask;
4677*5113495bSYour Name }
4678*5113495bSYour Name 
wlan_cfg_set_rxbuf_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4679*5113495bSYour Name void wlan_cfg_set_rxbuf_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg, int context,
4680*5113495bSYour Name 		int mask)
4681*5113495bSYour Name {
4682*5113495bSYour Name 	cfg->int_rx_ring_mask[context] = mask;
4683*5113495bSYour Name }
4684*5113495bSYour Name 
wlan_cfg_set_rx_err_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4685*5113495bSYour Name int wlan_cfg_set_rx_err_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4686*5113495bSYour Name 		int context, int mask)
4687*5113495bSYour Name {
4688*5113495bSYour Name 	return cfg->int_rx_err_ring_mask[context] = mask;
4689*5113495bSYour Name }
4690*5113495bSYour Name 
wlan_cfg_set_rx_wbm_rel_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4691*5113495bSYour Name int wlan_cfg_set_rx_wbm_rel_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4692*5113495bSYour Name 		int context, int mask)
4693*5113495bSYour Name {
4694*5113495bSYour Name 	return cfg->int_rx_wbm_rel_ring_mask[context] = mask;
4695*5113495bSYour Name }
4696*5113495bSYour Name 
wlan_cfg_set_reo_status_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)4697*5113495bSYour Name int wlan_cfg_set_reo_status_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4698*5113495bSYour Name 		int context, int mask)
4699*5113495bSYour Name {
4700*5113495bSYour Name 	return cfg->int_reo_status_ring_mask[context] = mask;
4701*5113495bSYour Name }
4702*5113495bSYour Name 
wlan_cfg_get_num_contexts(struct wlan_cfg_dp_soc_ctxt * cfg)4703*5113495bSYour Name int wlan_cfg_get_num_contexts(struct wlan_cfg_dp_soc_ctxt *cfg)
4704*5113495bSYour Name {
4705*5113495bSYour Name 	return cfg->num_int_ctxts;
4706*5113495bSYour Name }
4707*5113495bSYour Name 
wlan_cfg_get_tx_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4708*5113495bSYour Name int wlan_cfg_get_tx_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg, int context)
4709*5113495bSYour Name {
4710*5113495bSYour Name 	return cfg->int_tx_ring_mask[context];
4711*5113495bSYour Name }
4712*5113495bSYour Name 
wlan_cfg_get_rx_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4713*5113495bSYour Name int wlan_cfg_get_rx_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg, int context)
4714*5113495bSYour Name {
4715*5113495bSYour Name 	return cfg->int_rx_ring_mask[context];
4716*5113495bSYour Name }
4717*5113495bSYour Name 
wlan_cfg_get_rx_err_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4718*5113495bSYour Name int wlan_cfg_get_rx_err_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4719*5113495bSYour Name 						int context)
4720*5113495bSYour Name {
4721*5113495bSYour Name 	return cfg->int_rx_err_ring_mask[context];
4722*5113495bSYour Name }
4723*5113495bSYour Name 
wlan_cfg_get_rx_wbm_rel_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4724*5113495bSYour Name int wlan_cfg_get_rx_wbm_rel_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4725*5113495bSYour Name 					int context)
4726*5113495bSYour Name {
4727*5113495bSYour Name 	return cfg->int_rx_wbm_rel_ring_mask[context];
4728*5113495bSYour Name }
4729*5113495bSYour Name 
wlan_cfg_get_reo_status_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4730*5113495bSYour Name int wlan_cfg_get_reo_status_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4731*5113495bSYour Name 					int context)
4732*5113495bSYour Name {
4733*5113495bSYour Name 	return cfg->int_reo_status_ring_mask[context];
4734*5113495bSYour Name }
4735*5113495bSYour Name 
wlan_cfg_get_rx_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4736*5113495bSYour Name int wlan_cfg_get_rx_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg, int context)
4737*5113495bSYour Name {
4738*5113495bSYour Name 	return cfg->int_rx_mon_ring_mask[context];
4739*5113495bSYour Name }
4740*5113495bSYour Name 
4741*5113495bSYour Name #ifdef CONFIG_BERYLLIUM
wlan_cfg_get_tx_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4742*5113495bSYour Name int wlan_cfg_get_tx_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg, int context)
4743*5113495bSYour Name {
4744*5113495bSYour Name 	return cfg->int_tx_mon_ring_mask[context];
4745*5113495bSYour Name }
4746*5113495bSYour Name #else
wlan_cfg_get_tx_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4747*5113495bSYour Name int wlan_cfg_get_tx_mon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg, int context)
4748*5113495bSYour Name {
4749*5113495bSYour Name 	return 0;
4750*5113495bSYour Name }
4751*5113495bSYour Name #endif
4752*5113495bSYour Name 
wlan_cfg_get_ce_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4753*5113495bSYour Name int wlan_cfg_get_ce_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg, int context)
4754*5113495bSYour Name {
4755*5113495bSYour Name 	return cfg->int_ce_ring_mask[context];
4756*5113495bSYour Name }
4757*5113495bSYour Name 
wlan_cfg_get_max_clients(struct wlan_cfg_dp_soc_ctxt * cfg)4758*5113495bSYour Name uint32_t wlan_cfg_get_max_clients(struct wlan_cfg_dp_soc_ctxt *cfg)
4759*5113495bSYour Name {
4760*5113495bSYour Name 	return cfg->max_clients;
4761*5113495bSYour Name }
4762*5113495bSYour Name 
wlan_cfg_max_alloc_size(struct wlan_cfg_dp_soc_ctxt * cfg)4763*5113495bSYour Name uint32_t wlan_cfg_max_alloc_size(struct wlan_cfg_dp_soc_ctxt *cfg)
4764*5113495bSYour Name {
4765*5113495bSYour Name 	return cfg->max_alloc_size;
4766*5113495bSYour Name }
4767*5113495bSYour Name 
wlan_cfg_per_pdev_tx_ring(struct wlan_cfg_dp_soc_ctxt * cfg)4768*5113495bSYour Name int wlan_cfg_per_pdev_tx_ring(struct wlan_cfg_dp_soc_ctxt *cfg)
4769*5113495bSYour Name {
4770*5113495bSYour Name 	return cfg->per_pdev_tx_ring;
4771*5113495bSYour Name }
4772*5113495bSYour Name 
wlan_cfg_get_umac_reset_intr_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)4773*5113495bSYour Name int wlan_cfg_get_umac_reset_intr_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
4774*5113495bSYour Name 				      int context)
4775*5113495bSYour Name {
4776*5113495bSYour Name 	return cfg->int_umac_reset_intr_mask[context];
4777*5113495bSYour Name }
4778*5113495bSYour Name 
4779*5113495bSYour Name uint32_t
wlan_cfg_rx_pending_hl_threshold(struct wlan_cfg_dp_soc_ctxt * cfg)4780*5113495bSYour Name wlan_cfg_rx_pending_hl_threshold(struct wlan_cfg_dp_soc_ctxt *cfg)
4781*5113495bSYour Name {
4782*5113495bSYour Name 	return cfg->rx_pending_high_threshold;
4783*5113495bSYour Name }
4784*5113495bSYour Name 
4785*5113495bSYour Name uint32_t
wlan_cfg_rx_pending_lo_threshold(struct wlan_cfg_dp_soc_ctxt * cfg)4786*5113495bSYour Name wlan_cfg_rx_pending_lo_threshold(struct wlan_cfg_dp_soc_ctxt *cfg)
4787*5113495bSYour Name {
4788*5113495bSYour Name 	return cfg->rx_pending_low_threshold;
4789*5113495bSYour Name }
4790*5113495bSYour Name 
wlan_cfg_per_pdev_lmac_ring(struct wlan_cfg_dp_soc_ctxt * cfg)4791*5113495bSYour Name int wlan_cfg_per_pdev_lmac_ring(struct wlan_cfg_dp_soc_ctxt *cfg)
4792*5113495bSYour Name {
4793*5113495bSYour Name 	return cfg->per_pdev_lmac_ring;
4794*5113495bSYour Name }
4795*5113495bSYour Name 
4796*5113495bSYour Name qdf_export_symbol(wlan_cfg_per_pdev_lmac_ring);
4797*5113495bSYour Name 
4798*5113495bSYour Name #if defined(DP_USE_SINGLE_TCL) && !defined(TX_MULTI_TCL)
wlan_cfg_num_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt * cfg)4799*5113495bSYour Name int wlan_cfg_num_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt *cfg)
4800*5113495bSYour Name {
4801*5113495bSYour Name 	return 1;
4802*5113495bSYour Name }
4803*5113495bSYour Name 
wlan_cfg_num_nss_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt * cfg)4804*5113495bSYour Name int wlan_cfg_num_nss_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt *cfg)
4805*5113495bSYour Name {
4806*5113495bSYour Name 	return 1;
4807*5113495bSYour Name }
4808*5113495bSYour Name 
4809*5113495bSYour Name #else
4810*5113495bSYour Name 
4811*5113495bSYour Name #if defined(IPA_OFFLOAD) && defined(TX_MULTI_TCL)
wlan_cfg_num_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt * cfg)4812*5113495bSYour Name int wlan_cfg_num_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt *cfg)
4813*5113495bSYour Name {
4814*5113495bSYour Name 	if (!cfg->ipa_enabled || ipa_config_is_opt_wifi_dp_enabled())
4815*5113495bSYour Name 		return cfg->num_tcl_data_rings;
4816*5113495bSYour Name 
4817*5113495bSYour Name 	return 1;
4818*5113495bSYour Name }
4819*5113495bSYour Name 
wlan_cfg_num_nss_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt * cfg)4820*5113495bSYour Name int wlan_cfg_num_nss_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt *cfg)
4821*5113495bSYour Name {
4822*5113495bSYour Name 	if (!cfg->ipa_enabled)
4823*5113495bSYour Name 		return cfg->num_nss_tcl_data_rings;
4824*5113495bSYour Name 
4825*5113495bSYour Name 	return 1;
4826*5113495bSYour Name }
4827*5113495bSYour Name #else
wlan_cfg_num_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt * cfg)4828*5113495bSYour Name int wlan_cfg_num_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt *cfg)
4829*5113495bSYour Name {
4830*5113495bSYour Name 	return cfg->num_tcl_data_rings;
4831*5113495bSYour Name }
4832*5113495bSYour Name 
wlan_cfg_num_nss_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt * cfg)4833*5113495bSYour Name int wlan_cfg_num_nss_tcl_data_rings(struct wlan_cfg_dp_soc_ctxt *cfg)
4834*5113495bSYour Name {
4835*5113495bSYour Name 	return cfg->num_nss_tcl_data_rings;
4836*5113495bSYour Name }
4837*5113495bSYour Name #endif
4838*5113495bSYour Name #endif
4839*5113495bSYour Name 
wlan_cfg_num_tx_comp_rings(struct wlan_cfg_dp_soc_ctxt * cfg)4840*5113495bSYour Name int wlan_cfg_num_tx_comp_rings(struct wlan_cfg_dp_soc_ctxt *cfg)
4841*5113495bSYour Name {
4842*5113495bSYour Name 	return cfg->num_tx_comp_rings;
4843*5113495bSYour Name }
4844*5113495bSYour Name 
wlan_cfg_tx_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)4845*5113495bSYour Name int wlan_cfg_tx_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
4846*5113495bSYour Name {
4847*5113495bSYour Name 	return cfg->tx_ring_size;
4848*5113495bSYour Name }
4849*5113495bSYour Name 
wlan_cfg_set_tx_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg,int ring_size)4850*5113495bSYour Name void wlan_cfg_set_tx_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg,
4851*5113495bSYour Name 			       int ring_size)
4852*5113495bSYour Name {
4853*5113495bSYour Name 	cfg->tx_ring_size = ring_size;
4854*5113495bSYour Name }
4855*5113495bSYour Name 
wlan_cfg_time_control_bp(struct wlan_cfg_dp_soc_ctxt * cfg)4856*5113495bSYour Name int wlan_cfg_time_control_bp(struct wlan_cfg_dp_soc_ctxt *cfg)
4857*5113495bSYour Name {
4858*5113495bSYour Name 	return cfg->time_control_bp;
4859*5113495bSYour Name }
4860*5113495bSYour Name 
wlan_cfg_rx_buffer_size(struct wlan_cfg_dp_soc_ctxt * cfg)4861*5113495bSYour Name int wlan_cfg_rx_buffer_size(struct wlan_cfg_dp_soc_ctxt *cfg)
4862*5113495bSYour Name {
4863*5113495bSYour Name 	if (cfg->rx_buffer_size < RX_DATA_BUFFER_SIZE)
4864*5113495bSYour Name 		qdf_assert_always(0);
4865*5113495bSYour Name 	return cfg->rx_buffer_size;
4866*5113495bSYour Name }
4867*5113495bSYour Name 
4868*5113495bSYour Name qdf_export_symbol(wlan_cfg_rx_buffer_size);
4869*5113495bSYour Name 
wlan_cfg_qref_control_size(struct wlan_cfg_dp_soc_ctxt * cfg)4870*5113495bSYour Name int wlan_cfg_qref_control_size(struct wlan_cfg_dp_soc_ctxt *cfg)
4871*5113495bSYour Name {
4872*5113495bSYour Name 	return cfg->qref_control_size;
4873*5113495bSYour Name }
4874*5113495bSYour Name 
wlan_cfg_tx_comp_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)4875*5113495bSYour Name int wlan_cfg_tx_comp_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
4876*5113495bSYour Name {
4877*5113495bSYour Name 	return cfg->tx_comp_ring_size;
4878*5113495bSYour Name }
4879*5113495bSYour Name 
wlan_cfg_set_tx_comp_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg,int ring_size)4880*5113495bSYour Name void wlan_cfg_set_tx_comp_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg,
4881*5113495bSYour Name 				    int ring_size)
4882*5113495bSYour Name {
4883*5113495bSYour Name 	cfg->tx_comp_ring_size = ring_size;
4884*5113495bSYour Name }
4885*5113495bSYour Name 
wlan_cfg_per_pdev_rx_ring(struct wlan_cfg_dp_soc_ctxt * cfg)4886*5113495bSYour Name int wlan_cfg_per_pdev_rx_ring(struct wlan_cfg_dp_soc_ctxt *cfg)
4887*5113495bSYour Name {
4888*5113495bSYour Name 	return cfg->per_pdev_rx_ring;
4889*5113495bSYour Name }
4890*5113495bSYour Name 
wlan_cfg_num_reo_dest_rings(struct wlan_cfg_dp_soc_ctxt * cfg)4891*5113495bSYour Name int wlan_cfg_num_reo_dest_rings(struct wlan_cfg_dp_soc_ctxt *cfg)
4892*5113495bSYour Name {
4893*5113495bSYour Name 	return cfg->num_reo_dest_rings;
4894*5113495bSYour Name }
4895*5113495bSYour Name 
wlan_cfg_num_nss_reo_dest_rings(struct wlan_cfg_dp_soc_ctxt * cfg)4896*5113495bSYour Name int wlan_cfg_num_nss_reo_dest_rings(struct wlan_cfg_dp_soc_ctxt *cfg)
4897*5113495bSYour Name {
4898*5113495bSYour Name 	return cfg->num_nss_reo_dest_rings;
4899*5113495bSYour Name }
4900*5113495bSYour Name 
wlan_cfg_pkt_type(struct wlan_cfg_dp_soc_ctxt * cfg)4901*5113495bSYour Name int wlan_cfg_pkt_type(struct wlan_cfg_dp_soc_ctxt *cfg)
4902*5113495bSYour Name {
4903*5113495bSYour Name 	return cfg->htt_packet_type;            /*htt_pkt_type_ethernet*/
4904*5113495bSYour Name }
4905*5113495bSYour Name 
wlan_cfg_get_num_tx_desc_pool(struct wlan_cfg_dp_soc_ctxt * cfg)4906*5113495bSYour Name int wlan_cfg_get_num_tx_desc_pool(struct wlan_cfg_dp_soc_ctxt *cfg)
4907*5113495bSYour Name {
4908*5113495bSYour Name 	return cfg->num_tx_desc_pool;
4909*5113495bSYour Name }
4910*5113495bSYour Name 
wlan_cfg_set_num_tx_desc_pool(struct wlan_cfg_dp_soc_ctxt * cfg,int num_pool)4911*5113495bSYour Name void wlan_cfg_set_num_tx_desc_pool(struct wlan_cfg_dp_soc_ctxt *cfg, int num_pool)
4912*5113495bSYour Name {
4913*5113495bSYour Name 	cfg->num_tx_desc_pool = num_pool;
4914*5113495bSYour Name }
4915*5113495bSYour Name 
wlan_cfg_get_num_tx_ext_desc_pool(struct wlan_cfg_dp_soc_ctxt * cfg)4916*5113495bSYour Name int wlan_cfg_get_num_tx_ext_desc_pool(struct wlan_cfg_dp_soc_ctxt *cfg)
4917*5113495bSYour Name {
4918*5113495bSYour Name 	return cfg->num_tx_ext_desc_pool;
4919*5113495bSYour Name }
4920*5113495bSYour Name 
wlan_cfg_set_num_tx_ext_desc_pool(struct wlan_cfg_dp_soc_ctxt * cfg,int num_pool)4921*5113495bSYour Name void wlan_cfg_set_num_tx_ext_desc_pool(struct wlan_cfg_dp_soc_ctxt *cfg, int num_pool)
4922*5113495bSYour Name {
4923*5113495bSYour Name 	cfg->num_tx_ext_desc_pool = num_pool;
4924*5113495bSYour Name }
4925*5113495bSYour Name 
wlan_cfg_get_reo_dst_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)4926*5113495bSYour Name int wlan_cfg_get_reo_dst_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
4927*5113495bSYour Name {
4928*5113495bSYour Name 	return cfg->reo_dst_ring_size;
4929*5113495bSYour Name }
4930*5113495bSYour Name 
wlan_cfg_set_reo_dst_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg,int reo_dst_ring_size)4931*5113495bSYour Name void wlan_cfg_set_reo_dst_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg,
4932*5113495bSYour Name 				    int reo_dst_ring_size)
4933*5113495bSYour Name {
4934*5113495bSYour Name 	cfg->reo_dst_ring_size = reo_dst_ring_size;
4935*5113495bSYour Name }
4936*5113495bSYour Name 
wlan_cfg_set_raw_mode_war(struct wlan_cfg_dp_soc_ctxt * cfg,bool raw_mode_war)4937*5113495bSYour Name void wlan_cfg_set_raw_mode_war(struct wlan_cfg_dp_soc_ctxt *cfg,
4938*5113495bSYour Name 			       bool raw_mode_war)
4939*5113495bSYour Name {
4940*5113495bSYour Name 	cfg->raw_mode_war = raw_mode_war;
4941*5113495bSYour Name }
4942*5113495bSYour Name 
wlan_cfg_get_raw_mode_war(struct wlan_cfg_dp_soc_ctxt * cfg)4943*5113495bSYour Name bool wlan_cfg_get_raw_mode_war(struct wlan_cfg_dp_soc_ctxt *cfg)
4944*5113495bSYour Name {
4945*5113495bSYour Name 	return cfg->raw_mode_war;
4946*5113495bSYour Name }
4947*5113495bSYour Name 
wlan_cfg_get_num_global_tx_desc(struct wlan_cfg_dp_soc_ctxt * cfg)4948*5113495bSYour Name int wlan_cfg_get_num_global_tx_desc(struct wlan_cfg_dp_soc_ctxt *cfg)
4949*5113495bSYour Name {
4950*5113495bSYour Name 	return cfg->num_global_tx_desc;
4951*5113495bSYour Name }
4952*5113495bSYour Name 
wlan_cfg_get_num_global_spcl_tx_desc(struct wlan_cfg_dp_soc_ctxt * cfg)4953*5113495bSYour Name int wlan_cfg_get_num_global_spcl_tx_desc(struct wlan_cfg_dp_soc_ctxt *cfg)
4954*5113495bSYour Name {
4955*5113495bSYour Name 	return cfg->num_global_spcl_tx_desc;
4956*5113495bSYour Name }
4957*5113495bSYour Name 
wlan_cfg_get_num_tx_desc(struct wlan_cfg_dp_soc_ctxt * cfg)4958*5113495bSYour Name int wlan_cfg_get_num_tx_desc(struct wlan_cfg_dp_soc_ctxt *cfg)
4959*5113495bSYour Name {
4960*5113495bSYour Name 	return cfg->num_tx_desc;
4961*5113495bSYour Name }
4962*5113495bSYour Name 
4963*5113495bSYour Name 
wlan_cfg_set_num_tx_spl_desc(struct wlan_cfg_dp_soc_ctxt * cfg,int num_desc)4964*5113495bSYour Name void wlan_cfg_set_num_tx_spl_desc(struct wlan_cfg_dp_soc_ctxt *cfg, int num_desc)
4965*5113495bSYour Name {
4966*5113495bSYour Name 	cfg->num_tx_spl_desc = num_desc;
4967*5113495bSYour Name }
4968*5113495bSYour Name 
wlan_cfg_get_num_tx_spl_desc(struct wlan_cfg_dp_soc_ctxt * cfg)4969*5113495bSYour Name int wlan_cfg_get_num_tx_spl_desc(struct wlan_cfg_dp_soc_ctxt *cfg)
4970*5113495bSYour Name {
4971*5113495bSYour Name 	return cfg->num_tx_spl_desc;
4972*5113495bSYour Name }
4973*5113495bSYour Name 
wlan_cfg_set_num_tx_desc(struct wlan_cfg_dp_soc_ctxt * cfg,int num_desc)4974*5113495bSYour Name void wlan_cfg_set_num_tx_desc(struct wlan_cfg_dp_soc_ctxt *cfg, int num_desc)
4975*5113495bSYour Name {
4976*5113495bSYour Name 	cfg->num_tx_desc = num_desc;
4977*5113495bSYour Name }
4978*5113495bSYour Name 
wlan_cfg_get_min_tx_desc(struct wlan_cfg_dp_soc_ctxt * cfg)4979*5113495bSYour Name int wlan_cfg_get_min_tx_desc(struct wlan_cfg_dp_soc_ctxt *cfg)
4980*5113495bSYour Name {
4981*5113495bSYour Name 	return cfg->min_tx_desc;
4982*5113495bSYour Name }
4983*5113495bSYour Name 
wlan_cfg_get_num_tx_ext_desc(struct wlan_cfg_dp_soc_ctxt * cfg)4984*5113495bSYour Name int wlan_cfg_get_num_tx_ext_desc(struct wlan_cfg_dp_soc_ctxt *cfg)
4985*5113495bSYour Name {
4986*5113495bSYour Name 	return cfg->num_tx_ext_desc;
4987*5113495bSYour Name }
4988*5113495bSYour Name 
wlan_cfg_set_num_tx_ext_desc(struct wlan_cfg_dp_soc_ctxt * cfg,int num_ext_desc)4989*5113495bSYour Name void wlan_cfg_set_num_tx_ext_desc(struct wlan_cfg_dp_soc_ctxt *cfg, int num_ext_desc)
4990*5113495bSYour Name {
4991*5113495bSYour Name 	cfg->num_tx_ext_desc = num_ext_desc;
4992*5113495bSYour Name }
4993*5113495bSYour Name 
wlan_cfg_max_peer_id(struct wlan_cfg_dp_soc_ctxt * cfg)4994*5113495bSYour Name uint32_t wlan_cfg_max_peer_id(struct wlan_cfg_dp_soc_ctxt *cfg)
4995*5113495bSYour Name {
4996*5113495bSYour Name 	/* TODO: This should be calculated based on target capabilities */
4997*5113495bSYour Name 	return cfg->max_peer_id;
4998*5113495bSYour Name }
4999*5113495bSYour Name 
wlan_cfg_get_dma_mon_buf_ring_size(struct wlan_cfg_dp_pdev_ctxt * cfg)5000*5113495bSYour Name int wlan_cfg_get_dma_mon_buf_ring_size(struct wlan_cfg_dp_pdev_ctxt *cfg)
5001*5113495bSYour Name {
5002*5113495bSYour Name 	return  cfg->dma_mon_buf_ring_size;
5003*5113495bSYour Name }
5004*5113495bSYour Name 
5005*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_dma_mon_buf_ring_size);
5006*5113495bSYour Name 
wlan_cfg_get_dma_rx_mon_dest_ring_size(struct wlan_cfg_dp_pdev_ctxt * cfg)5007*5113495bSYour Name int wlan_cfg_get_dma_rx_mon_dest_ring_size(struct wlan_cfg_dp_pdev_ctxt *cfg)
5008*5113495bSYour Name {
5009*5113495bSYour Name 	return  cfg->dma_rx_mon_dest_ring_size;
5010*5113495bSYour Name }
5011*5113495bSYour Name 
5012*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_dma_rx_mon_dest_ring_size);
5013*5113495bSYour Name 
wlan_cfg_get_dma_tx_mon_dest_ring_size(struct wlan_cfg_dp_pdev_ctxt * cfg)5014*5113495bSYour Name int wlan_cfg_get_dma_tx_mon_dest_ring_size(struct wlan_cfg_dp_pdev_ctxt *cfg)
5015*5113495bSYour Name {
5016*5113495bSYour Name 	return  cfg->dma_tx_mon_dest_ring_size;
5017*5113495bSYour Name }
5018*5113495bSYour Name 
5019*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_dma_tx_mon_dest_ring_size);
5020*5113495bSYour Name 
wlan_cfg_get_dma_mon_stat_ring_size(struct wlan_cfg_dp_pdev_ctxt * cfg)5021*5113495bSYour Name int wlan_cfg_get_dma_mon_stat_ring_size(struct wlan_cfg_dp_pdev_ctxt *cfg)
5022*5113495bSYour Name {
5023*5113495bSYour Name 	return  cfg->dma_mon_status_ring_size;
5024*5113495bSYour Name }
5025*5113495bSYour Name 
5026*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_dma_mon_stat_ring_size);
5027*5113495bSYour Name 
5028*5113495bSYour Name int
wlan_cfg_get_dma_sw2rxdma_link_ring_size(struct wlan_cfg_dp_pdev_ctxt * cfg)5029*5113495bSYour Name wlan_cfg_get_dma_sw2rxdma_link_ring_size(struct wlan_cfg_dp_pdev_ctxt *cfg)
5030*5113495bSYour Name {
5031*5113495bSYour Name 	return cfg->sw2rxdma_link_ring_size;
5032*5113495bSYour Name }
5033*5113495bSYour Name 
5034*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_dma_sw2rxdma_link_ring_size);
5035*5113495bSYour Name 
5036*5113495bSYour Name int
wlan_cfg_get_dma_mon_desc_ring_size(struct wlan_cfg_dp_pdev_ctxt * cfg)5037*5113495bSYour Name wlan_cfg_get_dma_mon_desc_ring_size(struct wlan_cfg_dp_pdev_ctxt *cfg)
5038*5113495bSYour Name {
5039*5113495bSYour Name 	return cfg->rxdma_monitor_desc_ring;
5040*5113495bSYour Name }
5041*5113495bSYour Name 
5042*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_dma_mon_desc_ring_size);
5043*5113495bSYour Name 
wlan_cfg_get_rx_dma_buf_ring_size(struct wlan_cfg_dp_pdev_ctxt * cfg)5044*5113495bSYour Name int wlan_cfg_get_rx_dma_buf_ring_size(struct wlan_cfg_dp_pdev_ctxt *cfg)
5045*5113495bSYour Name {
5046*5113495bSYour Name 	return  cfg->rx_dma_buf_ring_size;
5047*5113495bSYour Name }
5048*5113495bSYour Name 
wlan_cfg_set_rx_dma_buf_ring_size(struct wlan_cfg_dp_pdev_ctxt * cfg,int ring_size)5049*5113495bSYour Name void wlan_cfg_set_rx_dma_buf_ring_size(struct wlan_cfg_dp_pdev_ctxt *cfg,
5050*5113495bSYour Name 				       int ring_size)
5051*5113495bSYour Name {
5052*5113495bSYour Name 	cfg->rx_dma_buf_ring_size = ring_size;
5053*5113495bSYour Name }
5054*5113495bSYour Name 
wlan_cfg_get_num_mac_rings(struct wlan_cfg_dp_pdev_ctxt * cfg)5055*5113495bSYour Name int wlan_cfg_get_num_mac_rings(struct wlan_cfg_dp_pdev_ctxt *cfg)
5056*5113495bSYour Name {
5057*5113495bSYour Name 	return  cfg->num_mac_rings;
5058*5113495bSYour Name }
5059*5113495bSYour Name 
5060*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_num_mac_rings);
5061*5113495bSYour Name 
wlan_cfg_is_gro_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5062*5113495bSYour Name bool wlan_cfg_is_gro_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5063*5113495bSYour Name {
5064*5113495bSYour Name 	return  cfg->gro_enabled;
5065*5113495bSYour Name }
5066*5113495bSYour Name 
wlan_cfg_is_lro_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5067*5113495bSYour Name bool wlan_cfg_is_lro_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5068*5113495bSYour Name {
5069*5113495bSYour Name 	return  cfg->lro_enabled;
5070*5113495bSYour Name }
5071*5113495bSYour Name 
wlan_cfg_is_ipa_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5072*5113495bSYour Name bool wlan_cfg_is_ipa_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5073*5113495bSYour Name {
5074*5113495bSYour Name 	return  cfg->ipa_enabled;
5075*5113495bSYour Name }
5076*5113495bSYour Name 
wlan_cfg_set_rx_hash(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5077*5113495bSYour Name void wlan_cfg_set_rx_hash(struct wlan_cfg_dp_soc_ctxt *cfg, bool val)
5078*5113495bSYour Name {
5079*5113495bSYour Name 	cfg->rx_hash = val;
5080*5113495bSYour Name }
5081*5113495bSYour Name 
wlan_cfg_is_rx_hash_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5082*5113495bSYour Name bool wlan_cfg_is_rx_hash_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5083*5113495bSYour Name {
5084*5113495bSYour Name 	return  cfg->rx_hash;
5085*5113495bSYour Name }
5086*5113495bSYour Name 
5087*5113495bSYour Name #ifdef WLAN_SUPPORT_RX_FLOW_TAG
wlan_cfg_set_rx_rr(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5088*5113495bSYour Name void wlan_cfg_set_rx_rr(struct wlan_cfg_dp_soc_ctxt *cfg, bool val)
5089*5113495bSYour Name {
5090*5113495bSYour Name 	cfg->rx_rr = val;
5091*5113495bSYour Name }
5092*5113495bSYour Name 
wlan_cfg_is_rx_rr_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5093*5113495bSYour Name bool wlan_cfg_is_rx_rr_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5094*5113495bSYour Name {
5095*5113495bSYour Name 	return  cfg->rx_rr;
5096*5113495bSYour Name }
5097*5113495bSYour Name #else
wlan_cfg_set_rx_rr(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5098*5113495bSYour Name void wlan_cfg_set_rx_rr(struct wlan_cfg_dp_soc_ctxt *cfg, bool val)
5099*5113495bSYour Name {
5100*5113495bSYour Name }
5101*5113495bSYour Name 
wlan_cfg_is_rx_rr_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5102*5113495bSYour Name bool wlan_cfg_is_rx_rr_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5103*5113495bSYour Name {
5104*5113495bSYour Name 	return  false;
5105*5113495bSYour Name }
5106*5113495bSYour Name #endif
5107*5113495bSYour Name 
wlan_cfg_get_dp_pdev_nss_enabled(struct wlan_cfg_dp_pdev_ctxt * cfg)5108*5113495bSYour Name int wlan_cfg_get_dp_pdev_nss_enabled(struct wlan_cfg_dp_pdev_ctxt *cfg)
5109*5113495bSYour Name {
5110*5113495bSYour Name 	return  cfg->nss_enabled;
5111*5113495bSYour Name }
5112*5113495bSYour Name 
wlan_cfg_set_dp_pdev_nss_enabled(struct wlan_cfg_dp_pdev_ctxt * cfg,int nss_enabled)5113*5113495bSYour Name void wlan_cfg_set_dp_pdev_nss_enabled(struct wlan_cfg_dp_pdev_ctxt *cfg, int nss_enabled)
5114*5113495bSYour Name {
5115*5113495bSYour Name 	cfg->nss_enabled = nss_enabled;
5116*5113495bSYour Name }
5117*5113495bSYour Name 
wlan_cfg_get_dp_soc_nss_cfg(struct wlan_cfg_dp_soc_ctxt * cfg)5118*5113495bSYour Name int wlan_cfg_get_dp_soc_nss_cfg(struct wlan_cfg_dp_soc_ctxt *cfg)
5119*5113495bSYour Name {
5120*5113495bSYour Name 	return  cfg->nss_cfg;
5121*5113495bSYour Name }
5122*5113495bSYour Name 
wlan_cfg_set_dp_soc_nss_cfg(struct wlan_cfg_dp_soc_ctxt * cfg,int nss_cfg)5123*5113495bSYour Name void wlan_cfg_set_dp_soc_nss_cfg(struct wlan_cfg_dp_soc_ctxt *cfg, int nss_cfg)
5124*5113495bSYour Name {
5125*5113495bSYour Name 	cfg->nss_cfg = nss_cfg;
5126*5113495bSYour Name 	if (cfg->nss_cfg)
5127*5113495bSYour Name 		cfg->tx_comp_ring_size = cfg->tx_comp_ring_size_nss;
5128*5113495bSYour Name }
5129*5113495bSYour Name 
wlan_cfg_get_int_batch_threshold_ppe2tcl(struct wlan_cfg_dp_soc_ctxt * cfg)5130*5113495bSYour Name int wlan_cfg_get_int_batch_threshold_ppe2tcl(struct wlan_cfg_dp_soc_ctxt *cfg)
5131*5113495bSYour Name {
5132*5113495bSYour Name 	return cfg->int_batch_threshold_ppe2tcl;
5133*5113495bSYour Name }
5134*5113495bSYour Name 
wlan_cfg_get_int_timer_threshold_ppe2tcl(struct wlan_cfg_dp_soc_ctxt * cfg)5135*5113495bSYour Name int wlan_cfg_get_int_timer_threshold_ppe2tcl(struct wlan_cfg_dp_soc_ctxt *cfg)
5136*5113495bSYour Name {
5137*5113495bSYour Name 	return cfg->int_timer_threshold_ppe2tcl;
5138*5113495bSYour Name }
5139*5113495bSYour Name 
wlan_cfg_get_int_batch_threshold_tx(struct wlan_cfg_dp_soc_ctxt * cfg)5140*5113495bSYour Name int wlan_cfg_get_int_batch_threshold_tx(struct wlan_cfg_dp_soc_ctxt *cfg)
5141*5113495bSYour Name {
5142*5113495bSYour Name 	return cfg->int_batch_threshold_tx;
5143*5113495bSYour Name }
5144*5113495bSYour Name 
wlan_cfg_get_int_timer_threshold_tx(struct wlan_cfg_dp_soc_ctxt * cfg)5145*5113495bSYour Name int wlan_cfg_get_int_timer_threshold_tx(struct wlan_cfg_dp_soc_ctxt *cfg)
5146*5113495bSYour Name {
5147*5113495bSYour Name 	return cfg->int_timer_threshold_tx;
5148*5113495bSYour Name }
5149*5113495bSYour Name 
wlan_cfg_get_int_batch_threshold_rx(struct wlan_cfg_dp_soc_ctxt * cfg)5150*5113495bSYour Name int wlan_cfg_get_int_batch_threshold_rx(struct wlan_cfg_dp_soc_ctxt *cfg)
5151*5113495bSYour Name {
5152*5113495bSYour Name 	return cfg->int_batch_threshold_rx;
5153*5113495bSYour Name }
5154*5113495bSYour Name 
wlan_cfg_get_int_timer_threshold_rx(struct wlan_cfg_dp_soc_ctxt * cfg)5155*5113495bSYour Name int wlan_cfg_get_int_timer_threshold_rx(struct wlan_cfg_dp_soc_ctxt *cfg)
5156*5113495bSYour Name {
5157*5113495bSYour Name 	return cfg->int_timer_threshold_rx;
5158*5113495bSYour Name }
5159*5113495bSYour Name 
wlan_cfg_get_int_batch_threshold_other(struct wlan_cfg_dp_soc_ctxt * cfg)5160*5113495bSYour Name int wlan_cfg_get_int_batch_threshold_other(struct wlan_cfg_dp_soc_ctxt *cfg)
5161*5113495bSYour Name {
5162*5113495bSYour Name 	return cfg->int_batch_threshold_other;
5163*5113495bSYour Name }
5164*5113495bSYour Name 
wlan_cfg_get_int_timer_threshold_other(struct wlan_cfg_dp_soc_ctxt * cfg)5165*5113495bSYour Name int wlan_cfg_get_int_timer_threshold_other(struct wlan_cfg_dp_soc_ctxt *cfg)
5166*5113495bSYour Name {
5167*5113495bSYour Name 	return cfg->int_timer_threshold_other;
5168*5113495bSYour Name }
5169*5113495bSYour Name 
wlan_cfg_get_int_batch_threshold_mon_dest(struct wlan_cfg_dp_soc_ctxt * cfg)5170*5113495bSYour Name int wlan_cfg_get_int_batch_threshold_mon_dest(struct wlan_cfg_dp_soc_ctxt *cfg)
5171*5113495bSYour Name {
5172*5113495bSYour Name 	return cfg->int_batch_threshold_mon_dest;
5173*5113495bSYour Name }
5174*5113495bSYour Name 
wlan_cfg_get_int_timer_threshold_mon_dest(struct wlan_cfg_dp_soc_ctxt * cfg)5175*5113495bSYour Name int wlan_cfg_get_int_timer_threshold_mon_dest(struct wlan_cfg_dp_soc_ctxt *cfg)
5176*5113495bSYour Name {
5177*5113495bSYour Name 	return cfg->int_timer_threshold_mon_dest;
5178*5113495bSYour Name }
5179*5113495bSYour Name 
wlan_cfg_get_p2p_checksum_offload(struct wlan_cfg_dp_soc_ctxt * cfg)5180*5113495bSYour Name int wlan_cfg_get_p2p_checksum_offload(struct wlan_cfg_dp_soc_ctxt *cfg)
5181*5113495bSYour Name {
5182*5113495bSYour Name 	return cfg->p2p_tcp_udp_checksumoffload;
5183*5113495bSYour Name }
5184*5113495bSYour Name 
wlan_cfg_get_nan_checksum_offload(struct wlan_cfg_dp_soc_ctxt * cfg)5185*5113495bSYour Name int wlan_cfg_get_nan_checksum_offload(struct wlan_cfg_dp_soc_ctxt *cfg)
5186*5113495bSYour Name {
5187*5113495bSYour Name 	return cfg->nan_tcp_udp_checksumoffload;
5188*5113495bSYour Name }
5189*5113495bSYour Name 
wlan_cfg_get_checksum_offload(struct wlan_cfg_dp_soc_ctxt * cfg)5190*5113495bSYour Name int wlan_cfg_get_checksum_offload(struct wlan_cfg_dp_soc_ctxt *cfg)
5191*5113495bSYour Name {
5192*5113495bSYour Name 	return cfg->tcp_udp_checksumoffload;
5193*5113495bSYour Name }
5194*5113495bSYour Name 
wlan_cfg_get_rx_defrag_min_timeout(struct wlan_cfg_dp_soc_ctxt * cfg)5195*5113495bSYour Name int wlan_cfg_get_rx_defrag_min_timeout(struct wlan_cfg_dp_soc_ctxt *cfg)
5196*5113495bSYour Name {
5197*5113495bSYour Name 	return cfg->rx_defrag_min_timeout;
5198*5113495bSYour Name }
5199*5113495bSYour Name 
wlan_cfg_get_defrag_timeout_check(struct wlan_cfg_dp_soc_ctxt * cfg)5200*5113495bSYour Name int wlan_cfg_get_defrag_timeout_check(struct wlan_cfg_dp_soc_ctxt *cfg)
5201*5113495bSYour Name {
5202*5113495bSYour Name 	return cfg->defrag_timeout_check;
5203*5113495bSYour Name }
5204*5113495bSYour Name 
5205*5113495bSYour Name int
wlan_cfg_get_dp_soc_wbm_release_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5206*5113495bSYour Name wlan_cfg_get_dp_soc_wbm_release_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5207*5113495bSYour Name {
5208*5113495bSYour Name 	return cfg->wbm_release_ring;
5209*5113495bSYour Name }
5210*5113495bSYour Name 
5211*5113495bSYour Name int
wlan_cfg_get_dp_soc_tcl_cmd_credit_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5212*5113495bSYour Name wlan_cfg_get_dp_soc_tcl_cmd_credit_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5213*5113495bSYour Name {
5214*5113495bSYour Name 	return cfg->tcl_cmd_credit_ring;
5215*5113495bSYour Name }
5216*5113495bSYour Name 
5217*5113495bSYour Name int
wlan_cfg_get_dp_soc_tcl_status_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5218*5113495bSYour Name wlan_cfg_get_dp_soc_tcl_status_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5219*5113495bSYour Name {
5220*5113495bSYour Name 	return cfg->tcl_status_ring;
5221*5113495bSYour Name }
5222*5113495bSYour Name 
5223*5113495bSYour Name int
wlan_cfg_get_dp_soc_reo_reinject_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5224*5113495bSYour Name wlan_cfg_get_dp_soc_reo_reinject_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5225*5113495bSYour Name {
5226*5113495bSYour Name 	return cfg->reo_reinject_ring;
5227*5113495bSYour Name }
5228*5113495bSYour Name 
5229*5113495bSYour Name int
wlan_cfg_get_dp_soc_rx_release_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5230*5113495bSYour Name wlan_cfg_get_dp_soc_rx_release_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5231*5113495bSYour Name {
5232*5113495bSYour Name 	return cfg->rx_release_ring;
5233*5113495bSYour Name }
5234*5113495bSYour Name 
5235*5113495bSYour Name int
wlan_cfg_get_dp_soc_reo_exception_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5236*5113495bSYour Name wlan_cfg_get_dp_soc_reo_exception_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5237*5113495bSYour Name {
5238*5113495bSYour Name 	return cfg->reo_exception_ring;
5239*5113495bSYour Name }
5240*5113495bSYour Name 
5241*5113495bSYour Name int
wlan_cfg_get_dp_soc_reo_cmd_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5242*5113495bSYour Name wlan_cfg_get_dp_soc_reo_cmd_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5243*5113495bSYour Name {
5244*5113495bSYour Name 	return cfg->reo_cmd_ring;
5245*5113495bSYour Name }
5246*5113495bSYour Name 
5247*5113495bSYour Name int
wlan_cfg_get_dp_soc_reo_status_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5248*5113495bSYour Name wlan_cfg_get_dp_soc_reo_status_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5249*5113495bSYour Name {
5250*5113495bSYour Name 	return cfg->reo_status_ring;
5251*5113495bSYour Name }
5252*5113495bSYour Name 
5253*5113495bSYour Name int
wlan_cfg_get_dp_soc_rxdma_refill_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5254*5113495bSYour Name wlan_cfg_get_dp_soc_rxdma_refill_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5255*5113495bSYour Name {
5256*5113495bSYour Name 	return cfg->rxdma_refill_ring;
5257*5113495bSYour Name }
5258*5113495bSYour Name 
5259*5113495bSYour Name void
wlan_cfg_set_dp_soc_rxdma_refill_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg,int ring_size)5260*5113495bSYour Name wlan_cfg_set_dp_soc_rxdma_refill_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg,
5261*5113495bSYour Name 					   int ring_size)
5262*5113495bSYour Name {
5263*5113495bSYour Name 	cfg->rxdma_refill_ring = ring_size;
5264*5113495bSYour Name }
5265*5113495bSYour Name 
5266*5113495bSYour Name bool
wlan_cfg_get_dp_soc_rxdma_refill_lt_disable(struct wlan_cfg_dp_soc_ctxt * cfg)5267*5113495bSYour Name wlan_cfg_get_dp_soc_rxdma_refill_lt_disable(struct wlan_cfg_dp_soc_ctxt *cfg)
5268*5113495bSYour Name {
5269*5113495bSYour Name 	return cfg->rxdma_refill_lt_disable;
5270*5113495bSYour Name }
5271*5113495bSYour Name 
5272*5113495bSYour Name int
wlan_cfg_get_dp_soc_tx_desc_limit_0(struct wlan_cfg_dp_soc_ctxt * cfg)5273*5113495bSYour Name wlan_cfg_get_dp_soc_tx_desc_limit_0(struct wlan_cfg_dp_soc_ctxt *cfg)
5274*5113495bSYour Name {
5275*5113495bSYour Name 	return cfg->tx_desc_limit_0;
5276*5113495bSYour Name }
5277*5113495bSYour Name 
5278*5113495bSYour Name int
wlan_cfg_get_dp_soc_tx_desc_limit_1(struct wlan_cfg_dp_soc_ctxt * cfg)5279*5113495bSYour Name wlan_cfg_get_dp_soc_tx_desc_limit_1(struct wlan_cfg_dp_soc_ctxt *cfg)
5280*5113495bSYour Name {
5281*5113495bSYour Name 	return cfg->tx_desc_limit_1;
5282*5113495bSYour Name }
5283*5113495bSYour Name 
5284*5113495bSYour Name int
wlan_cfg_get_dp_soc_tx_desc_limit_2(struct wlan_cfg_dp_soc_ctxt * cfg)5285*5113495bSYour Name wlan_cfg_get_dp_soc_tx_desc_limit_2(struct wlan_cfg_dp_soc_ctxt *cfg)
5286*5113495bSYour Name {
5287*5113495bSYour Name 	return cfg->tx_desc_limit_2;
5288*5113495bSYour Name }
5289*5113495bSYour Name 
5290*5113495bSYour Name int
wlan_cfg_get_dp_soc_tx_device_limit(struct wlan_cfg_dp_soc_ctxt * cfg)5291*5113495bSYour Name wlan_cfg_get_dp_soc_tx_device_limit(struct wlan_cfg_dp_soc_ctxt *cfg)
5292*5113495bSYour Name {
5293*5113495bSYour Name 	return cfg->tx_device_limit;
5294*5113495bSYour Name }
5295*5113495bSYour Name 
5296*5113495bSYour Name int
wlan_cfg_get_dp_soc_tx_spl_device_limit(struct wlan_cfg_dp_soc_ctxt * cfg)5297*5113495bSYour Name wlan_cfg_get_dp_soc_tx_spl_device_limit(struct wlan_cfg_dp_soc_ctxt *cfg)
5298*5113495bSYour Name {
5299*5113495bSYour Name 	return cfg->tx_spl_device_limit;
5300*5113495bSYour Name }
5301*5113495bSYour Name 
5302*5113495bSYour Name int
wlan_cfg_get_dp_soc_tx_sw_internode_queue(struct wlan_cfg_dp_soc_ctxt * cfg)5303*5113495bSYour Name wlan_cfg_get_dp_soc_tx_sw_internode_queue(struct wlan_cfg_dp_soc_ctxt *cfg)
5304*5113495bSYour Name {
5305*5113495bSYour Name 	return cfg->tx_sw_internode_queue;
5306*5113495bSYour Name }
5307*5113495bSYour Name 
5308*5113495bSYour Name int
wlan_cfg_get_dp_soc_rxdma_err_dst_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5309*5113495bSYour Name wlan_cfg_get_dp_soc_rxdma_err_dst_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5310*5113495bSYour Name {
5311*5113495bSYour Name 	return cfg->rxdma_err_dst_ring;
5312*5113495bSYour Name }
5313*5113495bSYour Name 
5314*5113495bSYour Name int
wlan_cfg_get_dp_soc_rx_sw_desc_weight(struct wlan_cfg_dp_soc_ctxt * cfg)5315*5113495bSYour Name wlan_cfg_get_dp_soc_rx_sw_desc_weight(struct wlan_cfg_dp_soc_ctxt *cfg)
5316*5113495bSYour Name {
5317*5113495bSYour Name 	return cfg->rx_sw_desc_weight;
5318*5113495bSYour Name }
5319*5113495bSYour Name 
5320*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_dp_soc_rx_sw_desc_weight);
5321*5113495bSYour Name 
5322*5113495bSYour Name int
wlan_cfg_get_dp_soc_rx_sw_desc_num(struct wlan_cfg_dp_soc_ctxt * cfg)5323*5113495bSYour Name wlan_cfg_get_dp_soc_rx_sw_desc_num(struct wlan_cfg_dp_soc_ctxt *cfg)
5324*5113495bSYour Name {
5325*5113495bSYour Name 	return cfg->rx_sw_desc_num;
5326*5113495bSYour Name }
5327*5113495bSYour Name 
5328*5113495bSYour Name void
wlan_cfg_set_dp_soc_rx_sw_desc_num(struct wlan_cfg_dp_soc_ctxt * cfg,int desc_num)5329*5113495bSYour Name wlan_cfg_set_dp_soc_rx_sw_desc_num(struct wlan_cfg_dp_soc_ctxt *cfg,
5330*5113495bSYour Name 				   int desc_num)
5331*5113495bSYour Name {
5332*5113495bSYour Name 	cfg->rx_sw_desc_num = desc_num;
5333*5113495bSYour Name }
5334*5113495bSYour Name 
5335*5113495bSYour Name uint32_t
wlan_cfg_get_reo_rings_mapping(struct wlan_cfg_dp_soc_ctxt * cfg)5336*5113495bSYour Name wlan_cfg_get_reo_rings_mapping(struct wlan_cfg_dp_soc_ctxt *cfg)
5337*5113495bSYour Name {
5338*5113495bSYour Name 	return cfg->reo_rings_mapping;
5339*5113495bSYour Name }
5340*5113495bSYour Name 
5341*5113495bSYour Name uint32_t
wlan_cfg_get_rx_rings_mapping(struct wlan_cfg_dp_soc_ctxt * cfg)5342*5113495bSYour Name wlan_cfg_get_rx_rings_mapping(struct wlan_cfg_dp_soc_ctxt *cfg)
5343*5113495bSYour Name {
5344*5113495bSYour Name 	return cfg->rx_rings_mapping;
5345*5113495bSYour Name }
5346*5113495bSYour Name 
5347*5113495bSYour Name #ifdef DP_UMAC_HW_RESET_SUPPORT
5348*5113495bSYour Name uint32_t
wlan_cfg_get_umac_reset_buffer_window_ms(struct wlan_cfg_dp_soc_ctxt * cfg)5349*5113495bSYour Name wlan_cfg_get_umac_reset_buffer_window_ms(struct wlan_cfg_dp_soc_ctxt *cfg)
5350*5113495bSYour Name {
5351*5113495bSYour Name 	return cfg->umac_reset_buffer_window;
5352*5113495bSYour Name }
5353*5113495bSYour Name #endif
5354*5113495bSYour Name 
5355*5113495bSYour Name bool
wlan_cfg_get_dp_caps(struct wlan_cfg_dp_soc_ctxt * cfg,enum cdp_capabilities dp_caps)5356*5113495bSYour Name wlan_cfg_get_dp_caps(struct wlan_cfg_dp_soc_ctxt *cfg,
5357*5113495bSYour Name 		     enum cdp_capabilities dp_caps)
5358*5113495bSYour Name {
5359*5113495bSYour Name 	switch (dp_caps) {
5360*5113495bSYour Name 	case CDP_CFG_DP_TSO:
5361*5113495bSYour Name 		return cfg->tso_enabled;
5362*5113495bSYour Name 	case CDP_CFG_DP_LRO:
5363*5113495bSYour Name 		return cfg->lro_enabled;
5364*5113495bSYour Name 	case CDP_CFG_DP_SG:
5365*5113495bSYour Name 		return cfg->sg_enabled;
5366*5113495bSYour Name 	case CDP_CFG_DP_GRO:
5367*5113495bSYour Name 		return cfg->gro_enabled;
5368*5113495bSYour Name 	case CDP_CFG_DP_OL_TX_CSUM:
5369*5113495bSYour Name 		return cfg->ol_tx_csum_enabled;
5370*5113495bSYour Name 	case CDP_CFG_DP_OL_RX_CSUM:
5371*5113495bSYour Name 		return cfg->ol_rx_csum_enabled;
5372*5113495bSYour Name 	case CDP_CFG_DP_RAWMODE:
5373*5113495bSYour Name 		return cfg->rawmode_enabled;
5374*5113495bSYour Name 	case CDP_CFG_DP_PEER_FLOW_CTRL:
5375*5113495bSYour Name 		return cfg->peer_flow_ctrl_enabled;
5376*5113495bSYour Name 	case CDP_CFG_DP_MARK_NOTIFY_FRAME_SUPPORT:
5377*5113495bSYour Name 		return cfg->notify_frame_support;
5378*5113495bSYour Name 	default:
5379*5113495bSYour Name 		return false;
5380*5113495bSYour Name 	}
5381*5113495bSYour Name }
5382*5113495bSYour Name 
wlan_cfg_set_tso_desc_attach_defer(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5383*5113495bSYour Name void wlan_cfg_set_tso_desc_attach_defer(struct wlan_cfg_dp_soc_ctxt *cfg,
5384*5113495bSYour Name 					bool val)
5385*5113495bSYour Name {
5386*5113495bSYour Name 	cfg->is_tso_desc_attach_defer = val;
5387*5113495bSYour Name }
5388*5113495bSYour Name 
wlan_cfg_is_tso_desc_attach_defer(struct wlan_cfg_dp_soc_ctxt * cfg)5389*5113495bSYour Name bool wlan_cfg_is_tso_desc_attach_defer(struct wlan_cfg_dp_soc_ctxt *cfg)
5390*5113495bSYour Name {
5391*5113495bSYour Name 	return cfg->is_tso_desc_attach_defer;
5392*5113495bSYour Name }
5393*5113495bSYour Name 
5394*5113495bSYour Name #ifdef QCA_LL_TX_FLOW_CONTROL_V2
5395*5113495bSYour Name /**
5396*5113495bSYour Name  * wlan_cfg_get_tx_flow_stop_queue_th() - Get flow control stop threshold
5397*5113495bSYour Name  * @cfg: config context
5398*5113495bSYour Name  *
5399*5113495bSYour Name  * Return: stop threshold
5400*5113495bSYour Name  */
wlan_cfg_get_tx_flow_stop_queue_th(struct wlan_cfg_dp_soc_ctxt * cfg)5401*5113495bSYour Name int wlan_cfg_get_tx_flow_stop_queue_th(struct wlan_cfg_dp_soc_ctxt *cfg)
5402*5113495bSYour Name {
5403*5113495bSYour Name 	return cfg->tx_flow_stop_queue_threshold;
5404*5113495bSYour Name }
5405*5113495bSYour Name 
5406*5113495bSYour Name /**
5407*5113495bSYour Name  * wlan_cfg_get_tx_flow_start_queue_offset() - Get flow control start offset
5408*5113495bSYour Name  *					for TX to resume
5409*5113495bSYour Name  * @cfg: config context
5410*5113495bSYour Name  *
5411*5113495bSYour Name  * Return: stop threshold
5412*5113495bSYour Name  */
wlan_cfg_get_tx_flow_start_queue_offset(struct wlan_cfg_dp_soc_ctxt * cfg)5413*5113495bSYour Name int wlan_cfg_get_tx_flow_start_queue_offset(struct wlan_cfg_dp_soc_ctxt *cfg)
5414*5113495bSYour Name {
5415*5113495bSYour Name 	return cfg->tx_flow_start_queue_offset;
5416*5113495bSYour Name }
5417*5113495bSYour Name #endif /* QCA_LL_TX_FLOW_CONTROL_V2 */
5418*5113495bSYour Name 
wlan_cfg_set_rx_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5419*5113495bSYour Name void wlan_cfg_set_rx_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt *cfg,
5420*5113495bSYour Name 				      bool val)
5421*5113495bSYour Name {
5422*5113495bSYour Name 	cfg->is_rx_flow_tag_enabled = val;
5423*5113495bSYour Name }
5424*5113495bSYour Name 
wlan_cfg_rx_fst_get_hash_key(struct wlan_cfg_dp_soc_ctxt * cfg)5425*5113495bSYour Name uint8_t *wlan_cfg_rx_fst_get_hash_key(struct wlan_cfg_dp_soc_ctxt *cfg)
5426*5113495bSYour Name {
5427*5113495bSYour Name 	return cfg->rx_toeplitz_hash_key;
5428*5113495bSYour Name }
5429*5113495bSYour Name 
wlan_cfg_rx_fst_get_max_search(struct wlan_cfg_dp_soc_ctxt * cfg)5430*5113495bSYour Name uint8_t wlan_cfg_rx_fst_get_max_search(struct wlan_cfg_dp_soc_ctxt *cfg)
5431*5113495bSYour Name {
5432*5113495bSYour Name 	return cfg->rx_flow_max_search;
5433*5113495bSYour Name }
5434*5113495bSYour Name 
wlan_cfg_is_rx_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5435*5113495bSYour Name bool wlan_cfg_is_rx_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5436*5113495bSYour Name {
5437*5113495bSYour Name 	return cfg->is_rx_flow_tag_enabled;
5438*5113495bSYour Name }
5439*5113495bSYour Name 
5440*5113495bSYour Name qdf_export_symbol(wlan_cfg_is_rx_flow_tag_enabled);
5441*5113495bSYour Name 
wlan_cfg_is_poll_mode_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5442*5113495bSYour Name bool wlan_cfg_is_poll_mode_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5443*5113495bSYour Name {
5444*5113495bSYour Name 	return (bool)(cfg->is_poll_mode_enabled);
5445*5113495bSYour Name }
5446*5113495bSYour Name 
5447*5113495bSYour Name void
wlan_cfg_set_rx_flow_search_table_per_pdev(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5448*5113495bSYour Name wlan_cfg_set_rx_flow_search_table_per_pdev(struct wlan_cfg_dp_soc_ctxt *cfg,
5449*5113495bSYour Name 					   bool val)
5450*5113495bSYour Name {
5451*5113495bSYour Name 	cfg->is_rx_flow_search_table_per_pdev = val;
5452*5113495bSYour Name }
5453*5113495bSYour Name 
wlan_cfg_is_rx_flow_search_table_per_pdev(struct wlan_cfg_dp_soc_ctxt * cfg)5454*5113495bSYour Name bool wlan_cfg_is_rx_flow_search_table_per_pdev(struct wlan_cfg_dp_soc_ctxt *cfg)
5455*5113495bSYour Name {
5456*5113495bSYour Name 	return cfg->is_rx_flow_search_table_per_pdev;
5457*5113495bSYour Name }
5458*5113495bSYour Name 
wlan_cfg_set_rx_flow_search_table_size(struct wlan_cfg_dp_soc_ctxt * cfg,uint16_t val)5459*5113495bSYour Name void wlan_cfg_set_rx_flow_search_table_size(struct wlan_cfg_dp_soc_ctxt *cfg,
5460*5113495bSYour Name 					    uint16_t val)
5461*5113495bSYour Name {
5462*5113495bSYour Name 	cfg->rx_flow_search_table_size = val;
5463*5113495bSYour Name }
5464*5113495bSYour Name 
5465*5113495bSYour Name uint16_t
wlan_cfg_get_rx_flow_search_table_size(struct wlan_cfg_dp_soc_ctxt * cfg)5466*5113495bSYour Name wlan_cfg_get_rx_flow_search_table_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5467*5113495bSYour Name {
5468*5113495bSYour Name 	return  cfg->rx_flow_search_table_size;
5469*5113495bSYour Name }
5470*5113495bSYour Name 
5471*5113495bSYour Name void
wlan_cfg_set_rx_mon_protocol_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5472*5113495bSYour Name wlan_cfg_set_rx_mon_protocol_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt *cfg,
5473*5113495bSYour Name 					      bool val)
5474*5113495bSYour Name {
5475*5113495bSYour Name 	cfg->is_rx_mon_protocol_flow_tag_enabled = val;
5476*5113495bSYour Name }
5477*5113495bSYour Name 
5478*5113495bSYour Name bool
wlan_cfg_is_rx_mon_protocol_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5479*5113495bSYour Name wlan_cfg_is_rx_mon_protocol_flow_tag_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5480*5113495bSYour Name {
5481*5113495bSYour Name 	return cfg->is_rx_mon_protocol_flow_tag_enabled;
5482*5113495bSYour Name }
5483*5113495bSYour Name 
5484*5113495bSYour Name qdf_export_symbol(wlan_cfg_is_rx_mon_protocol_flow_tag_enabled);
5485*5113495bSYour Name 
5486*5113495bSYour Name void
wlan_cfg_set_tx_per_pkt_vdev_id_check(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5487*5113495bSYour Name wlan_cfg_set_tx_per_pkt_vdev_id_check(struct wlan_cfg_dp_soc_ctxt *cfg,
5488*5113495bSYour Name 				      bool val)
5489*5113495bSYour Name {
5490*5113495bSYour Name 	cfg->tx_per_pkt_vdev_id_check = val;
5491*5113495bSYour Name }
5492*5113495bSYour Name 
5493*5113495bSYour Name bool
wlan_cfg_is_tx_per_pkt_vdev_id_check_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5494*5113495bSYour Name wlan_cfg_is_tx_per_pkt_vdev_id_check_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5495*5113495bSYour Name {
5496*5113495bSYour Name 	return cfg->tx_per_pkt_vdev_id_check;
5497*5113495bSYour Name }
5498*5113495bSYour Name 
5499*5113495bSYour Name void
wlan_cfg_set_peer_ext_stats(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5500*5113495bSYour Name wlan_cfg_set_peer_ext_stats(struct wlan_cfg_dp_soc_ctxt *cfg,
5501*5113495bSYour Name 			    bool val)
5502*5113495bSYour Name {
5503*5113495bSYour Name 	cfg->pext_stats_enabled = val;
5504*5113495bSYour Name }
5505*5113495bSYour Name 
5506*5113495bSYour Name void
wlan_cfg_set_peer_jitter_stats(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5507*5113495bSYour Name wlan_cfg_set_peer_jitter_stats(struct wlan_cfg_dp_soc_ctxt *cfg,
5508*5113495bSYour Name 			       bool val)
5509*5113495bSYour Name {
5510*5113495bSYour Name 	cfg->jitter_stats_enabled = val;
5511*5113495bSYour Name }
5512*5113495bSYour Name 
5513*5113495bSYour Name bool
wlan_cfg_is_peer_ext_stats_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5514*5113495bSYour Name wlan_cfg_is_peer_ext_stats_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5515*5113495bSYour Name {
5516*5113495bSYour Name 	return cfg->pext_stats_enabled;
5517*5113495bSYour Name }
5518*5113495bSYour Name 
wlan_cfg_is_fst_in_cmem_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5519*5113495bSYour Name bool wlan_cfg_is_fst_in_cmem_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5520*5113495bSYour Name {
5521*5113495bSYour Name 	return cfg->fst_in_cmem;
5522*5113495bSYour Name }
5523*5113495bSYour Name 
wlan_cfg_is_peer_jitter_stats_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5524*5113495bSYour Name bool wlan_cfg_is_peer_jitter_stats_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5525*5113495bSYour Name {
5526*5113495bSYour Name 	return cfg->jitter_stats_enabled;
5527*5113495bSYour Name }
5528*5113495bSYour Name 
5529*5113495bSYour Name void
wlan_cfg_set_peer_link_stats(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5530*5113495bSYour Name wlan_cfg_set_peer_link_stats(struct wlan_cfg_dp_soc_ctxt *cfg,
5531*5113495bSYour Name 			     bool val)
5532*5113495bSYour Name {
5533*5113495bSYour Name 	cfg->peer_link_stats_enabled = val;
5534*5113495bSYour Name }
5535*5113495bSYour Name 
5536*5113495bSYour Name qdf_export_symbol(wlan_cfg_set_peer_link_stats);
5537*5113495bSYour Name 
wlan_cfg_is_peer_link_stats_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5538*5113495bSYour Name bool wlan_cfg_is_peer_link_stats_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5539*5113495bSYour Name {
5540*5113495bSYour Name 	return cfg->peer_link_stats_enabled;
5541*5113495bSYour Name }
5542*5113495bSYour Name 
5543*5113495bSYour Name qdf_export_symbol(wlan_cfg_is_peer_link_stats_enabled);
5544*5113495bSYour Name 
wlan_cfg_is_dp_buf_page_frag_alloc_enable(struct wlan_cfg_dp_soc_ctxt * cfg)5545*5113495bSYour Name bool wlan_cfg_is_dp_buf_page_frag_alloc_enable(struct wlan_cfg_dp_soc_ctxt *cfg)
5546*5113495bSYour Name {
5547*5113495bSYour Name 	return cfg->enable_dp_buf_page_frag_alloc;
5548*5113495bSYour Name }
5549*5113495bSYour Name 
5550*5113495bSYour Name #ifdef WLAN_FEATURE_RX_PREALLOC_BUFFER_POOL
wlan_cfg_is_rx_buffer_pool_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5551*5113495bSYour Name bool wlan_cfg_is_rx_buffer_pool_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5552*5113495bSYour Name {
5553*5113495bSYour Name 	return cfg->is_rx_buff_pool_enabled;
5554*5113495bSYour Name }
5555*5113495bSYour Name 
wlan_cfg_is_rx_refill_buffer_pool_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5556*5113495bSYour Name bool wlan_cfg_is_rx_refill_buffer_pool_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5557*5113495bSYour Name {
5558*5113495bSYour Name 	return cfg->is_rx_refill_buff_pool_enabled;
5559*5113495bSYour Name }
5560*5113495bSYour Name 
wlan_cfg_get_rx_refill_buf_pool_size(struct wlan_cfg_dp_soc_ctxt * cfg)5561*5113495bSYour Name int wlan_cfg_get_rx_refill_buf_pool_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5562*5113495bSYour Name {
5563*5113495bSYour Name 	return cfg->rx_refill_buff_pool_size;
5564*5113495bSYour Name }
5565*5113495bSYour Name 
5566*5113495bSYour Name void
wlan_cfg_set_rx_refill_buf_pool_size(struct wlan_cfg_dp_soc_ctxt * cfg,int size)5567*5113495bSYour Name wlan_cfg_set_rx_refill_buf_pool_size(struct wlan_cfg_dp_soc_ctxt *cfg, int size)
5568*5113495bSYour Name {
5569*5113495bSYour Name 	cfg->rx_refill_buff_pool_size = size;
5570*5113495bSYour Name }
5571*5113495bSYour Name #else
wlan_cfg_is_rx_buffer_pool_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5572*5113495bSYour Name bool wlan_cfg_is_rx_buffer_pool_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5573*5113495bSYour Name {
5574*5113495bSYour Name 	return false;
5575*5113495bSYour Name }
5576*5113495bSYour Name 
wlan_cfg_is_rx_refill_buffer_pool_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5577*5113495bSYour Name bool wlan_cfg_is_rx_refill_buffer_pool_enabled(
5578*5113495bSYour Name 					struct wlan_cfg_dp_soc_ctxt *cfg)
5579*5113495bSYour Name {
5580*5113495bSYour Name 	return false;
5581*5113495bSYour Name }
5582*5113495bSYour Name #endif /* WLAN_FEATURE_RX_PREALLOC_BUFFER_POOL */
5583*5113495bSYour Name 
5584*5113495bSYour Name #ifdef WLAN_DP_FEATURE_SW_LATENCY_MGR
wlan_cfg_is_swlm_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5585*5113495bSYour Name bool wlan_cfg_is_swlm_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5586*5113495bSYour Name {
5587*5113495bSYour Name 	return (bool)(cfg->is_swlm_enabled);
5588*5113495bSYour Name }
5589*5113495bSYour Name #else
wlan_cfg_is_swlm_enabled(struct wlan_cfg_dp_soc_ctxt * cfg)5590*5113495bSYour Name bool wlan_cfg_is_swlm_enabled(struct wlan_cfg_dp_soc_ctxt *cfg)
5591*5113495bSYour Name {
5592*5113495bSYour Name 	return false;
5593*5113495bSYour Name }
5594*5113495bSYour Name #endif
wlan_cfg_radio0_default_reo_get(struct wlan_cfg_dp_soc_ctxt * cfg)5595*5113495bSYour Name uint8_t wlan_cfg_radio0_default_reo_get(struct wlan_cfg_dp_soc_ctxt *cfg)
5596*5113495bSYour Name {
5597*5113495bSYour Name 	return cfg->radio0_rx_default_reo;
5598*5113495bSYour Name }
5599*5113495bSYour Name 
wlan_cfg_radio1_default_reo_get(struct wlan_cfg_dp_soc_ctxt * cfg)5600*5113495bSYour Name uint8_t wlan_cfg_radio1_default_reo_get(struct wlan_cfg_dp_soc_ctxt *cfg)
5601*5113495bSYour Name {
5602*5113495bSYour Name 	return cfg->radio1_rx_default_reo;
5603*5113495bSYour Name }
5604*5113495bSYour Name 
wlan_cfg_radio2_default_reo_get(struct wlan_cfg_dp_soc_ctxt * cfg)5605*5113495bSYour Name uint8_t wlan_cfg_radio2_default_reo_get(struct wlan_cfg_dp_soc_ctxt *cfg)
5606*5113495bSYour Name {
5607*5113495bSYour Name 	return cfg->radio2_rx_default_reo;
5608*5113495bSYour Name }
5609*5113495bSYour Name 
wlan_cfg_set_rxdma1_enable(struct wlan_cfg_dp_soc_ctxt * cfg)5610*5113495bSYour Name void wlan_cfg_set_rxdma1_enable(struct wlan_cfg_dp_soc_ctxt *cfg)
5611*5113495bSYour Name {
5612*5113495bSYour Name 	cfg->rxdma1_enable = true;
5613*5113495bSYour Name }
5614*5113495bSYour Name 
5615*5113495bSYour Name void
wlan_cfg_set_delay_mon_replenish(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5616*5113495bSYour Name wlan_cfg_set_delay_mon_replenish(struct wlan_cfg_dp_soc_ctxt *cfg,
5617*5113495bSYour Name 				 bool val)
5618*5113495bSYour Name {
5619*5113495bSYour Name 	cfg->delay_mon_replenish = val;
5620*5113495bSYour Name }
5621*5113495bSYour Name 
5622*5113495bSYour Name bool
wlan_cfg_is_delay_mon_replenish(struct wlan_cfg_dp_soc_ctxt * cfg)5623*5113495bSYour Name wlan_cfg_is_delay_mon_replenish(struct wlan_cfg_dp_soc_ctxt *cfg)
5624*5113495bSYour Name {
5625*5113495bSYour Name 	return cfg->delay_mon_replenish;
5626*5113495bSYour Name }
5627*5113495bSYour Name 
5628*5113495bSYour Name qdf_export_symbol(wlan_cfg_is_delay_mon_replenish);
5629*5113495bSYour Name 
5630*5113495bSYour Name #ifdef WLAN_SOFTUMAC_SUPPORT
wlan_cfg_dp_soc_ctx_dump(struct wlan_cfg_dp_soc_ctxt * cfg)5631*5113495bSYour Name void wlan_cfg_dp_soc_ctx_dump(struct wlan_cfg_dp_soc_ctxt *cfg)
5632*5113495bSYour Name {
5633*5113495bSYour Name 	dp_info("DP CFG SoC ctx: delay_mon_replenish = %d",
5634*5113495bSYour Name 		cfg->delay_mon_replenish);
5635*5113495bSYour Name }
5636*5113495bSYour Name #else
wlan_cfg_dp_soc_ctx_dump(struct wlan_cfg_dp_soc_ctxt * cfg)5637*5113495bSYour Name void wlan_cfg_dp_soc_ctx_dump(struct wlan_cfg_dp_soc_ctxt *cfg)
5638*5113495bSYour Name {
5639*5113495bSYour Name 	dp_info("DP CFG SoC ctx: delay_mon_replenish = %d",
5640*5113495bSYour Name 		cfg->delay_mon_replenish);
5641*5113495bSYour Name 	dp_info("reo_dst_ring_size = %d, delayed_replenish_entries = %d",
5642*5113495bSYour Name 		cfg->reo_dst_ring_size, cfg->delayed_replenish_entries);
5643*5113495bSYour Name }
5644*5113495bSYour Name #endif
5645*5113495bSYour Name 
5646*5113495bSYour Name #ifdef IPA_OFFLOAD
wlan_cfg_ipa_tx_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5647*5113495bSYour Name uint32_t wlan_cfg_ipa_tx_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5648*5113495bSYour Name {
5649*5113495bSYour Name 	return cfg->ipa_tx_ring_size;
5650*5113495bSYour Name }
5651*5113495bSYour Name 
wlan_cfg_ipa_tx_comp_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5652*5113495bSYour Name uint32_t wlan_cfg_ipa_tx_comp_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5653*5113495bSYour Name {
5654*5113495bSYour Name 	return cfg->ipa_tx_comp_ring_size;
5655*5113495bSYour Name }
5656*5113495bSYour Name 
5657*5113495bSYour Name #ifdef IPA_WDI3_TX_TWO_PIPES
wlan_cfg_ipa_tx_alt_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5658*5113495bSYour Name int wlan_cfg_ipa_tx_alt_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5659*5113495bSYour Name {
5660*5113495bSYour Name 	return cfg->ipa_tx_alt_ring_size;
5661*5113495bSYour Name }
5662*5113495bSYour Name 
wlan_cfg_ipa_tx_alt_comp_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5663*5113495bSYour Name int wlan_cfg_ipa_tx_alt_comp_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5664*5113495bSYour Name {
5665*5113495bSYour Name 	return cfg->ipa_tx_alt_comp_ring_size;
5666*5113495bSYour Name }
5667*5113495bSYour Name 
5668*5113495bSYour Name #else
wlan_cfg_ipa_tx_alt_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5669*5113495bSYour Name int wlan_cfg_ipa_tx_alt_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5670*5113495bSYour Name {
5671*5113495bSYour Name 	return cfg->ipa_tx_ring_size;
5672*5113495bSYour Name }
5673*5113495bSYour Name 
wlan_cfg_ipa_tx_alt_comp_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5674*5113495bSYour Name int wlan_cfg_ipa_tx_alt_comp_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5675*5113495bSYour Name {
5676*5113495bSYour Name 	return cfg->ipa_tx_comp_ring_size;
5677*5113495bSYour Name }
5678*5113495bSYour Name #endif
5679*5113495bSYour Name #endif
5680*5113495bSYour Name 
5681*5113495bSYour Name #ifdef WLAN_SUPPORT_PPEDS
5682*5113495bSYour Name bool
wlan_cfg_get_dp_soc_ppeds_enable(struct wlan_cfg_dp_soc_ctxt * cfg)5683*5113495bSYour Name wlan_cfg_get_dp_soc_ppeds_enable(struct wlan_cfg_dp_soc_ctxt *cfg)
5684*5113495bSYour Name {
5685*5113495bSYour Name 	return cfg->ppeds_enable;
5686*5113495bSYour Name }
5687*5113495bSYour Name 
5688*5113495bSYour Name int
wlan_cfg_get_dp_soc_reo2ppe_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5689*5113495bSYour Name wlan_cfg_get_dp_soc_reo2ppe_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5690*5113495bSYour Name {
5691*5113495bSYour Name 	return cfg->reo2ppe_ring;
5692*5113495bSYour Name }
5693*5113495bSYour Name 
5694*5113495bSYour Name int
wlan_cfg_get_dp_soc_ppe2tcl_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5695*5113495bSYour Name wlan_cfg_get_dp_soc_ppe2tcl_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5696*5113495bSYour Name {
5697*5113495bSYour Name 	return cfg->ppe2tcl_ring;
5698*5113495bSYour Name }
5699*5113495bSYour Name 
5700*5113495bSYour Name int
wlan_cfg_get_dp_soc_ppeds_num_tx_desc(struct wlan_cfg_dp_soc_ctxt * cfg)5701*5113495bSYour Name wlan_cfg_get_dp_soc_ppeds_num_tx_desc(struct wlan_cfg_dp_soc_ctxt *cfg)
5702*5113495bSYour Name {
5703*5113495bSYour Name 	return cfg->ppeds_num_tx_desc;
5704*5113495bSYour Name }
5705*5113495bSYour Name 
5706*5113495bSYour Name int
wlan_cfg_get_dp_soc_ppeds_tx_comp_napi_budget(struct wlan_cfg_dp_soc_ctxt * cfg)5707*5113495bSYour Name wlan_cfg_get_dp_soc_ppeds_tx_comp_napi_budget(struct wlan_cfg_dp_soc_ctxt *cfg)
5708*5113495bSYour Name {
5709*5113495bSYour Name 	return cfg->ppeds_tx_comp_napi_budget;
5710*5113495bSYour Name }
5711*5113495bSYour Name 
5712*5113495bSYour Name int
wlan_cfg_get_dp_soc_ppeds_tx_desc_hotlist_len(struct wlan_cfg_dp_soc_ctxt * cfg)5713*5113495bSYour Name wlan_cfg_get_dp_soc_ppeds_tx_desc_hotlist_len(struct wlan_cfg_dp_soc_ctxt *cfg)
5714*5113495bSYour Name {
5715*5113495bSYour Name 	return cfg->ppeds_tx_desc_hotlist_len;
5716*5113495bSYour Name }
5717*5113495bSYour Name #endif
5718*5113495bSYour Name 
5719*5113495bSYour Name void
wlan_cfg_get_prealloc_cfg(struct cdp_ctrl_objmgr_psoc * ctrl_psoc,struct wlan_dp_prealloc_cfg * cfg)5720*5113495bSYour Name wlan_cfg_get_prealloc_cfg(struct cdp_ctrl_objmgr_psoc *ctrl_psoc,
5721*5113495bSYour Name 			  struct wlan_dp_prealloc_cfg *cfg)
5722*5113495bSYour Name {
5723*5113495bSYour Name 	if (!ctrl_psoc || !cfg)
5724*5113495bSYour Name 		return;
5725*5113495bSYour Name 
5726*5113495bSYour Name 	cfg->num_reo_dst_ring_entries = cfg_get(ctrl_psoc,
5727*5113495bSYour Name 						CFG_DP_RX_DESTINATION_RING);
5728*5113495bSYour Name 	cfg->num_tx_ring_entries = cfg_get(ctrl_psoc, CFG_DP_TX_RING_SIZE);
5729*5113495bSYour Name 	cfg->num_tx_comp_ring_entries = cfg_get(ctrl_psoc,
5730*5113495bSYour Name 						CFG_DP_TX_COMPL_RING_SIZE);
5731*5113495bSYour Name 	cfg->num_wbm_rel_ring_entries = cfg_get(ctrl_psoc,
5732*5113495bSYour Name 						CFG_DP_WBM_RELEASE_RING);
5733*5113495bSYour Name 	cfg->num_rxdma_err_dst_ring_entries = cfg_get(ctrl_psoc,
5734*5113495bSYour Name 						     CFG_DP_RXDMA_ERR_DST_RING);
5735*5113495bSYour Name 	cfg->num_reo_exception_ring_entries = cfg_get(ctrl_psoc,
5736*5113495bSYour Name 						     CFG_DP_REO_EXCEPTION_RING);
5737*5113495bSYour Name 	cfg->num_tx_desc = cfg_get(ctrl_psoc, CFG_DP_TX_DESC);
5738*5113495bSYour Name 	cfg->num_tx_ext_desc = cfg_get(ctrl_psoc, CFG_DP_TX_EXT_DESC);
5739*5113495bSYour Name 	cfg->num_rx_sw_desc = cfg_get(ctrl_psoc, CFG_DP_RX_SW_DESC_NUM);
5740*5113495bSYour Name 	cfg->num_rxdma_buf_ring_entries = cfg_get(ctrl_psoc,
5741*5113495bSYour Name 						  CFG_DP_RXDMA_BUF_RING);
5742*5113495bSYour Name 	cfg->num_rxdma_refill_ring_entries = cfg_get(ctrl_psoc,
5743*5113495bSYour Name 						     CFG_DP_RXDMA_REFILL_RING);
5744*5113495bSYour Name 	cfg->num_reo_status_ring_entries = cfg_get(ctrl_psoc,
5745*5113495bSYour Name 						   CFG_DP_REO_STATUS_RING);
5746*5113495bSYour Name 	cfg->num_mon_status_ring_entries = cfg_get(ctrl_psoc,
5747*5113495bSYour Name 						   CFG_DP_RXDMA_MONITOR_STATUS_RING);
5748*5113495bSYour Name 	cfg->num_tx_mon_buf_ring_entries = cfg_get(ctrl_psoc,
5749*5113495bSYour Name 						   CFG_DP_TX_MONITOR_BUF_RING);
5750*5113495bSYour Name 	cfg->num_tx_mon_dst_ring_entries = cfg_get(ctrl_psoc,
5751*5113495bSYour Name 						   CFG_DP_TX_MONITOR_DST_RING);
5752*5113495bSYour Name }
5753*5113495bSYour Name 
5754*5113495bSYour Name #ifdef WLAN_FEATURE_PKT_CAPTURE_V2
wlan_cfg_get_pkt_capture_mode(struct wlan_cfg_dp_soc_ctxt * cfg)5755*5113495bSYour Name uint32_t wlan_cfg_get_pkt_capture_mode(struct wlan_cfg_dp_soc_ctxt *cfg)
5756*5113495bSYour Name {
5757*5113495bSYour Name 	return cfg->pkt_capture_mode;
5758*5113495bSYour Name }
5759*5113495bSYour Name #endif
5760*5113495bSYour Name 
5761*5113495bSYour Name uint32_t
wlan_cfg_get_dp_soc_rx_mon_buf_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5762*5113495bSYour Name wlan_cfg_get_dp_soc_rx_mon_buf_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5763*5113495bSYour Name {
5764*5113495bSYour Name 	return cfg->rx_mon_buf_ring_size;
5765*5113495bSYour Name }
5766*5113495bSYour Name 
5767*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_dp_soc_rx_mon_buf_ring_size);
5768*5113495bSYour Name 
5769*5113495bSYour Name uint32_t
wlan_cfg_get_dp_soc_tx_mon_buf_ring_size(struct wlan_cfg_dp_soc_ctxt * cfg)5770*5113495bSYour Name wlan_cfg_get_dp_soc_tx_mon_buf_ring_size(struct wlan_cfg_dp_soc_ctxt *cfg)
5771*5113495bSYour Name {
5772*5113495bSYour Name 	return cfg->tx_mon_buf_ring_size;
5773*5113495bSYour Name }
5774*5113495bSYour Name 
5775*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_dp_soc_tx_mon_buf_ring_size);
5776*5113495bSYour Name 
5777*5113495bSYour Name uint8_t
wlan_cfg_get_rx_rel_ring_id(struct wlan_cfg_dp_soc_ctxt * cfg)5778*5113495bSYour Name wlan_cfg_get_rx_rel_ring_id(struct wlan_cfg_dp_soc_ctxt *cfg)
5779*5113495bSYour Name {
5780*5113495bSYour Name 	return cfg->rx_rel_wbm2sw_ring_id;
5781*5113495bSYour Name }
5782*5113495bSYour Name 
5783*5113495bSYour Name void
wlan_cfg_set_rx_rel_ring_id(struct wlan_cfg_dp_soc_ctxt * cfg,uint8_t wbm2sw_ring_id)5784*5113495bSYour Name wlan_cfg_set_rx_rel_ring_id(struct wlan_cfg_dp_soc_ctxt *cfg,
5785*5113495bSYour Name 			    uint8_t wbm2sw_ring_id)
5786*5113495bSYour Name {
5787*5113495bSYour Name 	cfg->rx_rel_wbm2sw_ring_id = wbm2sw_ring_id;
5788*5113495bSYour Name }
5789*5113495bSYour Name 
5790*5113495bSYour Name #if defined(WLAN_FEATURE_11BE_MLO) && defined(WLAN_MLO_MULTI_CHIP)
5791*5113495bSYour Name uint8_t
wlan_cfg_mlo_rx_ring_map_get(struct wlan_cfg_dp_soc_ctxt * cfg)5792*5113495bSYour Name wlan_cfg_mlo_rx_ring_map_get(struct wlan_cfg_dp_soc_ctxt *cfg)
5793*5113495bSYour Name {
5794*5113495bSYour Name 	return cfg->mlo_chip_rx_ring_map;
5795*5113495bSYour Name }
5796*5113495bSYour Name #endif
5797*5113495bSYour Name 
5798*5113495bSYour Name #ifdef QCA_VDEV_STATS_HW_OFFLOAD_SUPPORT
5799*5113495bSYour Name bool
wlan_cfg_get_vdev_stats_hw_offload_config(struct wlan_cfg_dp_soc_ctxt * cfg)5800*5113495bSYour Name wlan_cfg_get_vdev_stats_hw_offload_config(struct wlan_cfg_dp_soc_ctxt *cfg)
5801*5113495bSYour Name {
5802*5113495bSYour Name 	return cfg->vdev_stats_hw_offload_config;
5803*5113495bSYour Name }
5804*5113495bSYour Name 
wlan_cfg_get_vdev_stats_hw_offload_timer(struct wlan_cfg_dp_soc_ctxt * cfg)5805*5113495bSYour Name int wlan_cfg_get_vdev_stats_hw_offload_timer(struct wlan_cfg_dp_soc_ctxt *cfg)
5806*5113495bSYour Name {
5807*5113495bSYour Name 	return cfg->vdev_stats_hw_offload_timer;
5808*5113495bSYour Name }
5809*5113495bSYour Name 
5810*5113495bSYour Name void
wlan_cfg_set_vdev_stats_hw_offload_config(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5811*5113495bSYour Name wlan_cfg_set_vdev_stats_hw_offload_config(struct wlan_cfg_dp_soc_ctxt *cfg,
5812*5113495bSYour Name 					  bool val)
5813*5113495bSYour Name {
5814*5113495bSYour Name 	cfg->vdev_stats_hw_offload_config = val;
5815*5113495bSYour Name }
5816*5113495bSYour Name #else
5817*5113495bSYour Name bool
wlan_cfg_get_vdev_stats_hw_offload_config(struct wlan_cfg_dp_soc_ctxt * cfg)5818*5113495bSYour Name wlan_cfg_get_vdev_stats_hw_offload_config(struct wlan_cfg_dp_soc_ctxt *cfg)
5819*5113495bSYour Name {
5820*5113495bSYour Name 	return false;
5821*5113495bSYour Name }
5822*5113495bSYour Name 
wlan_cfg_get_vdev_stats_hw_offload_timer(struct wlan_cfg_dp_soc_ctxt * cfg)5823*5113495bSYour Name int wlan_cfg_get_vdev_stats_hw_offload_timer(struct wlan_cfg_dp_soc_ctxt *cfg)
5824*5113495bSYour Name {
5825*5113495bSYour Name 	return 0;
5826*5113495bSYour Name }
5827*5113495bSYour Name 
5828*5113495bSYour Name void
wlan_cfg_set_vdev_stats_hw_offload_config(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5829*5113495bSYour Name wlan_cfg_set_vdev_stats_hw_offload_config(struct wlan_cfg_dp_soc_ctxt *cfg,
5830*5113495bSYour Name 					  bool val)
5831*5113495bSYour Name {}
5832*5113495bSYour Name #endif
5833*5113495bSYour Name 
5834*5113495bSYour Name #ifdef CONFIG_SAWF
wlan_cfg_get_sawf_config(struct wlan_cfg_dp_soc_ctxt * cfg)5835*5113495bSYour Name bool wlan_cfg_get_sawf_config(struct wlan_cfg_dp_soc_ctxt *cfg)
5836*5113495bSYour Name {
5837*5113495bSYour Name 	return cfg->sawf_enabled;
5838*5113495bSYour Name }
5839*5113495bSYour Name 
wlan_cfg_set_sawf_config(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5840*5113495bSYour Name void wlan_cfg_set_sawf_config(struct wlan_cfg_dp_soc_ctxt *cfg, bool val)
5841*5113495bSYour Name {
5842*5113495bSYour Name 	cfg->sawf_enabled = val;
5843*5113495bSYour Name }
5844*5113495bSYour Name #else
wlan_cfg_get_sawf_config(struct wlan_cfg_dp_soc_ctxt * cfg)5845*5113495bSYour Name bool wlan_cfg_get_sawf_config(struct wlan_cfg_dp_soc_ctxt *cfg)
5846*5113495bSYour Name {
5847*5113495bSYour Name 	return false;
5848*5113495bSYour Name }
5849*5113495bSYour Name 
wlan_cfg_set_sawf_config(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5850*5113495bSYour Name void wlan_cfg_set_sawf_config(struct wlan_cfg_dp_soc_ctxt *cfg, bool val)
5851*5113495bSYour Name {
5852*5113495bSYour Name }
5853*5113495bSYour Name #endif
5854*5113495bSYour Name 
5855*5113495bSYour Name #ifdef CONFIG_BERYLLIUM
wlan_cfg_get_host2txmon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)5856*5113495bSYour Name int wlan_cfg_get_host2txmon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
5857*5113495bSYour Name 				      int context)
5858*5113495bSYour Name {
5859*5113495bSYour Name 	return cfg->int_host2txmon_ring_mask[context];
5860*5113495bSYour Name }
5861*5113495bSYour Name 
5862*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_host2txmon_ring_mask);
5863*5113495bSYour Name 
wlan_cfg_set_host2txmon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)5864*5113495bSYour Name void wlan_cfg_set_host2txmon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
5865*5113495bSYour Name 				       int context, int mask)
5866*5113495bSYour Name {
5867*5113495bSYour Name 	cfg->int_host2txmon_ring_mask[context] = mask;
5868*5113495bSYour Name }
5869*5113495bSYour Name #else
wlan_cfg_get_host2txmon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context)5870*5113495bSYour Name int wlan_cfg_get_host2txmon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
5871*5113495bSYour Name 				      int context)
5872*5113495bSYour Name {
5873*5113495bSYour Name 	return 0;
5874*5113495bSYour Name }
5875*5113495bSYour Name 
wlan_cfg_set_host2txmon_ring_mask(struct wlan_cfg_dp_soc_ctxt * cfg,int context,int mask)5876*5113495bSYour Name void wlan_cfg_set_host2txmon_ring_mask(struct wlan_cfg_dp_soc_ctxt *cfg,
5877*5113495bSYour Name 				       int context, int mask)
5878*5113495bSYour Name {
5879*5113495bSYour Name }
5880*5113495bSYour Name #endif
5881*5113495bSYour Name 
5882*5113495bSYour Name qdf_export_symbol(wlan_cfg_set_host2txmon_ring_mask);
5883*5113495bSYour Name 
wlan_cfg_set_txmon_hw_support(struct wlan_cfg_dp_soc_ctxt * cfg,bool txmon_hw_support)5884*5113495bSYour Name void wlan_cfg_set_txmon_hw_support(struct wlan_cfg_dp_soc_ctxt *cfg,
5885*5113495bSYour Name 				   bool txmon_hw_support)
5886*5113495bSYour Name {
5887*5113495bSYour Name 	cfg->txmon_hw_support = txmon_hw_support;
5888*5113495bSYour Name }
5889*5113495bSYour Name 
wlan_cfg_get_txmon_hw_support(struct wlan_cfg_dp_soc_ctxt * cfg)5890*5113495bSYour Name bool wlan_cfg_get_txmon_hw_support(struct wlan_cfg_dp_soc_ctxt *cfg)
5891*5113495bSYour Name {
5892*5113495bSYour Name 	return cfg->txmon_hw_support;
5893*5113495bSYour Name }
5894*5113495bSYour Name 
5895*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_txmon_hw_support);
5896*5113495bSYour Name 
wlan_cfg_get_napi_scale_factor(struct wlan_cfg_dp_soc_ctxt * cfg)5897*5113495bSYour Name uint8_t wlan_cfg_get_napi_scale_factor(struct wlan_cfg_dp_soc_ctxt *cfg)
5898*5113495bSYour Name {
5899*5113495bSYour Name 	return cfg->napi_scale_factor;
5900*5113495bSYour Name }
5901*5113495bSYour Name 
wlan_cfg_get_txmon_sw_peer_filtering(struct wlan_cfg_dp_soc_ctxt * cfg)5902*5113495bSYour Name bool wlan_cfg_get_txmon_sw_peer_filtering(struct wlan_cfg_dp_soc_ctxt *cfg)
5903*5113495bSYour Name {
5904*5113495bSYour Name 	return cfg->txmon_sw_peer_filtering;
5905*5113495bSYour Name }
5906*5113495bSYour Name 
5907*5113495bSYour Name qdf_export_symbol(wlan_cfg_get_txmon_sw_peer_filtering);
5908*5113495bSYour Name 
5909*5113495bSYour Name uint16_t
wlan_cfg_get_pointer_timer_threshold_rx(struct wlan_cfg_dp_soc_ctxt * cfg)5910*5113495bSYour Name wlan_cfg_get_pointer_timer_threshold_rx(struct wlan_cfg_dp_soc_ctxt *cfg)
5911*5113495bSYour Name {
5912*5113495bSYour Name 	return cfg->pointer_timer_threshold_rx;
5913*5113495bSYour Name }
5914*5113495bSYour Name 
5915*5113495bSYour Name uint8_t
wlan_cfg_get_pointer_num_threshold_rx(struct wlan_cfg_dp_soc_ctxt * cfg)5916*5113495bSYour Name wlan_cfg_get_pointer_num_threshold_rx(struct wlan_cfg_dp_soc_ctxt *cfg)
5917*5113495bSYour Name {
5918*5113495bSYour Name 	return cfg->pointer_num_threshold_rx;
5919*5113495bSYour Name }
5920*5113495bSYour Name 
wlan_cfg_get_special_frame_cfg(struct wlan_cfg_dp_soc_ctxt * cfg)5921*5113495bSYour Name uint32_t wlan_cfg_get_special_frame_cfg(struct wlan_cfg_dp_soc_ctxt *cfg)
5922*5113495bSYour Name {
5923*5113495bSYour Name 	return  cfg->special_frame_msk;
5924*5113495bSYour Name }
5925*5113495bSYour Name 
wlan_cfg_set_ast_indication_disable(struct wlan_cfg_dp_soc_ctxt * cfg,bool val)5926*5113495bSYour Name void wlan_cfg_set_ast_indication_disable(struct wlan_cfg_dp_soc_ctxt *cfg,
5927*5113495bSYour Name 					 bool val)
5928*5113495bSYour Name {
5929*5113495bSYour Name 	cfg->fw_ast_indication_disable = val;
5930*5113495bSYour Name }
5931*5113495bSYour Name 
wlan_cfg_get_ast_indication_disable(struct wlan_cfg_dp_soc_ctxt * cfg)5932*5113495bSYour Name bool wlan_cfg_get_ast_indication_disable(struct wlan_cfg_dp_soc_ctxt *cfg)
5933*5113495bSYour Name {
5934*5113495bSYour Name 	return cfg->fw_ast_indication_disable;
5935*5113495bSYour Name }
5936*5113495bSYour Name 
5937*5113495bSYour Name #ifdef WLAN_SUPPORT_DPDK
wlan_cfg_get_dp_soc_dpdk_cfg(struct cdp_ctrl_objmgr_psoc * psoc)5938*5113495bSYour Name int wlan_cfg_get_dp_soc_dpdk_cfg(struct cdp_ctrl_objmgr_psoc *psoc)
5939*5113495bSYour Name {
5940*5113495bSYour Name 	return cfg_get(psoc, CFG_DPDK_WIFI);
5941*5113495bSYour Name }
5942*5113495bSYour Name #else
wlan_cfg_get_dp_soc_dpdk_cfg(struct cdp_ctrl_objmgr_psoc * psoc)5943*5113495bSYour Name int wlan_cfg_get_dp_soc_dpdk_cfg(struct cdp_ctrl_objmgr_psoc *psoc)
5944*5113495bSYour Name {
5945*5113495bSYour Name 	return 0;
5946*5113495bSYour Name }
5947*5113495bSYour Name #endif
5948