aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/wireless/wl12xx/acx.c25
-rw-r--r--drivers/net/wireless/wl12xx/acx.h9
-rw-r--r--drivers/net/wireless/wl12xx/init.c2
-rw-r--r--drivers/net/wireless/wl12xx/main.c4
4 files changed, 3 insertions, 37 deletions
diff --git a/drivers/net/wireless/wl12xx/acx.c b/drivers/net/wireless/wl12xx/acx.c
index dfb1cbb35acd..968d2197ac81 100644
--- a/drivers/net/wireless/wl12xx/acx.c
+++ b/drivers/net/wireless/wl12xx/acx.c
@@ -1660,31 +1660,6 @@ out:
1660 return ret; 1660 return ret;
1661} 1661}
1662 1662
1663int wl1271_acx_set_ap_beacon_filter(struct wl1271 *wl, bool enable)
1664{
1665 struct acx_ap_beacon_filter *acx = NULL;
1666 int ret;
1667
1668 wl1271_debug(DEBUG_ACX, "acx set ap beacon filter: %d", enable);
1669
1670 acx = kzalloc(sizeof(*acx), GFP_KERNEL);
1671 if (!acx)
1672 return -ENOMEM;
1673
1674 acx->enable = enable ? 1 : 0;
1675
1676 ret = wl1271_cmd_configure(wl, ACX_AP_BEACON_FILTER_OPT,
1677 acx, sizeof(*acx));
1678 if (ret < 0) {
1679 wl1271_warning("acx set ap beacon filter failed: %d", ret);
1680 goto out;
1681 }
1682
1683out:
1684 kfree(acx);
1685 return ret;
1686}
1687
1688int wl1271_acx_fm_coex(struct wl1271 *wl) 1663int wl1271_acx_fm_coex(struct wl1271 *wl)
1689{ 1664{
1690 struct wl1271_acx_fm_coex *acx; 1665 struct wl1271_acx_fm_coex *acx;
diff --git a/drivers/net/wireless/wl12xx/acx.h b/drivers/net/wireless/wl12xx/acx.h
index 67258a15de21..3aec410634e7 100644
--- a/drivers/net/wireless/wl12xx/acx.h
+++ b/drivers/net/wireless/wl12xx/acx.h
@@ -1096,13 +1096,6 @@ struct wl1271_acx_inconnection_sta {
1096 u8 padding1[2]; 1096 u8 padding1[2];
1097} __packed; 1097} __packed;
1098 1098
1099struct acx_ap_beacon_filter {
1100 struct acx_header header;
1101
1102 u8 enable;
1103 u8 pad[3];
1104} __packed;
1105
1106/* 1099/*
1107 * ACX_FM_COEX_CFG 1100 * ACX_FM_COEX_CFG
1108 * set the FM co-existence parameters. 1101 * set the FM co-existence parameters.
@@ -1177,7 +1170,6 @@ enum {
1177 ACX_TID_CFG = 0x001A, 1170 ACX_TID_CFG = 0x001A,
1178 ACX_PS_RX_STREAMING = 0x001B, 1171 ACX_PS_RX_STREAMING = 0x001B,
1179 ACX_BEACON_FILTER_OPT = 0x001F, 1172 ACX_BEACON_FILTER_OPT = 0x001F,
1180 ACX_AP_BEACON_FILTER_OPT = 0x0020,
1181 ACX_NOISE_HIST = 0x0021, 1173 ACX_NOISE_HIST = 0x0021,
1182 ACX_HDK_VERSION = 0x0022, /* ??? */ 1174 ACX_HDK_VERSION = 0x0022, /* ??? */
1183 ACX_PD_THRESHOLD = 0x0023, 1175 ACX_PD_THRESHOLD = 0x0023,
@@ -1301,7 +1293,6 @@ int wl1271_acx_ps_rx_streaming(struct wl1271 *wl, bool enable);
1301int wl1271_acx_ap_max_tx_retry(struct wl1271 *wl); 1293int wl1271_acx_ap_max_tx_retry(struct wl1271 *wl);
1302int wl1271_acx_config_ps(struct wl1271 *wl); 1294int wl1271_acx_config_ps(struct wl1271 *wl);
1303int wl1271_acx_set_inconnection_sta(struct wl1271 *wl, u8 *addr); 1295int wl1271_acx_set_inconnection_sta(struct wl1271 *wl, u8 *addr);
1304int wl1271_acx_set_ap_beacon_filter(struct wl1271 *wl, bool enable);
1305int wl1271_acx_fm_coex(struct wl1271 *wl); 1296int wl1271_acx_fm_coex(struct wl1271 *wl);
1306 1297
1307#endif /* __WL1271_ACX_H__ */ 1298#endif /* __WL1271_ACX_H__ */
diff --git a/drivers/net/wireless/wl12xx/init.c b/drivers/net/wireless/wl12xx/init.c
index 683c8d128551..3a6660901c33 100644
--- a/drivers/net/wireless/wl12xx/init.c
+++ b/drivers/net/wireless/wl12xx/init.c
@@ -469,7 +469,7 @@ int wl1271_ap_init_templates(struct wl1271 *wl)
469 * when operating as AP we want to receive external beacons for 469 * when operating as AP we want to receive external beacons for
470 * configuring ERP protection. 470 * configuring ERP protection.
471 */ 471 */
472 ret = wl1271_acx_set_ap_beacon_filter(wl, false); 472 ret = wl1271_acx_beacon_filter_opt(wl, false);
473 if (ret < 0) 473 if (ret < 0)
474 return ret; 474 return ret;
475 475
diff --git a/drivers/net/wireless/wl12xx/main.c b/drivers/net/wireless/wl12xx/main.c
index 1389c5cba343..d683bca9b308 100644
--- a/drivers/net/wireless/wl12xx/main.c
+++ b/drivers/net/wireless/wl12xx/main.c
@@ -1639,7 +1639,7 @@ static int wl1271_configure_suspend_ap(struct wl1271 *wl)
1639 if (ret < 0) 1639 if (ret < 0)
1640 goto out_unlock; 1640 goto out_unlock;
1641 1641
1642 ret = wl1271_acx_set_ap_beacon_filter(wl, true); 1642 ret = wl1271_acx_beacon_filter_opt(wl, true);
1643 1643
1644 wl1271_ps_elp_sleep(wl); 1644 wl1271_ps_elp_sleep(wl);
1645out_unlock: 1645out_unlock:
@@ -1677,7 +1677,7 @@ static void wl1271_configure_resume(struct wl1271 *wl)
1677 wl1271_ps_set_mode(wl, STATION_ACTIVE_MODE, 1677 wl1271_ps_set_mode(wl, STATION_ACTIVE_MODE,
1678 wl->basic_rate, true); 1678 wl->basic_rate, true);
1679 } else if (is_ap) { 1679 } else if (is_ap) {
1680 wl1271_acx_set_ap_beacon_filter(wl, false); 1680 wl1271_acx_beacon_filter_opt(wl, false);
1681 } 1681 }
1682 1682
1683 wl1271_ps_elp_sleep(wl); 1683 wl1271_ps_elp_sleep(wl);