Enable AP support for allmulticast for MDNS It can be enabled by bringing

up the interface with ip command with argument allmulticast on  
Signed-off-by: Iain Hunter <i-hunt...@ti.com>
---
PATCH v2: resumbitting to handle error return value
 drivers/net/wireless/ti/wlcore/main.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/drivers/net/wireless/ti/wlcore/main.c 
b/drivers/net/wireless/ti/wlcore/main.c
index 3241e9eba73..4fabbb486e7 100644
--- a/drivers/net/wireless/ti/wlcore/main.c
+++ b/drivers/net/wireless/ti/wlcore/main.c
@@ -3281,6 +3281,21 @@ static void wl1271_op_configure_filter(struct 
ieee80211_hw *hw,
                        if (ret < 0)
                                goto out_sleep;
                }
+
+        /*
+         * If interface in AP mode and created with allmulticast then disable
+         * the firmware filters so that all multicast packets are passed
+         * This is mandatory for MDNS based discovery protocols 
+         */
+               if (wlvif->bss_type == BSS_TYPE_AP_BSS) {
+                       if (*total & FIF_ALLMULTI) {
+                               ret = wl1271_acx_group_address_tbl(wl, wlvif,
+                                                                  false,
+                                                                  NULL, 0);
+                           if (ret < 0)
+                                  goto out_sleep;
+                }
+           }
        }
 
        /*
-- 
2.11.0

Reply via email to