ソースを参照

qcacmn: Do not allocate buffers for buffer ring in smart monitor mode

Smart monitor mode requires buffers on monitor status ring only.
It does not require any buffers on monitor buffer ring.

As an optimization, initialization of descriptor pool and allocation
of buffers for monitor buffer ring is not required. Also filter
settings for monitor buffer ring are not required in smart monitor
mode.

Change-Id: If328b08184865e5472425b5520dd0a364a478c40
CRs-Fixed: 2965717
Harsh Kumar Bijlani 4 年 前
コミット
d299c767eb
2 ファイル変更1 行追加4 行削除
  1. 0 2
      dp/wifi3.0/dp_main.c
  2. 1 2
      dp/wifi3.0/dp_mon_filter.c

+ 0 - 2
dp/wifi3.0/dp_main.c

@@ -7042,8 +7042,6 @@ static int dp_update_filter_neighbour_peers(struct cdp_soc_t *soc_hdl,
 			QDF_STATUS status = QDF_STATUS_SUCCESS;
 
 			pdev->neighbour_peers_added = true;
-			if (!wlan_cfg_is_delay_mon_replenish(soc->wlan_cfg_ctx))
-				dp_vdev_set_monitor_mode_rings(pdev, true);
 
 			dp_mon_filter_setup_smart_monitor(pdev);
 			status = dp_mon_filter_update(pdev);

+ 1 - 2
dp/wifi3.0/dp_mon_filter.c

@@ -1184,8 +1184,7 @@ QDF_STATUS dp_mon_filter_update(struct dp_pdev *pdev)
 		 * reset when monitor mode gets enabled/disabled.
 		 */
 		if (soc->wlan_cfg_ctx->rxdma1_enable) {
-			if (pdev->monitor_configured || mon_mode_set ||
-			    pdev->neighbour_peers_added) {
+			if (pdev->monitor_configured || mon_mode_set) {
 				status = dp_mon_ht2_rx_ring_cfg(soc, pdev,
 							mon_srng_type,
 							&filter.tlv_filter);