From 051597a4fe19fd1292fb7ea2e627d12d1fd2934f Mon Sep 17 00:00:00 2001 From: Srinivas Girigowda Date: Fri, 16 Dec 2016 18:32:10 -0800 Subject: qcacld-2.0: Remove obsolete set/reset ssid hotlist Remove obsolete set/reset ssid hotlist. Change-Id: Ie6c4a9847f2daa9ba2aebd17f386d584201b86d6 CRs-Fixed: 1102593 --- CORE/HDD/inc/wlan_hdd_cfg80211.h | 20 +- CORE/HDD/src/wlan_hdd_cfg80211.c | 560 ------------------------------- CORE/MAC/inc/sirApi.h | 33 -- CORE/MAC/src/include/sirParams.h | 2 +- CORE/SERVICES/WMA/wma.c | 219 ------------ CORE/SME/inc/sme_Api.h | 4 - CORE/SME/src/sme_common/sme_Api.c | 46 --- CORE/SYS/legacy/src/utils/src/macTrace.c | 1 - 8 files changed, 7 insertions(+), 878 deletions(-) diff --git a/CORE/HDD/inc/wlan_hdd_cfg80211.h b/CORE/HDD/inc/wlan_hdd_cfg80211.h index 3e46b3e..9a943af 100644 --- a/CORE/HDD/inc/wlan_hdd_cfg80211.h +++ b/CORE/HDD/inc/wlan_hdd_cfg80211.h @@ -219,10 +219,12 @@ enum qca_nl80211_vendor_subcmds { /* Start Wifi Memory Dump */ QCA_NL80211_VENDOR_SUBCMD_WIFI_LOGGER_MEMORY_DUMP = 63, QCA_NL80211_VENDOR_SUBCMD_ROAM = 64, - QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SSID_HOTLIST = 65, - QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SSID_HOTLIST = 66, - QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND = 67, - QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST = 68, + + /* + * APIs corresponding to the sub commands 65-68 are deprecated. + * These sub commands are reserved and not supposed to be used + * for any other purpose + */ QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_SET_LIST = 69, QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_SET_PASSPOINT_LIST = 70, QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_RESET_PASSPOINT_LIST = 71, @@ -333,12 +335,6 @@ enum qca_nl80211_vendor_subcmds_index { QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_PASSPOINT_NETWORK_FOUND_INDEX, #endif /* FEATURE_WLAN_EXTSCAN */ -#ifdef FEATURE_WLAN_EXTSCAN - QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SSID_HOTLIST_INDEX, - QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SSID_HOTLIST_INDEX, - QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND_INDEX, - QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST_INDEX, -#endif /* OCB events */ QCA_NL80211_VENDOR_SUBCMD_DCC_STATS_EVENT_INDEX, #ifdef WLAN_FEATURE_MEMDUMP @@ -802,10 +798,6 @@ enum qca_wlan_vendor_attr_extscan_results /* Unsigned 32bit value; a EXTSCAN Capabilities attribute. */ QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_NUM_WHITELISTED_SSID, - /* EXTSCAN attributes for - * QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND sub-command & - * QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST sub-command - */ /* Use attr QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE * to indicate number of results. */ diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c index 532ec5a..4e3e7d4 100644 --- a/CORE/HDD/src/wlan_hdd_cfg80211.c +++ b/CORE/HDD/src/wlan_hdd_cfg80211.c @@ -1223,14 +1223,6 @@ static const struct nl80211_vendor_cmd_info wlan_hdd_cfg80211_vendor_events[] = .vendor_id = QCA_NL80211_VENDOR_ID, .subcmd = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SIGNIFICANT_CHANGE }, - [QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND_INDEX] = { - .vendor_id = QCA_NL80211_VENDOR_ID, - .subcmd = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND - }, - [QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST_INDEX] = { - .vendor_id = QCA_NL80211_VENDOR_ID, - .subcmd = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST - }, #endif /* FEATURE_WLAN_EXTSCAN */ #ifdef WLAN_FEATURE_LINK_LAYER_STATS @@ -1307,14 +1299,6 @@ static const struct nl80211_vendor_cmd_info wlan_hdd_cfg80211_vendor_events[] = .vendor_id = QCA_NL80211_VENDOR_ID, .subcmd = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_PASSPOINT_NETWORK_FOUND }, - [QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SSID_HOTLIST_INDEX] = { - .vendor_id = QCA_NL80211_VENDOR_ID, - .subcmd = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SSID_HOTLIST - }, - [QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SSID_HOTLIST_INDEX] = { - .vendor_id = QCA_NL80211_VENDOR_ID, - .subcmd = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SSID_HOTLIST - }, [QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_AP_LOST_INDEX] = { .vendor_id = QCA_NL80211_VENDOR_ID, .subcmd = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_AP_LOST @@ -3033,253 +3017,6 @@ static int wlan_hdd_cfg80211_extscan_set_bssid_hotlist(struct wiphy *wiphy, } -/* - * define short names for the global vendor params - * used by wlan_hdd_cfg80211_extscan_set_ssid_hotlist() - */ -#define PARAM_MAX \ - QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_MAX -#define PARAM_REQUEST_ID \ - QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_REQUEST_ID -#define PARAMS_LOST_SSID_SAMPLE_SIZE \ - QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_HOTLIST_PARAMS_LOST_SSID_SAMPLE_SIZE -#define PARAMS_NUM_SSID \ - QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_HOTLIST_PARAMS_NUM_SSID -#define THRESHOLD_PARAM \ - QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM -#define PARAM_SSID \ - QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_SSID -#define PARAM_BAND \ - QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_BAND -#define PARAM_RSSI_LOW \ - QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_RSSI_LOW -#define PARAM_RSSI_HIGH \ - QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_RSSI_HIGH - -/** - * __wlan_hdd_cfg80211_extscan_set_ssid_hotlist() - set ssid hot list - * @wiphy: Pointer to wireless phy - * @wdev: Pointer to wireless device - * @data: Pointer to data - * @data_len: Data length - * - * Return: 0 on success, negative errno on failure - */ -static int -__wlan_hdd_cfg80211_extscan_set_ssid_hotlist(struct wiphy *wiphy, - struct wireless_dev *wdev, - const void *data, - int data_len) -{ - struct sir_set_ssid_hotlist_request *request; - struct net_device *dev = wdev->netdev; - hdd_adapter_t *adapter = WLAN_HDD_GET_PRIV_PTR(dev); - hdd_context_t *hdd_ctx = wiphy_priv(wiphy); - struct nlattr *tb[PARAM_MAX + 1]; - struct nlattr *tb2[PARAM_MAX + 1]; - struct nlattr *ssids; - struct hdd_ext_scan_context *context; - uint32_t request_id; - char ssid_string[SIR_MAC_MAX_SSID_LENGTH + 1]; - int ssid_len, ssid_length; - eHalStatus status; - int i, rem, retval; - unsigned long rc; - - ENTER(); - - if (VOS_FTM_MODE == hdd_get_conparam()) { - hddLog(LOGE, FL("Command not allowed in FTM mode")); - return -EINVAL; - } - - retval = wlan_hdd_validate_context(hdd_ctx); - if (0 != retval) - return -EINVAL; - - if (nla_parse(tb, PARAM_MAX, - data, data_len, - wlan_hdd_extscan_config_policy)) { - hddLog(LOGE, FL("Invalid ATTR")); - return -EINVAL; - } - - request = vos_mem_malloc(sizeof(*request)); - if (!request) { - hddLog(LOGE, FL("vos_mem_malloc failed")); - return -ENOMEM; - } - - /* Parse and fetch request Id */ - if (!tb[PARAM_REQUEST_ID]) { - hddLog(LOGE, FL("attr request id failed")); - goto fail; - } - - request->request_id = nla_get_u32(tb[PARAM_REQUEST_ID]); - hddLog(LOG1, FL("Request Id %d"), request->request_id); - - /* Parse and fetch lost SSID sample size */ - if (!tb[PARAMS_LOST_SSID_SAMPLE_SIZE]) { - hddLog(LOGE, FL("attr number of Ssid failed")); - goto fail; - } - request->lost_ssid_sample_size = - nla_get_u32(tb[PARAMS_LOST_SSID_SAMPLE_SIZE]); - hddLog(LOG1, FL("Lost SSID Sample Size %d"), - request->lost_ssid_sample_size); - - /* Parse and fetch number of hotlist SSID */ - if (!tb[PARAMS_NUM_SSID]) { - hddLog(LOGE, FL("attr number of Ssid failed")); - goto fail; - } - request->ssid_count = nla_get_u32(tb[PARAMS_NUM_SSID]); - hddLog(LOG1, FL("Number of SSID %d"), request->ssid_count); - - request->session_id = adapter->sessionId; - hddLog(LOG1, FL("Session Id (%d)"), request->session_id); - - i = 0; - nla_for_each_nested(ssids, tb[THRESHOLD_PARAM], rem) { - if (i >= WLAN_EXTSCAN_MAX_HOTLIST_SSIDS) { - hddLog(LOGE, - FL("Too Many SSIDs, %d exceeds %d"), - i, WLAN_EXTSCAN_MAX_HOTLIST_SSIDS); - break; - } - if (nla_parse(tb2, PARAM_MAX, - nla_data(ssids), nla_len(ssids), - wlan_hdd_extscan_config_policy)) { - hddLog(LOGE, FL("nla_parse failed")); - goto fail; - } - - /* Parse and fetch SSID */ - if (!tb2[PARAM_SSID]) { - hddLog(LOGE, FL("attr ssid failed")); - goto fail; - } - ssid_length = nla_strlcpy(ssid_string, - tb2[PARAM_SSID], - sizeof(ssid_string)); - - /* nla_parse will detect overflow but not underflow */ - if (0 == ssid_length) { - hddLog(LOGE, FL("zero ssid length")); - goto fail; - } - hddLog(LOG1, FL("SSID %s"), ssid_string); - ssid_len = strlen(ssid_string); - if (ssid_length > SIR_MAC_MAX_SSID_LENGTH) { - hddLog(LOGE, FL("Invalid ssid length")); - goto fail; - } - memcpy(request->ssids[i].ssid.ssId, ssid_string, ssid_len); - request->ssids[i].ssid.length = ssid_len; - - /* Parse and fetch low RSSI */ - if (!tb2[PARAM_BAND]) { - hddLog(LOGE, FL("attr band failed")); - goto fail; - } - request->ssids[i].band = nla_get_u8(tb2[PARAM_BAND]); - hddLog(LOG1, FL("band %d"), request->ssids[i].band); - - /* Parse and fetch low RSSI */ - if (!tb2[PARAM_RSSI_LOW]) { - hddLog(LOGE, FL("attr low RSSI failed")); - goto fail; - } - request->ssids[i].rssi_low = nla_get_s32(tb2[PARAM_RSSI_LOW]); - hddLog(LOG1, FL("RSSI low %d"), request->ssids[i].rssi_low); - - /* Parse and fetch high RSSI */ - if (!tb2[PARAM_RSSI_HIGH]) { - hddLog(LOGE, FL("attr high RSSI failed")); - goto fail; - } - request->ssids[i].rssi_high = nla_get_u32(tb2[PARAM_RSSI_HIGH]); - hddLog(LOG1, FL("RSSI high %d"), request->ssids[i].rssi_high); - i++; - } - - context = &hdd_ctx->ext_scan_context; - spin_lock(&hdd_context_lock); - INIT_COMPLETION(context->response_event); - context->request_id = request_id = request->request_id; - spin_unlock(&hdd_context_lock); - - status = sme_set_ssid_hotlist(hdd_ctx->hHal, request); - if (!HAL_STATUS_SUCCESS(status)) { - hddLog(LOGE, - FL("sme_set_ssid_hotlist failed(err=%d)"), status); - goto fail; - } - - vos_mem_free(request); - - /* request was sent -- wait for the response */ - rc = wait_for_completion_timeout(&context->response_event, - msecs_to_jiffies - (WLAN_WAIT_TIME_EXTSCAN)); - if (!rc) { - hddLog(LOGE, FL("sme_set_ssid_hotlist timed out")); - retval = -ETIMEDOUT; - } else { - spin_lock(&hdd_context_lock); - if (context->request_id == request_id) - retval = context->response_status; - else - retval = -EINVAL; - spin_unlock(&hdd_context_lock); - } - - return retval; - -fail: - vos_mem_free(request); - return -EINVAL; -} - -/* - * done with short names for the global vendor params - * used by wlan_hdd_cfg80211_extscan_set_ssid_hotlist() - */ -#undef PARAM_MAX -#undef PARAM_REQUEST_ID -#undef PARAMS_NUM_SSID -#undef THRESHOLD_PARAM -#undef PARAM_SSID -#undef PARAM_BAND -#undef PARAM_RSSI_LOW -#undef PARAM_RSSI_HIGH - -/** - * wlan_hdd_cfg80211_extscan_set_ssid_hotlist() - set ssid hot list - * @wiphy: Pointer to wireless phy - * @wdev: Pointer to wireless device - * @data: Pointer to data - * @data_len: Data length - * - * Return: 0 on success, negative errno on failure - */ -static int -wlan_hdd_cfg80211_extscan_set_ssid_hotlist(struct wiphy *wiphy, - struct wireless_dev *wdev, - const void *data, - int data_len) -{ - int ret; - - vos_ssr_protect(__func__); - ret = __wlan_hdd_cfg80211_extscan_set_ssid_hotlist(wiphy, wdev, data, - data_len); - vos_ssr_unprotect(__func__); - - return ret; -} - static int __wlan_hdd_cfg80211_extscan_set_significant_change( struct wiphy *wiphy, struct wireless_dev *wdev, @@ -4632,136 +4369,6 @@ static int wlan_hdd_cfg80211_extscan_reset_bssid_hotlist(struct wiphy *wiphy, return ret; } -/** - * __wlan_hdd_cfg80211_extscan_reset_ssid_hotlist() - reset ssid hot list - * @wiphy: Pointer to wireless phy - * @wdev: Pointer to wireless device - * @data: Pointer to data - * @data_len: Data length - * - * Return: 0 on success, negative errno on failure - */ -static int -__wlan_hdd_cfg80211_extscan_reset_ssid_hotlist(struct wiphy *wiphy, - struct wireless_dev *wdev, - const void *data, - int data_len) -{ - struct sir_set_ssid_hotlist_request *request; - struct net_device *dev = wdev->netdev; - hdd_adapter_t *adapter = WLAN_HDD_GET_PRIV_PTR(dev); - hdd_context_t *hdd_ctx = wiphy_priv(wiphy); - struct nlattr *tb[PARAM_MAX + 1]; - struct hdd_ext_scan_context *context; - uint32_t request_id; - eHalStatus status; - int retval; - unsigned long rc; - - ENTER(); - - if (VOS_FTM_MODE == hdd_get_conparam()) { - hddLog(LOGE, FL("Command not allowed in FTM mode")); - return -EINVAL; - } - - retval = wlan_hdd_validate_context(hdd_ctx); - if (0 != retval) - return -EINVAL; - - if (!hdd_ctx->cfg_ini->extscan_enabled) { - hddLog(LOGE, FL("extscan not supported")); - return -ENOTSUPP; - } - if (nla_parse(tb, PARAM_MAX, - data, data_len, - wlan_hdd_extscan_config_policy)) { - hddLog(LOGE, FL("Invalid ATTR")); - return -EINVAL; - } - - request = vos_mem_malloc(sizeof(*request)); - if (!request) { - hddLog(LOGE, FL("vos_mem_malloc failed")); - return -ENOMEM; - } - - /* Parse and fetch request Id */ - if (!tb[PARAM_REQUEST_ID]) { - hddLog(LOGE, FL("attr request id failed")); - goto fail; - } - - request->request_id = nla_get_u32(tb[PARAM_REQUEST_ID]); - request->session_id = adapter->sessionId; - hddLog(LOG1, FL("Request Id %d Session Id %d"), request->request_id, - request->session_id); - - request->lost_ssid_sample_size = 0; - request->ssid_count = 0; - - context = &hdd_ctx->ext_scan_context; - spin_lock(&hdd_context_lock); - INIT_COMPLETION(context->response_event); - context->request_id = request_id = request->request_id; - spin_unlock(&hdd_context_lock); - - status = sme_set_ssid_hotlist(hdd_ctx->hHal, request); - if (!HAL_STATUS_SUCCESS(status)) { - hddLog(LOGE, - FL("sme_reset_ssid_hotlist failed(err=%d)"), status); - goto fail; - } - - vos_mem_free(request); - - /* request was sent -- wait for the response */ - rc = wait_for_completion_timeout(&context->response_event, - msecs_to_jiffies - (WLAN_WAIT_TIME_EXTSCAN)); - if (!rc) { - hddLog(LOGE, FL("sme_reset_ssid_hotlist timed out")); - retval = -ETIMEDOUT; - } else { - spin_lock(&hdd_context_lock); - if (context->request_id == request_id) - retval = context->response_status; - else - retval = -EINVAL; - spin_unlock(&hdd_context_lock); - } - - return retval; - -fail: - vos_mem_free(request); - return -EINVAL; -} - -/** - * wlan_hdd_cfg80211_extscan_reset_ssid_hotlist() - reset ssid hot list - * @wiphy: Pointer to wireless phy - * @wdev: Pointer to wireless device - * @data: Pointer to data - * @data_len: Data length - * - * Return: 0 on success, negative errno on failure - */ -static int -wlan_hdd_cfg80211_extscan_reset_ssid_hotlist(struct wiphy *wiphy, - struct wireless_dev *wdev, - const void *data, - int data_len) -{ - int ret; - - vos_ssr_protect(__func__); - ret = __wlan_hdd_cfg80211_extscan_reset_ssid_hotlist(wiphy, wdev, - data, data_len); - vos_ssr_unprotect(__func__); - - return ret; -} /* * done with short names for the global vendor params * used by wlan_hdd_cfg80211_extscan_reset_ssid_hotlist() @@ -13572,22 +13179,6 @@ const struct wiphy_vendor_command hdd_wiphy_vendor_commands[] = WIPHY_VENDOR_CMD_NEED_RUNNING, .doit = wlan_hdd_cfg80211_reset_passpoint_list }, - { - .info.vendor_id = QCA_NL80211_VENDOR_ID, - .info.subcmd = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SSID_HOTLIST, - .flags = WIPHY_VENDOR_CMD_NEED_WDEV | - WIPHY_VENDOR_CMD_NEED_NETDEV | - WIPHY_VENDOR_CMD_NEED_RUNNING, - .doit = wlan_hdd_cfg80211_extscan_set_ssid_hotlist - }, - { - .info.vendor_id = QCA_NL80211_VENDOR_ID, - .info.subcmd = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SSID_HOTLIST, - .flags = WIPHY_VENDOR_CMD_NEED_WDEV | - WIPHY_VENDOR_CMD_NEED_NETDEV | - WIPHY_VENDOR_CMD_NEED_RUNNING, - .doit = wlan_hdd_cfg80211_extscan_reset_ssid_hotlist - }, #endif /* FEATURE_WLAN_EXTSCAN */ { .info.vendor_id = QCA_NL80211_VENDOR_ID, @@ -27596,152 +27187,6 @@ wlan_hdd_cfg80211_extscan_generic_rsp } /** - * wlan_hdd_cfg80211_extscan_hotlist_ssid_match_ind() - - * Handle an SSID hotlist match event - * @ctx: HDD context registered with SME - * @event: The SSID hotlist match event - * - * This function will take an SSID match event that was generated by - * firmware and will convert it into a cfg80211 vendor event which is - * sent to userspace. - * This callback execute in atomic context and must not invoke any - * blocking calls. - * - * Return: none - */ -static void -wlan_hdd_cfg80211_extscan_hotlist_ssid_match_ind(void *ctx, - tpSirWifiScanResultEvent event) -{ - hdd_context_t *hdd_ctx = ctx; - struct sk_buff *skb; - unsigned i; - unsigned index; - int flags = vos_get_gfp_flags(); - - ENTER(); - - if (wlan_hdd_validate_context(hdd_ctx)) - return; - - if (!event) { - hddLog(LOGE, - FL("event is null")); - return; - } - if (event->ap_found) { - index = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND_INDEX; - hddLog(LOG1, "SSID hotlist found"); - } else { - index = QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST_INDEX; - hddLog(LOG1, "SSID hotlist lost"); - } - - skb = cfg80211_vendor_event_alloc(hdd_ctx->wiphy, - NULL, - EXTSCAN_EVENT_BUF_SIZE + NLMSG_HDRLEN, - index, flags); - - if (!skb) { - hddLog(LOGE, FL("cfg80211_vendor_event_alloc failed")); - return; - } - hddLog(LOG1, "Req Id %u, Num results %u, More Data (%u)", - event->requestId, event->numOfAps, event->moreData); - - for (i = 0; i < event->numOfAps; i++) { - hddLog(LOG1, "[i=%d] Timestamp %llu " - "Ssid: %s " - "Bssid (" MAC_ADDRESS_STR ") " - "Channel %u " - "Rssi %d " - "RTT %u " - "RTT_SD %u", - i, - event->ap[i].ts, - event->ap[i].ssid, - MAC_ADDR_ARRAY(event->ap[i].bssid), - event->ap[i].channel, - event->ap[i].rssi, - event->ap[i].rtt, - event->ap[i].rtt_sd); - } - - if (nla_put_u32(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_REQUEST_ID, - event->requestId) || - nla_put_u32(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE, - event->numOfAps)) { - hddLog(LOGE, FL("put fail")); - goto fail; - } - - if (event->numOfAps) { - struct nlattr *aps; - aps = nla_nest_start(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_LIST); - if (!aps) { - hddLog(LOGE, FL("nest fail")); - goto fail; - } - - for (i = 0; i < event->numOfAps; i++) { - struct nlattr *ap; - - ap = nla_nest_start(skb, i); - if (!ap) { - hddLog(LOGE, FL("nest fail")); - goto fail; - } - - if (nla_put_u64(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_TIME_STAMP, - event->ap[i].ts) || - nla_put(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_SSID, - sizeof(event->ap[i].ssid), - event->ap[i].ssid) || - nla_put(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_BSSID, - sizeof(event->ap[i].bssid), - event->ap[i].bssid) || - nla_put_u32(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_CHANNEL, - event->ap[i].channel) || - nla_put_s32(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_RSSI, - event->ap[i].rssi) || - nla_put_u32(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_RTT, - event->ap[i].rtt) || - nla_put_u32(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_RTT_SD, - event->ap[i].rtt_sd)) { - hddLog(LOGE, FL("put fail")); - goto fail; - } - nla_nest_end(skb, ap); - } - nla_nest_end(skb, aps); - - if (nla_put_u8(skb, - QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_MORE_DATA, - event->moreData)) { - hddLog(LOGE, FL("put fail")); - goto fail; - } - } - - cfg80211_vendor_event(skb, flags); - return; - -fail: - kfree_skb(skb); - return; -} - -/** * wlan_hdd_cfg80211_extscan_signif_wifi_change_results_ind() - results callback * @hddctx: HDD context * @data: event data @@ -28462,11 +27907,6 @@ void wlan_hdd_cfg80211_extscan_callback(void *ctx, const tANI_U16 evType, wlan_hdd_cfg80211_extscan_generic_rsp(ctx, pMsg); break; - case eSIR_EXTSCAN_HOTLIST_SSID_MATCH_IND: - wlan_hdd_cfg80211_extscan_hotlist_ssid_match_ind(ctx, - (tpSirWifiScanResultEvent)pMsg); - break; - default: hddLog(LOGE, FL("Unknown event type %u"), evType); break; diff --git a/CORE/MAC/inc/sirApi.h b/CORE/MAC/inc/sirApi.h index 605e9c6..a2ac0b3 100644 --- a/CORE/MAC/inc/sirApi.h +++ b/CORE/MAC/inc/sirApi.h @@ -99,7 +99,6 @@ typedef tANI_U8 tSirVersionString[SIR_VERSION_STRING_LEN]; #define WLAN_EXTSCAN_MAX_BUCKETS 16 #define WLAN_EXTSCAN_MAX_HOTLIST_APS 128 #define WLAN_EXTSCAN_MAX_SIGNIFICANT_CHANGE_APS 64 -#define WLAN_EXTSCAN_MAX_HOTLIST_SSIDS 8 #define NUM_CHAINS_MAX 2 @@ -133,7 +132,6 @@ typedef enum eSIR_PASSPOINT_NETWORK_FOUND_IND, eSIR_EXTSCAN_SET_SSID_HOTLIST_RSP, eSIR_EXTSCAN_RESET_SSID_HOTLIST_RSP, - eSIR_EXTSCAN_HOTLIST_SSID_MATCH_IND, /* Keep this last */ eSIR_EXTSCAN_CALLBACK_TYPE_MAX, @@ -5639,37 +5637,6 @@ typedef struct } tSirExtScanResetBssidHotlistReqParams, *tpSirExtScanResetBssidHotlistReqParams; -/** - * struct sir_ssid_hotlist_param - param for SSID Hotlist - * @ssid: SSID which is being hotlisted - * @band: Band in which the given SSID should be scanned - * @rssi_low: Low bound on RSSI - * @rssi_high: High bound on RSSI - */ -struct sir_ssid_hotlist_param { - tSirMacSSid ssid; - uint8_t band; - int32_t rssi_low; - int32_t rssi_high; -}; - -/** - * struct sir_set_ssid_hotlist_request - set SSID hotlist request struct - * @request_id: ID of the request - * @session_id: ID of the session - * @lost_ssid_sample_size: Number of consecutive scans in which the SSID - * must not be seen in order to consider the SSID "lost" - * @ssid_count: Number of valid entries in the @ssids array - * @ssids: Array that defines the SSIDs that are in the hotlist - */ -struct sir_set_ssid_hotlist_request { - uint32_t request_id; - uint8_t session_id; - uint32_t lost_ssid_sample_size; - uint32_t ssid_count; - struct sir_ssid_hotlist_param ssids[WLAN_EXTSCAN_MAX_HOTLIST_SSIDS]; -}; - typedef struct { tANI_U32 requestId; diff --git a/CORE/MAC/src/include/sirParams.h b/CORE/MAC/src/include/sirParams.h index c6c8648..fbaad99 100644 --- a/CORE/MAC/src/include/sirParams.h +++ b/CORE/MAC/src/include/sirParams.h @@ -725,7 +725,7 @@ typedef struct sSirMbMsgP2p #define SIR_HAL_CONFIG_GUARD_TIME (SIR_HAL_ITC_MSG_TYPES_BEGIN + 315) #define SIR_HAL_SET_PASSPOINT_LIST_REQ (SIR_HAL_ITC_MSG_TYPES_BEGIN + 316) #define SIR_HAL_RESET_PASSPOINT_LIST_REQ (SIR_HAL_ITC_MSG_TYPES_BEGIN + 317) -#define SIR_HAL_EXTSCAN_SET_SSID_HOTLIST_REQ (SIR_HAL_ITC_MSG_TYPES_BEGIN + 318) +/* 318 unused */ #define SIR_HAL_OCB_SET_CONFIG_CMD (SIR_HAL_ITC_MSG_TYPES_BEGIN + 319) #define SIR_HAL_OCB_SET_UTC_TIME_CMD (SIR_HAL_ITC_MSG_TYPES_BEGIN + 320) diff --git a/CORE/SERVICES/WMA/wma.c b/CORE/SERVICES/WMA/wma.c index 4acc943..df2ae90 100644 --- a/CORE/SERVICES/WMA/wma.c +++ b/CORE/SERVICES/WMA/wma.c @@ -4438,102 +4438,6 @@ static int wma_passpoint_match_event_handler(void *handle, return 0; } -/** - * wma_extscan_hotlist_ssid_match_event_handler() - - * Handler for SSID hotlist match event from firmware - * @handle: WMA handle - * @cmd_param_info: WMI command buffer - * @len: length of @cmd_param_info - * - * Return: 0 on success, non-zero on failure - */ -static int -wma_extscan_hotlist_ssid_match_event_handler(void *handle, - uint8_t *cmd_param_info, - uint32_t len) -{ - tp_wma_handle wma = (tp_wma_handle) handle; - WMI_EXTSCAN_HOTLIST_SSID_MATCH_EVENTID_param_tlvs *param_buf; - wmi_extscan_hotlist_ssid_match_event_fixed_param *event; - tSirWifiScanResultEvent *dest_hotlist; - tSirWifiScanResult *dest_ap; - wmi_extscan_wlan_descriptor *src_hotlist; - int numap, j; - bool ssid_found = false; - tpAniSirGlobal mac = - vos_get_context(VOS_MODULE_ID_PE, wma->vos_context); - - if (!mac) { - WMA_LOGE("%s: Invalid mac", __func__); - return -EINVAL; - } - - if (!mac->sme.pExtScanIndCb) { - WMA_LOGE("%s: Callback not registered", __func__); - return -EINVAL; - } - - param_buf = (WMI_EXTSCAN_HOTLIST_SSID_MATCH_EVENTID_param_tlvs *) - cmd_param_info; - if (!param_buf) { - WMA_LOGE("%s: Invalid hotlist match event", __func__); - return -EINVAL; - } - - event = param_buf->fixed_param; - src_hotlist = param_buf->hotlist_ssid_match; - numap = event->total_entries; - if (!src_hotlist || !numap) { - WMA_LOGE("%s: Hotlist AP's list invalid", __func__); - return -EINVAL; - } - - dest_hotlist = vos_mem_malloc(sizeof(*dest_hotlist) + - sizeof(*dest_ap) * numap); - if (!dest_hotlist) { - WMA_LOGE("%s: Allocation failed for hotlist buffer", __func__); - return -EINVAL; - } - - dest_ap = &dest_hotlist->ap[0]; - dest_hotlist->numOfAps = event->total_entries; - dest_hotlist->requestId = event->config_request_id; - - if (event->first_entry_index + - event->num_entries_in_page < event->total_entries) - dest_hotlist->moreData = 1; - else - dest_hotlist->moreData = 0; - - WMA_LOGD("%s: Hotlist match: requestId: %u, numOfAps: %d", __func__, - dest_hotlist->requestId, dest_hotlist->numOfAps); - - for (j = 0; j < numap; j++) { - dest_ap->channel = src_hotlist->channel; - dest_ap->ts = src_hotlist->tstamp; - ssid_found = src_hotlist->flags & WMI_HOTLIST_FLAG_PRESENCE; - dest_ap->rtt = src_hotlist->rtt; - dest_ap->rtt_sd = src_hotlist->rtt_sd; - dest_ap->beaconPeriod = src_hotlist->beacon_interval; - dest_ap->capability = src_hotlist->capabilities; - dest_ap->ieLength = src_hotlist-> ie_length; - WMI_MAC_ADDR_TO_CHAR_ARRAY(&src_hotlist->bssid, - dest_ap->bssid); - vos_mem_copy(dest_ap->ssid, src_hotlist->ssid.ssid, - src_hotlist->ssid.ssid_len); - dest_ap->ssid[src_hotlist->ssid.ssid_len] = '\0'; - dest_ap++; - src_hotlist++; - } - - dest_hotlist->ap_found = ssid_found; - mac->sme.pExtScanIndCb(mac->hHdd, - eSIR_EXTSCAN_HOTLIST_SSID_MATCH_IND, - dest_hotlist); - WMA_LOGD("%s: sending hotlist ssid match event", __func__); - vos_mem_free(dest_hotlist); - return 0; -} #endif #ifdef WLAN_FEATURE_LINK_LAYER_STATS @@ -8079,10 +7983,6 @@ wma_register_extscan_event_handler(tp_wma_handle wma_handle) WMI_PASSPOINT_MATCH_EVENTID, wma_passpoint_match_event_handler); - wmi_unified_register_event_handler(wma_handle->wmi_handle, - WMI_EXTSCAN_HOTLIST_SSID_MATCH_EVENTID, - wma_extscan_hotlist_ssid_match_event_handler); - return; } @@ -21915,10 +21815,6 @@ static int wma_extscan_get_eventid_from_tlvtag(uint32_t tag) event_id = WMI_EXTSCAN_CAPABILITIES_EVENTID; break; - case WMITLV_TAG_STRUC_wmi_extscan_hotlist_ssid_match_event_fixed_param: - event_id = WMI_EXTSCAN_HOTLIST_SSID_MATCH_EVENTID; - break; - default: event_id = 0; WMA_LOGE("%s: Unknown tag: %d", __func__, tag); @@ -22003,11 +21899,6 @@ static void wma_extscan_wow_event_callback(void *handle, void *event, wmi_cmd_struct_ptr, len); break; - case WMITLV_TAG_STRUC_wmi_extscan_hotlist_ssid_match_event_fixed_param: - wma_extscan_hotlist_ssid_match_event_handler(handle, - wmi_cmd_struct_ptr, len); - break; - default: WMA_LOGE("%s: Unknown tag: %d", __func__, tag); break; @@ -28903,111 +28794,6 @@ VOS_STATUS wma_extscan_stop_hotlist_monitor(tp_wma_handle wma, return VOS_STATUS_SUCCESS; } -/** - * wma_set_ssid_hotlist() - Handle an SSID hotlist set request - * @wma: WMA handle - * @request: SSID hotlist set request from SME - * - * Return: VOS_STATUS - */ -static VOS_STATUS -wma_set_ssid_hotlist(tp_wma_handle wma, - struct sir_set_ssid_hotlist_request *request) -{ - wmi_extscan_configure_hotlist_ssid_monitor_cmd_fixed_param *cmd; - wmi_buf_t wmi_buf; - uint32_t len; - uint32_t array_size; - uint8_t *buf_ptr; - - if (!wma || !wma->wmi_handle) { - WMA_LOGE("%s: WMA is closed, can not issue hotlist cmd", - __func__); - return VOS_STATUS_E_INVAL; - } - if (!request) { - WMA_LOGE("%s: Invalid request buffer", - __func__); - return VOS_STATUS_E_INVAL; - } - if (!WMI_SERVICE_IS_ENABLED(wma->wmi_service_bitmap, - WMI_SERVICE_EXTSCAN)) { - WMA_LOGE("%s: extscan not enabled", - __func__); - return VOS_STATUS_E_FAILURE; - } - - /* length of fixed portion */ - len = sizeof(*cmd); - - /* length of variable portion */ - array_size = - request->ssid_count * sizeof(wmi_extscan_hotlist_ssid_entry); - len += WMI_TLV_HDR_SIZE + array_size; - - wmi_buf = wmi_buf_alloc(wma->wmi_handle, len); - if (!wmi_buf) { - WMA_LOGE("%s: wmi_buf_alloc failed", __func__); - return VOS_STATUS_E_NOMEM; - } - - buf_ptr = (uint8_t *) wmi_buf_data(wmi_buf); - cmd = (wmi_extscan_configure_hotlist_ssid_monitor_cmd_fixed_param *) - buf_ptr; - WMITLV_SET_HDR - (&cmd->tlv_header, - WMITLV_TAG_STRUC_wmi_extscan_configure_hotlist_ssid_monitor_cmd_fixed_param, - WMITLV_GET_STRUCT_TLVLEN - (wmi_extscan_configure_hotlist_ssid_monitor_cmd_fixed_param)); - - cmd->request_id = request->request_id; - cmd->requestor_id = 0; - cmd->vdev_id = request->session_id; - cmd->table_id = 0; - cmd->lost_ap_scan_count = request->lost_ssid_sample_size; - cmd->total_entries = request->ssid_count; - cmd->num_entries_in_page = request->ssid_count; - cmd->first_entry_index = 0; - - buf_ptr += sizeof(*cmd); - WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_STRUC, array_size); - - if (request->ssid_count) { - wmi_extscan_hotlist_ssid_entry *entry; - int i; - - buf_ptr += WMI_TLV_HDR_SIZE; - entry = (wmi_extscan_hotlist_ssid_entry *)buf_ptr; - for (i = 0; i < request->ssid_count; i++) { - WMITLV_SET_HDR - (entry, - WMITLV_TAG_ARRAY_STRUC, - WMITLV_GET_STRUCT_TLVLEN - (wmi_extscan_hotlist_ssid_entry)); - entry->ssid.ssid_len = request->ssids[i].ssid.length; - vos_mem_copy(entry->ssid.ssid, - request->ssids[i].ssid.ssId, - request->ssids[i].ssid.length); - entry->band = request->ssids[i].band; - entry->min_rssi = request->ssids[i].rssi_low; - entry->max_rssi = request->ssids[i].rssi_high; - entry++; - } - cmd->mode = WMI_EXTSCAN_MODE_START; - } else { - cmd->mode = WMI_EXTSCAN_MODE_STOP; - } - - if (wmi_unified_cmd_send - (wma->wmi_handle, wmi_buf, len, - WMI_EXTSCAN_CONFIGURE_HOTLIST_SSID_MONITOR_CMDID)) { - WMA_LOGE("%s: failed to send command", __func__); - wmi_buf_free(wmi_buf); - return VOS_STATUS_E_FAILURE; - } - return VOS_STATUS_SUCCESS; -} - VOS_STATUS wma_get_buf_extscan_change_monitor_cmd(tp_wma_handle wma_handle, tSirExtScanSetSigChangeReqParams *psigchange, wmi_buf_t *buf, int *buf_len) @@ -32598,11 +32384,6 @@ VOS_STATUS wma_mc_process_msg(v_VOID_t *vos_context, vos_msg_t *msg) (tSirExtScanResetBssidHotlistReqParams *)msg->bodyptr); vos_mem_free(msg->bodyptr); break; - case WDA_EXTSCAN_SET_SSID_HOTLIST_REQ: - wma_set_ssid_hotlist(wma_handle, - (struct sir_set_ssid_hotlist_request *)msg->bodyptr); - vos_mem_free(msg->bodyptr); - break; case WDA_EXTSCAN_SET_SIGNF_CHANGE_REQ: wma_extscan_start_change_monitor(wma_handle, (tSirExtScanSetSigChangeReqParams *)msg->bodyptr); diff --git a/CORE/SME/inc/sme_Api.h b/CORE/SME/inc/sme_Api.h index 3a08cb5..0834e5b 100644 --- a/CORE/SME/inc/sme_Api.h +++ b/CORE/SME/inc/sme_Api.h @@ -4137,10 +4137,6 @@ eHalStatus sme_SetBssHotlist (tHalHandle hHal, eHalStatus sme_ResetBssHotlist (tHalHandle hHal, tSirExtScanResetBssidHotlistReqParams *pResetReq); -eHalStatus -sme_set_ssid_hotlist(tHalHandle hal, - struct sir_set_ssid_hotlist_request *request); - /* --------------------------------------------------------------------------- \fn sme_SetSignificantChange \brief SME API to set significant change diff --git a/CORE/SME/src/sme_common/sme_Api.c b/CORE/SME/src/sme_common/sme_Api.c index 4db2b3f..cb1a588 100644 --- a/CORE/SME/src/sme_common/sme_Api.c +++ b/CORE/SME/src/sme_common/sme_Api.c @@ -15966,52 +15966,6 @@ eHalStatus sme_ResetBssHotlist (tHalHandle hHal, return status; } -/** - * sme_set_ssid_hotlist() - Set the SSID hotlist - * @hal: SME handle - * @request: set ssid hotlist request - * - * Return: eHalStatus - */ -eHalStatus -sme_set_ssid_hotlist(tHalHandle hal, - struct sir_set_ssid_hotlist_request *request) -{ - eHalStatus status; - VOS_STATUS vstatus; - tpAniSirGlobal mac = PMAC_STRUCT(hal); - vos_msg_t vos_message; - struct sir_set_ssid_hotlist_request *set_req; - - set_req = vos_mem_malloc(sizeof(*set_req)); - if (!set_req) { - VOS_TRACE(VOS_MODULE_ID_SME, VOS_TRACE_LEVEL_ERROR, - "%s: Not able to allocate memory for WDA_EXTSCAN_SET_SSID_HOTLIST_REQ", - __func__); - return eHAL_STATUS_FAILURE; - } - - *set_req = *request; - status = sme_AcquireGlobalLock(&mac->sme); - if (eHAL_STATUS_SUCCESS == status) { - /* Serialize the req through MC thread */ - vos_message.bodyptr = set_req; - vos_message.type = WDA_EXTSCAN_SET_SSID_HOTLIST_REQ; - vstatus = vos_mq_post_message(VOS_MQ_ID_WDA, &vos_message); - sme_ReleaseGlobalLock(&mac->sme); - if (!VOS_IS_STATUS_SUCCESS(vstatus)) { - vos_mem_free(set_req); - status = eHAL_STATUS_FAILURE; - } - } else { - VOS_TRACE(VOS_MODULE_ID_SME, VOS_TRACE_LEVEL_ERROR, - "%s: sme_AcquireGlobalLock error", __func__); - vos_mem_free(set_req); - status = eHAL_STATUS_FAILURE; - } - return status; -} - /* --------------------------------------------------------------------------- \fn sme_SetSignificantChange \brief SME API to set significant change diff --git a/CORE/SYS/legacy/src/utils/src/macTrace.c b/CORE/SYS/legacy/src/utils/src/macTrace.c index 8a27363..110376f 100644 --- a/CORE/SYS/legacy/src/utils/src/macTrace.c +++ b/CORE/SYS/legacy/src/utils/src/macTrace.c @@ -952,7 +952,6 @@ tANI_U8* macTraceGetWdaMsgString(tANI_U16 wdaMsg) CASE_RETURN_STRING(WDA_EXTSCAN_STOP_REQ); CASE_RETURN_STRING(WDA_EXTSCAN_SET_BSSID_HOTLIST_REQ); CASE_RETURN_STRING(WDA_EXTSCAN_RESET_BSSID_HOTLIST_REQ); - CASE_RETURN_STRING(WDA_EXTSCAN_SET_SSID_HOTLIST_REQ); CASE_RETURN_STRING(WDA_EXTSCAN_SET_SIGNF_CHANGE_REQ); CASE_RETURN_STRING(WDA_EXTSCAN_RESET_SIGNF_CHANGE_REQ); CASE_RETURN_STRING(WDA_EXTSCAN_GET_CACHED_RESULTS_REQ); -- cgit v1.1