aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/wl12xx/debugfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/wl12xx/debugfs.c')
-rw-r--r--drivers/net/wireless/wl12xx/debugfs.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/net/wireless/wl12xx/debugfs.c b/drivers/net/wireless/wl12xx/debugfs.c
index 4abff8274ac..d6c2d0c1b6c 100644
--- a/drivers/net/wireless/wl12xx/debugfs.c
+++ b/drivers/net/wireless/wl12xx/debugfs.c
@@ -615,19 +615,12 @@ static ssize_t beacon_filtering_write(struct file *file,
615 size_t count, loff_t *ppos) 615 size_t count, loff_t *ppos)
616{ 616{
617 struct wl1271 *wl = file->private_data; 617 struct wl1271 *wl = file->private_data;
618 struct ieee80211_vif *vif;
619 struct wl12xx_vif *wlvif; 618 struct wl12xx_vif *wlvif;
620 char buf[10]; 619 char buf[10];
621 size_t len; 620 size_t len;
622 unsigned long value; 621 unsigned long value;
623 int ret; 622 int ret;
624 623
625 if (!wl->vif)
626 return -EINVAL;
627
628 vif = wl->vif;
629 wlvif = wl12xx_vif_to_data(vif);
630
631 len = min(count, sizeof(buf) - 1); 624 len = min(count, sizeof(buf) - 1);
632 if (copy_from_user(buf, user_buf, len)) 625 if (copy_from_user(buf, user_buf, len))
633 return -EFAULT; 626 return -EFAULT;
@@ -645,7 +638,9 @@ static ssize_t beacon_filtering_write(struct file *file,
645 if (ret < 0) 638 if (ret < 0)
646 goto out; 639 goto out;
647 640
648 ret = wl1271_acx_beacon_filter_opt(wl, wlvif, !!value); 641 wl12xx_for_each_wlvif(wl, wlvif) {
642 ret = wl1271_acx_beacon_filter_opt(wl, wlvif, !!value);
643 }
649 644
650 wl1271_ps_elp_sleep(wl); 645 wl1271_ps_elp_sleep(wl);
651out: 646out: