summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/hdd/inc/wlan_hdd_main.h3
-rw-r--r--core/hdd/src/wlan_hdd_main.c4
-rw-r--r--target/inc/wlan_tgt_def_config.h2
3 files changed, 6 insertions, 3 deletions
diff --git a/core/hdd/inc/wlan_hdd_main.h b/core/hdd/inc/wlan_hdd_main.h
index 4ac3abbac81f..b8d1524e1c96 100644
--- a/core/hdd/inc/wlan_hdd_main.h
+++ b/core/hdd/inc/wlan_hdd_main.h
@@ -67,6 +67,7 @@
#include "cdp_txrx_flow_ctrl_legacy.h"
#include <cdp_txrx_peer_ops.h>
#include "wlan_hdd_nan_datapath.h"
+#include "wlan_tgt_def_config.h"
/*---------------------------------------------------------------------------
Preprocessor definitions and constants
@@ -803,7 +804,7 @@ typedef struct hdd_scaninfo_s {
} hdd_scaninfo_t;
-#define WLAN_HDD_MAX_MC_ADDR_LIST 10
+#define WLAN_HDD_MAX_MC_ADDR_LIST CFG_TGT_MAX_MULTICAST_FILTER_ENTRIES
#ifdef WLAN_FEATURE_PACKET_FILTERING
typedef struct multicast_addr_list {
diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c
index 8946bbbc377e..6375349c36ab 100644
--- a/core/hdd/src/wlan_hdd_main.c
+++ b/core/hdd/src/wlan_hdd_main.c
@@ -2265,7 +2265,9 @@ static void __hdd_set_multicast_list(struct net_device *dev)
hdd_notice("mc_count : %u", mc_count);
if (mc_count > WLAN_HDD_MAX_MC_ADDR_LIST) {
- hdd_notice("No free filter available; allow all multicast frames");
+ hdd_notice("Exceeded max MC filter addresses (%d). Allowing all MC frames by disabling MC address filtering",
+ WLAN_HDD_MAX_MC_ADDR_LIST);
+ wlan_hdd_set_mc_addr_list(adapter, false);
adapter->mc_addr_list.mc_cnt = 0;
return;
}
diff --git a/target/inc/wlan_tgt_def_config.h b/target/inc/wlan_tgt_def_config.h
index eadc8d599389..40e0e9d843d3 100644
--- a/target/inc/wlan_tgt_def_config.h
+++ b/target/inc/wlan_tgt_def_config.h
@@ -155,7 +155,7 @@
#define CFG_TGT_DEFAULT_MCAST2UCAST_MODE 2
#endif
-#define CFG_TGT_MAX_MULTICAST_FILTER_ENTRIES 16
+#define CFG_TGT_MAX_MULTICAST_FILTER_ENTRIES 32
/*
* Specify how much memory the target should allocate for a debug log of
* tx PPDU meta-information (how large the PPDU was, when it was sent,