Prechádzať zdrojové kódy

qcacmn: Add few missing stats

1. Add stats to indicate REO ring size and Rx desc pool size
2. Add low threshold interrupt stats
3. Update SW2RxDMA ring size max to 16K

Change-Id: If84b88bc08e447774ab445df36b9f2f2219356b8
CRs-Fixed: 3286940
Chaithanya Garrepalli 2 rokov pred
rodič
commit
cd40aa85ab
3 zmenil súbory, kde vykonal 13 pridanie a 8 odobranie
  1. 7 6
      dp/wifi3.0/dp_rx.c
  2. 4 0
      dp/wifi3.0/dp_stats.c
  3. 2 2
      wlan_cfg/cfg_dp.h

+ 7 - 6
dp/wifi3.0/dp_rx.c

@@ -317,7 +317,6 @@ __dp_rx_buffers_no_map_lt_replenish(struct dp_soc *soc, uint32_t mac_id,
 	}
 
 	DP_STATS_INC(dp_pdev, replenish.low_thresh_intrs, 1);
-
 	num_alloc_desc = dp_rx_get_free_desc_list(soc, mac_id,
 						  rx_desc_pool,
 						  num_entries_avail,
@@ -744,8 +743,8 @@ QDF_STATUS __dp_rx_buffers_replenish(struct dp_soc *dp_soc, uint32_t mac_id,
 		return QDF_STATUS_E_FAILURE;
 	}
 
-	dp_rx_debug("%pK: requested %d buffers for replenish",
-		    dp_soc, num_req_buffers);
+	dp_verbose_debug("%pK: requested %d buffers for replenish",
+			 dp_soc, num_req_buffers);
 
 	hal_srng_access_start(dp_soc->hal_soc, rxdma_srng);
 
@@ -753,12 +752,13 @@ QDF_STATUS __dp_rx_buffers_replenish(struct dp_soc *dp_soc, uint32_t mac_id,
 						   rxdma_srng,
 						   sync_hw_ptr);
 
-	dp_rx_debug("%pK: no of available entries in rxdma ring: %d",
-		    dp_soc, num_entries_avail);
+	dp_verbose_debug("%pK: no of available entries in rxdma ring: %d",
+			 dp_soc, num_entries_avail);
 
 	if (!req_only && !(*desc_list) && (num_entries_avail >
 		((dp_rxdma_srng->num_entries * 3) / 4))) {
 		num_req_buffers = num_entries_avail;
+		DP_STATS_INC(dp_pdev, replenish.low_thresh_intrs, 1);
 	} else if (num_entries_avail < num_req_buffers) {
 		num_desc_to_free = num_req_buffers - num_entries_avail;
 		num_req_buffers = num_entries_avail;
@@ -810,7 +810,8 @@ QDF_STATUS __dp_rx_buffers_replenish(struct dp_soc *dp_soc, uint32_t mac_id,
 			return QDF_STATUS_E_NOMEM;
 		}
 
-		dp_rx_debug("%pK: %d rx desc allocated", dp_soc, num_alloc_desc);
+		dp_verbose_debug("%pK: %d rx desc allocated", dp_soc,
+				 num_alloc_desc);
 		num_req_buffers = num_alloc_desc;
 	}
 

+ 4 - 0
dp/wifi3.0/dp_stats.c

@@ -5721,6 +5721,8 @@ void dp_print_soc_cfg_params(struct dp_soc *soc)
 		       soc_cfg_ctx->tcl_cmd_credit_ring);
 	DP_PRINT_STATS("TCL Status ring: %u ",
 		       soc_cfg_ctx->tcl_status_ring);
+	DP_PRINT_STATS("REO Destination ring: %u ",
+		       soc_cfg_ctx->reo_dst_ring_size);
 	DP_PRINT_STATS("REO Reinject ring: %u ",
 		       soc_cfg_ctx->reo_reinject_ring);
 	DP_PRINT_STATS("RX release ring: %u ",
@@ -5751,6 +5753,8 @@ void dp_print_soc_cfg_params(struct dp_soc *soc)
 		       soc_cfg_ctx->rx_flow_search_table_size);
 	DP_PRINT_STATS("RX Flow Search Table Per PDev : %u ",
 		       soc_cfg_ctx->is_rx_flow_search_table_per_pdev);
+	DP_PRINT_STATS("Rx desc pool size: %u ",
+		       soc_cfg_ctx->rx_sw_desc_num);
 }
 
 void

+ 2 - 2
wlan_cfg/cfg_dp.h

@@ -396,7 +396,7 @@
 #define WLAN_CFG_RX_SW_DESC_WEIGHT_SIZE_MAX 3
 #define WLAN_CFG_RX_SW_DESC_NUM_SIZE 4096
 #define WLAN_CFG_RX_SW_DESC_NUM_SIZE_MIN 1024
-#define WLAN_CFG_RX_SW_DESC_NUM_SIZE_MAX 12288
+#define WLAN_CFG_RX_SW_DESC_NUM_SIZE_MAX 16384
 
 /**
  * AP use cases need to allocate more RX Descriptors than the number of
@@ -411,7 +411,7 @@
 #define WLAN_CFG_RX_SW_DESC_WEIGHT_SIZE_MAX 3
 #define WLAN_CFG_RX_SW_DESC_NUM_SIZE 12288
 #define WLAN_CFG_RX_SW_DESC_NUM_SIZE_MIN 4096
-#define WLAN_CFG_RX_SW_DESC_NUM_SIZE_MAX 12288
+#define WLAN_CFG_RX_SW_DESC_NUM_SIZE_MAX 16384
 #endif
 
 #define WLAN_CFG_RX_FLOW_SEARCH_TABLE_SIZE 16384