diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index 063b742017..d2522d7aef 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -240,12 +240,23 @@ enum dp_cpu_ring_map_types { /** * @brief Cpu to tx ring map */ -static uint8_t dp_cpu_ring_map[DP_CPU_RING_MAP_MAX][WLAN_CFG_INT_NUM_CONTEXTS] = { - {0x0, 0x1, 0x2, 0x0}, - {0x1, 0x2, 0x1, 0x2}, - {0x0, 0x2, 0x0, 0x2}, - {0x2, 0x2, 0x2, 0x2} +#ifdef CONFIG_WIN +static uint8_t +dp_cpu_ring_map[DP_CPU_RING_MAP_MAX][WLAN_CFG_INT_NUM_CONTEXTS] = { + {0x0, 0x1, 0x2, 0x0, 0x0, 0x1, 0x2, 0x0, 0x0, 0x1, 0x2}, + {0x1, 0x2, 0x1, 0x2, 0x1, 0x2, 0x1, 0x2, 0x1, 0x2, 0x1}, + {0x0, 0x2, 0x0, 0x2, 0x0, 0x2, 0x0, 0x2, 0x0, 0x2, 0x0}, + {0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2} }; +#else +static uint8_t +dp_cpu_ring_map[DP_CPU_RING_MAP_MAX][WLAN_CFG_INT_NUM_CONTEXTS] = { + {0x0, 0x1, 0x2, 0x0, 0x0, 0x1, 0x2}, + {0x1, 0x2, 0x1, 0x2, 0x1, 0x2, 0x1}, + {0x0, 0x2, 0x0, 0x2, 0x0, 0x2, 0x0}, + {0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2} +}; +#endif /** * @brief Select the type of statistics diff --git a/dp/wifi3.0/dp_types.h b/dp/wifi3.0/dp_types.h index c00c1705f9..bc83eb2937 100644 --- a/dp/wifi3.0/dp_types.h +++ b/dp/wifi3.0/dp_types.h @@ -61,7 +61,6 @@ #define REPT_MU_OFDMA_MIMO 3 #define DP_VO_TID 6 -#define DP_MAX_INTERRUPT_CONTEXTS 8 #define DP_MAX_TID_MAPS 16 /* MAX TID MAPS AVAILABLE PER PDEV*/ #define DSCP_TID_MAP_MAX (64) #define DP_IP_DSCP_SHIFT 2 @@ -85,12 +84,10 @@ #define MAX_TCL_DATA_RINGS 4 #define MAX_IDLE_SCATTER_BUFS 16 #define DP_MAX_IRQ_PER_CONTEXT 12 -#define DP_MAX_INTERRUPT_CONTEXTS 8 #define DEFAULT_HW_PEER_ID 0xffff #define MAX_TX_HW_QUEUES MAX_TCL_DATA_RINGS -#define DP_MAX_INTERRUPT_CONTEXTS 8 /* Maximum retries for Delba per tid per peer */ #define DP_MAX_DELBA_RETRY 3 @@ -783,7 +780,7 @@ struct dp_soc { void *hal_soc; /* DP Interrupts */ - struct dp_intr intr_ctx[DP_MAX_INTERRUPT_CONTEXTS]; + struct dp_intr intr_ctx[WLAN_CFG_INT_NUM_CONTEXTS]; /* REO destination rings */ struct dp_srng reo_dest_ring[MAX_REO_DEST_RINGS]; diff --git a/hif/inc/hif.h b/hif/inc/hif.h index 32fd4f4101..701ddcf6fa 100644 --- a/hif/inc/hif.h +++ b/hif/inc/hif.h @@ -112,7 +112,12 @@ enum hif_ic_irq { struct CE_state; #define CE_COUNT_MAX 12 #define HIF_MAX_GRP_IRQ 16 + +#ifdef CONFIG_WIN +#define HIF_MAX_GROUP 12 +#else #define HIF_MAX_GROUP 8 +#endif #ifdef CONFIG_SLUB_DEBUG_ON #ifndef CONFIG_WIN diff --git a/wlan_cfg/wlan_cfg.c b/wlan_cfg/wlan_cfg.c index 03a928d426..978aeb7c3f 100644 --- a/wlan_cfg/wlan_cfg.c +++ b/wlan_cfg/wlan_cfg.c @@ -145,6 +145,13 @@ static const int tx_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS] = { WLAN_CFG_TX_RING_MASK_3}; static const int rx_ring_mask[WLAN_CFG_INT_NUM_CONTEXTS] = { + 0, + 0, + 0, + 0, + 0, + 0, + 0, WLAN_CFG_RX_RING_MASK_0, WLAN_CFG_RX_RING_MASK_1, WLAN_CFG_RX_RING_MASK_2, diff --git a/wlan_cfg/wlan_cfg.h b/wlan_cfg/wlan_cfg.h index f1e1afb8e9..d7392b290f 100644 --- a/wlan_cfg/wlan_cfg.h +++ b/wlan_cfg/wlan_cfg.h @@ -39,7 +39,7 @@ #define NUM_RXDMA_RINGS_PER_PDEV 2 #else #define MAX_PDEV_CNT 3 -#define WLAN_CFG_INT_NUM_CONTEXTS 7 +#define WLAN_CFG_INT_NUM_CONTEXTS 11 #define WLAN_CFG_RXDMA1_ENABLE 1 /* * This mask defines how many transmit frames account for 1 NAPI work unit @@ -75,8 +75,6 @@ /* Miscellaneous configuration */ #define MAX_IDLE_SCATTER_BUFS 16 #define DP_MAX_IRQ_PER_CONTEXT 12 -#define DP_MAX_INTERRUPT_CONTEXTS 8 -#define DP_MAX_INTERRUPT_CONTEXTS 8 #define MAX_HTT_METADATA_LEN 32 #define MAX_NUM_PEER_ID_PER_PEER 8 #define DP_MAX_TIDS 17