From 4c6d40f67dfe417e02ad1993964c03917a519206 Mon Sep 17 00:00:00 2001 From: Jeff Johnson Date: Fri, 22 Feb 2019 20:49:56 -0800 Subject: [PATCH] qcacld-3.0: Converge on struct rssi_monitor_param The driver currently defines two different data structures to hold Gateway Update parameters: - legacy struct rssi_monitor_req - unified WMI struct rssi_monitor_req To align with the converged software architecture remove the legacy definition and exclusively use the unified WMI definition. Change-Id: Ia3336b68dac84ce8aeb53ea6d5be8b9f2e0f1736 CRs-Fixed: 2404088 --- core/hdd/src/wlan_hdd_rssi_monitor.c | 8 ++++---- core/mac/inc/sir_api.h | 16 ---------------- core/sme/inc/sme_api.h | 2 +- core/sme/src/common/sme_api.c | 4 ++-- core/wma/inc/wma.h | 14 ++++++++++++-- core/wma/src/wma_main.c | 3 +-- core/wma/src/wma_scan_roam.c | 23 ++--------------------- 7 files changed, 22 insertions(+), 48 deletions(-) diff --git a/core/hdd/src/wlan_hdd_rssi_monitor.c b/core/hdd/src/wlan_hdd_rssi_monitor.c index 4f91f8797b..3c5e189e61 100644 --- a/core/hdd/src/wlan_hdd_rssi_monitor.c +++ b/core/hdd/src/wlan_hdd_rssi_monitor.c @@ -60,7 +60,7 @@ __wlan_hdd_cfg80211_monitor_rssi(struct wiphy *wiphy, struct hdd_adapter *adapter = WLAN_HDD_GET_PRIV_PTR(dev); struct hdd_context *hdd_ctx = wiphy_priv(wiphy); struct nlattr *tb[PARAM_MAX + 1]; - struct rssi_monitor_req req; + struct rssi_monitor_param req; QDF_STATUS status; int ret; uint32_t control; @@ -104,7 +104,7 @@ __wlan_hdd_cfg80211_monitor_rssi(struct wiphy *wiphy, } req.request_id = nla_get_u32(tb[PARAM_REQUEST_ID]); - req.session_id = adapter->vdev_id; + req.vdev_id = adapter->vdev_id; control = nla_get_u32(tb[PARAM_CONTROL]); if (control == QCA_WLAN_RSSI_MONITORING_START) { @@ -136,8 +136,8 @@ __wlan_hdd_cfg80211_monitor_rssi(struct wiphy *wiphy, hdd_err("Invalid control cmd: %d", control); return -EINVAL; } - hdd_debug("Request Id: %u Session_id: %d Control: %d", - req.request_id, req.session_id, req.control); + hdd_debug("Request Id: %u vdev id: %d Control: %d", + req.request_id, req.vdev_id, req.control); mac_handle = hdd_ctx->mac_handle; status = sme_set_rssi_monitoring(mac_handle, &req); diff --git a/core/mac/inc/sir_api.h b/core/mac/inc/sir_api.h index 324c335faa..e599b9492d 100644 --- a/core/mac/inc/sir_api.h +++ b/core/mac/inc/sir_api.h @@ -4380,22 +4380,6 @@ struct sir_guard_time_request { /* Max number of rates allowed in Supported Rates IE */ #define MAX_NUM_SUPPORTED_RATES (8) -/* - * struct rssi_monitor_req - rssi monitoring - * @request_id: request id - * @session_id: session id - * @min_rssi: minimum rssi - * @max_rssi: maximum rssi - * @control: flag to indicate start or stop - */ -struct rssi_monitor_req { - uint32_t request_id; - uint32_t session_id; - int8_t min_rssi; - int8_t max_rssi; - bool control; -}; - /** * struct rssi_breach_event - rssi breached event structure * @request_id: request id diff --git a/core/sme/inc/sme_api.h b/core/sme/inc/sme_api.h index e07f919784..589b731061 100644 --- a/core/sme/inc/sme_api.h +++ b/core/sme/inc/sme_api.h @@ -1399,7 +1399,7 @@ QDF_STATUS sme_disable_uapsd_for_ac(uint8_t sta_id, #ifdef FEATURE_RSSI_MONITOR QDF_STATUS sme_set_rssi_monitoring(mac_handle_t mac_handle, - struct rssi_monitor_req *input); + struct rssi_monitor_param *input); /** * sme_set_rssi_threshold_breached_cb() - Set RSSI threshold breached callback diff --git a/core/sme/src/common/sme_api.c b/core/sme/src/common/sme_api.c index 8b40c65f4e..9c9b3f0503 100644 --- a/core/sme/src/common/sme_api.c +++ b/core/sme/src/common/sme_api.c @@ -11692,12 +11692,12 @@ QDF_STATUS sme_set_chip_pwr_save_fail_cb(mac_handle_t mac_handle, * Return: QDF_STATUS enumeration */ QDF_STATUS sme_set_rssi_monitoring(mac_handle_t mac_handle, - struct rssi_monitor_req *input) + struct rssi_monitor_param *input) { QDF_STATUS status = QDF_STATUS_SUCCESS; struct mac_context *mac = MAC_CONTEXT(mac_handle); struct scheduler_msg message = {0}; - struct rssi_monitor_req *req_msg; + struct rssi_monitor_param *req_msg; SME_ENTER(); req_msg = qdf_mem_malloc(sizeof(*req_msg)); diff --git a/core/wma/inc/wma.h b/core/wma/inc/wma.h index c2a295b333..4fb600d073 100644 --- a/core/wma/inc/wma.h +++ b/core/wma/inc/wma.h @@ -1704,12 +1704,22 @@ void wma_send_flush_logs_to_fw(tp_wma_handle wma_handle); void wma_log_completion_timeout(void *data); #ifdef FEATURE_RSSI_MONITOR +/** + * wma_set_rssi_monitoring() - set rssi monitoring + * @handle: WMA handle + * @req: rssi monitoring request structure + * + * This function takes the incoming @req and sends it down to the + * firmware + * + * Return: QDF_STATUS + */ QDF_STATUS wma_set_rssi_monitoring(tp_wma_handle wma, - struct rssi_monitor_req *req); + struct rssi_monitor_param *req); #else /* FEATURE_RSSI_MONITOR */ static inline QDF_STATUS wma_set_rssi_monitoring(tp_wma_handle wma, - struct rssi_monitor_req *req) + struct rssi_monitor_param *req) { return QDF_STATUS_SUCCESS; } diff --git a/core/wma/src/wma_main.c b/core/wma/src/wma_main.c index 865d94b7cd..48e6d2481f 100644 --- a/core/wma/src/wma_main.c +++ b/core/wma/src/wma_main.c @@ -8739,8 +8739,7 @@ static QDF_STATUS wma_mc_process_msg(struct scheduler_msg *msg) /* Body ptr is NULL here */ break; case WMA_SET_RSSI_MONITOR_REQ: - wma_set_rssi_monitoring(wma_handle, - (struct rssi_monitor_req *)msg->bodyptr); + wma_set_rssi_monitoring(wma_handle, msg->bodyptr); qdf_mem_free(msg->bodyptr); break; case SIR_HAL_PDEV_SET_PCL_TO_FW: diff --git a/core/wma/src/wma_scan_roam.c b/core/wma/src/wma_scan_roam.c index 515ff46499..3667d4e277 100644 --- a/core/wma/src/wma_scan_roam.c +++ b/core/wma/src/wma_scan_roam.c @@ -2932,34 +2932,15 @@ void wma_set_ric_req(tp_wma_handle wma, void *msg, uint8_t is_add_ts) #endif /* WLAN_FEATURE_ROAM_OFFLOAD */ #ifdef FEATURE_RSSI_MONITOR -/** - * wma_set_rssi_monitoring() - set rssi monitoring - * @handle: WMA handle - * @req: rssi monitoring request structure - * - * This function reads the incoming @req and fill in the destination - * WMI structure and send down the rssi monitoring configs down to the firmware - * - * Return: 0 on success; error number otherwise - */ QDF_STATUS wma_set_rssi_monitoring(tp_wma_handle wma, - struct rssi_monitor_req *req) + struct rssi_monitor_param *req) { - struct rssi_monitor_param params = {0}; - if (!wma) { WMA_LOGE("%s: wma handle is NULL", __func__); return QDF_STATUS_E_INVAL; } - params.request_id = req->request_id; - params.vdev_id = req->session_id; - params.min_rssi = req->min_rssi; - params.max_rssi = req->max_rssi; - params.control = req->control; - - return wmi_unified_set_rssi_monitoring_cmd(wma->wmi_handle, - ¶ms); + return wmi_unified_set_rssi_monitoring_cmd(wma->wmi_handle, req); } /**