FROMLIST: wlcore: Disable filtering in AP role
authorJimmy Perchet <jimmy.perchet@parrot.com>
Mon, 9 May 2016 17:32:04 +0000 (10:32 -0700)
committerAmit Pundir <amit.pundir@linaro.org>
Thu, 19 May 2016 07:05:13 +0000 (12:35 +0530)
When you configure (set it up) a STA interface, the driver
install a multicast filter. This is normal behavior, when
one application subscribe to multicast address the filter
is updated. When Access Point interface is configured, there
is no filter installation and the "filter update" path is
disabled in the driver.

The problem happens when you switch an interface from STA
type to AP type. The filter is installed but there are no
means to update it.

Change-Id: Ied22323af831575303abd548574918baa9852dd0
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
drivers/net/wireless/ti/wlcore/init.c

index e92f2639af2c8835d5c2faddd2c5630e99f89067..9fd3c6af0a6175f047eeb5d04e4ed002a4726e7e 100644 (file)
@@ -549,6 +549,11 @@ static int wl12xx_init_ap_role(struct wl1271 *wl, struct wl12xx_vif *wlvif)
 {
        int ret;
 
+       /* Disable filtering */
+       ret = wl1271_acx_group_address_tbl(wl, wlvif, false, NULL, 0);
+       if (ret < 0)
+               return ret;
+
        ret = wl1271_acx_ap_max_tx_retry(wl, wlvif);
        if (ret < 0)
                return ret;