diff --git a/drivers/net/wireless/wl12xx/wl1271_main.c b/drivers/net/wireless/wl12xx/wl1271_main.c index 5ef0bd53af66d9641a91565f970fc883f01e3811..fc0d03fd24cb8c73e59b9c0c65c254c50823c078 100644 --- a/drivers/net/wireless/wl12xx/wl1271_main.c +++ b/drivers/net/wireless/wl12xx/wl1271_main.c @@ -422,7 +422,7 @@ static void wl1271_filter_work(struct work_struct *work) goto out; /* apply configured filters */ - ret = wl1271_cmd_join(wl); + ret = wl1271_acx_rx_config(wl, wl->rx_config, wl->rx_filter); if (ret < 0) goto out_sleep; @@ -869,6 +869,8 @@ static u64 wl1271_op_prepare_multicast(struct ieee80211_hw *hw, int mc_count, wl1271_warning("Unknown mc address length."); } + /* FIXME: We still need to set our filters properly */ + spin_lock_irqsave(&wl->wl_lock, flags); kfree(wl->filter_params); wl->filter_params = fp;