Browse Source

qcacmn: Add new API to set ratemask config

Introduce new API to set ratemask configuration value and also send it
to FW

Change-Id: Iba236500a896c6f4893f506511483bde98072368
CRs-Fixed: 2415610
Akshay Kosigi 6 years ago
parent
commit
a178724b30

+ 0 - 1
umac/mlme/vdev_mgr/dispatcher/inc/wlan_vdev_mgr_ucfg_api.h

@@ -98,7 +98,6 @@ enum wlan_mlme_cfg_id {
 	WLAN_MLME_CFG_BCN_TX_RATE,
 	WLAN_MLME_CFG_2G_VHT,
 	WLAN_MLME_CFG_11AX_STUB,
-	WLAN_MLME_CFG_RATEMASK_CAPS,
 	WLAN_MLME_CFG_MAX
 };
 

+ 10 - 0
umac/mlme/vdev_mgr/dispatcher/inc/wlan_vdev_mgr_utils_api.h

@@ -39,6 +39,16 @@
 enum wlan_op_mode
 wlan_util_vdev_get_cdp_txrx_opmode(struct wlan_objmgr_vdev *vdev);
 
+/**
+ * wlan_util_vdev_mlme_set_ratemask_config) – common MLME API to set
+ * ratemask configuration and send it to FW
+ * @vdev_mlme: pointer to vdev_mlme object
+ *
+ * Return: QDF_STATUS - Success or Failure
+ */
+QDF_STATUS
+wlan_util_vdev_mlme_set_ratemask_config(struct vdev_mlme_obj *vdev_mlme);
+
 /**
  * wlan_util_vdev_mlme_set_param() – common MLME API to fill common
  * parameters of vdev_mlme object

+ 17 - 5
umac/mlme/vdev_mgr/dispatcher/src/wlan_vdev_mgr_utils_api.c

@@ -67,6 +67,23 @@ wlan_util_vdev_get_cdp_txrx_opmode(struct wlan_objmgr_vdev *vdev)
 	return cdp_txrx_opmode;
 }
 
+QDF_STATUS
+wlan_util_vdev_mlme_set_ratemask_config(struct vdev_mlme_obj *vdev_mlme)
+{
+	struct config_ratemask_params rm_param = {0};
+
+	if (!vdev_mlme) {
+		mlme_err("VDEV MLME is NULL");
+		return QDF_STATUS_E_FAILURE;
+	}
+
+	vdev_mgr_config_ratemask_update(vdev_mlme, &rm_param);
+
+	return tgt_vdev_mgr_config_ratemask_cmd_send(vdev_mlme, &rm_param);
+}
+
+qdf_export_symbol(wlan_util_vdev_mlme_set_ratemask_config);
+
 QDF_STATUS
 wlan_util_vdev_mlme_set_param(struct vdev_mlme_obj *vdev_mlme,
 			      enum wlan_mlme_cfg_id param_id,
@@ -79,7 +96,6 @@ wlan_util_vdev_mlme_set_param(struct vdev_mlme_obj *vdev_mlme,
 	int is_wmi_cmd = 0;
 	int ret = QDF_STATUS_SUCCESS;
 	struct vdev_set_params param = {0};
-	struct config_ratemask_params rm_param = {0};
 
 	if (!vdev_mlme) {
 		mlme_err("VDEV MLME is NULL");
@@ -300,10 +316,6 @@ wlan_util_vdev_mlme_set_param(struct vdev_mlme_obj *vdev_mlme,
 	case WLAN_MLME_CFG_RATEMASK_LOWER32_2:
 		mlme_mgmt->rate_info.lower32_2 = mlme_cfg.value;
 		break;
-	case WLAN_MLME_CFG_RATEMASK_CAPS:
-		vdev_mgr_config_ratemask_update(vdev_mlme, &rm_param);
-		tgt_vdev_mgr_config_ratemask_cmd_send(vdev_mlme, &rm_param);
-		break;
 	case WLAN_MLME_CFG_BCN_TX_RATE:
 		mlme_mgmt->rate_info.bcn_tx_rate = mlme_cfg.value;
 		is_wmi_cmd = 1;