diff options
Diffstat (limited to 'drivers/net/wireless/bcmdhd/wl_cfgvendor.c')
-rw-r--r-- | drivers/net/wireless/bcmdhd/wl_cfgvendor.c | 107 |
1 files changed, 0 insertions, 107 deletions
diff --git a/drivers/net/wireless/bcmdhd/wl_cfgvendor.c b/drivers/net/wireless/bcmdhd/wl_cfgvendor.c index 676eeafbc859..55094340b00d 100644 --- a/drivers/net/wireless/bcmdhd/wl_cfgvendor.c +++ b/drivers/net/wireless/bcmdhd/wl_cfgvendor.c @@ -846,105 +846,6 @@ static int wl_cfgvendor_set_batch_scan_cfg(struct wiphy *wiphy, return err; } -static int wl_cfgvendor_significant_change_cfg(struct wiphy *wiphy, - struct wireless_dev *wdev, const void *data, int len) -{ - int err = 0; - struct bcm_cfg80211 *cfg = wiphy_priv(wiphy); - gscan_swc_params_t *significant_params; - int tmp, tmp1, tmp2, type, j = 0; - const struct nlattr *outer, *inner, *iter; - uint8 flush = 0; - wl_pfn_significant_bssid_t *pbssid; - uint16 num_bssid = 0; - uint16 max_buf_size = sizeof(gscan_swc_params_t) + - sizeof(wl_pfn_significant_bssid_t) * (PFN_SWC_MAX_NUM_APS - 1); - - significant_params = kzalloc(max_buf_size, GFP_KERNEL); - - if (!significant_params) { - WL_ERR(("Cannot Malloc mem size:%d\n", len)); - return BCME_NOMEM; - } - - - nla_for_each_attr(iter, data, len, tmp2) { - type = nla_type(iter); - - switch (type) { - case GSCAN_ATTRIBUTE_SIGNIFICANT_CHANGE_FLUSH: - flush = nla_get_u8(iter); - break; - case GSCAN_ATTRIBUTE_RSSI_SAMPLE_SIZE: - significant_params->rssi_window = nla_get_u16(iter); - break; - case GSCAN_ATTRIBUTE_LOST_AP_SAMPLE_SIZE: - significant_params->lost_ap_window = nla_get_u16(iter); - break; - case GSCAN_ATTRIBUTE_MIN_BREACHING: - significant_params->swc_threshold = nla_get_u16(iter); - break; - case GSCAN_ATTRIBUTE_NUM_BSSID: - num_bssid = nla_get_u16(iter); - if (num_bssid > PFN_SWC_MAX_NUM_APS) { - WL_ERR(("ovar max SWC bssids:%d\n", - num_bssid)); - err = BCME_BADARG; - goto exit; - } - break; - case GSCAN_ATTRIBUTE_SIGNIFICANT_CHANGE_BSSIDS: - if (num_bssid == 0) { - WL_ERR(("num_bssid : 0\n")); - err = BCME_BADARG; - goto exit; - } - pbssid = significant_params->bssid_elem_list; - nla_for_each_nested(outer, iter, tmp) { - if (j >= num_bssid) { - j++; - break; - } - nla_for_each_nested(inner, outer, tmp1) { - switch (nla_type(inner)) { - case GSCAN_ATTRIBUTE_BSSID: - memcpy(&(pbssid[j].macaddr), - nla_data(inner), - ETHER_ADDR_LEN); - break; - case GSCAN_ATTRIBUTE_RSSI_HIGH: - pbssid[j].rssi_high_threshold = - (int8) nla_get_u8(inner); - break; - case GSCAN_ATTRIBUTE_RSSI_LOW: - pbssid[j].rssi_low_threshold = - (int8) nla_get_u8(inner); - break; - } - } - j++; - } - break; - } - } - if (j != num_bssid) { - WL_ERR(("swc bssids count:%d not matched to num_bssid:%d\n", - j, num_bssid)); - err = BCME_BADARG; - goto exit; - } - significant_params->nbssid = j; - - if (dhd_dev_pno_set_cfg_gscan(bcmcfg_to_prmry_ndev(cfg), - DHD_PNO_SIGNIFICANT_SCAN_CFG_ID, significant_params, flush) < 0) { - WL_ERR(("Could not set GSCAN significant cfg\n")); - err = -EINVAL; - goto exit; - } -exit: - kfree(significant_params); - return err; -} #endif /* GSCAN_SUPPORT */ #ifdef RTT_SUPPORT @@ -1449,14 +1350,6 @@ static const struct wiphy_vendor_command wl_vendor_cmds [] = { { { .vendor_id = OUI_GOOGLE, - .subcmd = GSCAN_SUBCMD_SET_SIGNIFICANT_CHANGE_CONFIG - }, - .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, - .doit = wl_cfgvendor_significant_change_cfg - }, - { - { - .vendor_id = OUI_GOOGLE, .subcmd = GSCAN_SUBCMD_GET_SCAN_RESULTS }, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV, |