aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/bcmdhd/wl_cfg80211.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/bcmdhd/wl_cfg80211.c')
-rw-r--r--drivers/net/wireless/bcmdhd/wl_cfg80211.c66
1 files changed, 3 insertions, 63 deletions
diff --git a/drivers/net/wireless/bcmdhd/wl_cfg80211.c b/drivers/net/wireless/bcmdhd/wl_cfg80211.c
index ac7dcd5..c205695 100644
--- a/drivers/net/wireless/bcmdhd/wl_cfg80211.c
+++ b/drivers/net/wireless/bcmdhd/wl_cfg80211.c
@@ -4626,45 +4626,6 @@ wl_cfg80211_config_p2p_pub_af_tx(struct wiphy *wiphy,
return err;
}
-#ifdef WL11U
-static bool
-wl_cfg80211_check_DFS_channel(struct bcm_cfg80211 *cfg, wl_af_params_t *af_params,
- void *frame, u16 frame_len)
-{
- struct wl_scan_results *bss_list;
- struct wl_bss_info *bi = NULL;
- bool result = false;
- s32 i;
- chanspec_t chanspec;
-
- /* If DFS channel is 52~148, check to block it or not */
- WL_DBG(("af_params->channel=%d\n", af_params->channel));
- if (af_params &&
- (af_params->channel >= 52 && af_params->channel <= 148)) {
- if (!wl_cfgp2p_is_p2p_action(frame, frame_len)) {
- WL_DBG(("non p2p action frame\n"));
- bss_list = cfg->bss_list;
- bi = next_bss(bss_list, bi);
- for_each_bss(bss_list, bi, i) {
- chanspec = wl_chspec_driver_to_host(bi->chanspec);
- WL_DBG(("bi->chanspec=%d, chanspec=%d\n", bi->chanspec, chanspec));
- if (CHSPEC_IS5G(chanspec) &&
- ((bi->ctl_ch ? bi->ctl_ch : CHSPEC_CHANNEL(chanspec))
- == af_params->channel)) {
- result = true; /* do not block the action frame */
- break;
- }
- }
- }
- }
- else {
- result = true;
- }
-
- WL_DBG(("result=%s", result?"true":"false"));
- return result;
-}
-#endif /* WL11U */
static bool
wl_cfg80211_send_action_frame(struct wiphy *wiphy, struct net_device *dev,
@@ -8564,30 +8525,9 @@ wl_cfg80211_netdev_notifier_call(struct notifier_block * nb,
return NOTIFY_DONE;
switch (state) {
case NETDEV_DOWN:
- {
- int max_wait_timeout = 5;
- int max_wait_count = 100;
- unsigned long limit = jiffies + max_wait_timeout * HZ;
- while (work_pending(&wdev->cleanup_work)) {
- if (refcnt%5 == 0) {
- WL_ERR(("[NETDEV_DOWN] wait for "
- "complete of cleanup_work"
- " (%d th)\n", refcnt));
- }
- if (!time_before(jiffies, limit)) {
- WL_ERR(("[NETDEV_DOWN] cleanup_work"
- " of CFG80211 is not"
- " completed in %d sec\n",
- max_wait_timeout));
- break;
- }
- if (refcnt >= max_wait_count) {
- WL_ERR(("[NETDEV_DOWN] cleanup_work"
- " of CFG80211 is not"
- " completed in %d loop\n",
- max_wait_count));
- break;
- }
+ while (work_pending(&wdev->cleanup_work) && refcnt < 100) {
+ if (refcnt%5 == 0)
+ WL_ERR(("[NETDEV_DOWN] work_pending (%d th)\n", refcnt));
set_current_state(TASK_INTERRUPTIBLE);
schedule_timeout(100);
set_current_state(TASK_RUNNING);