Explorar o código

qcacld-3.0: Refactor legacy ini items

Refactor the below two ini items to new converged cfg/ini
infrastructure:
"gEnableChangeChannelBandWidth"
"extscan_adaptive_dwell_mode"

"extscan_adaptive_dwell_mode" - move this to scm module
"gEnableChangeChannelBandWidth" - move this to mlme

Change-Id: I1ca6657a95c2cd47057f11ccf23c47347f3fc33b
CRs-Fixed: 2394240
Pragaspathi Thilagaraj %!s(int64=6) %!d(string=hai) anos
pai
achega
656e74a658

+ 2 - 0
mlme/core/src/wlan_mlme_main.c

@@ -359,6 +359,8 @@ static void mlme_init_generic_cfg(struct wlan_objmgr_psoc *psoc,
 		cfg_get(psoc, CFG_ENABLE_BEACON_RECEPTION_STATS);
 	gen->enable_remove_time_stamp_sync_cmd =
 		cfg_get(psoc, CFG_REMOVE_TIME_STAMP_SYNC_CMD);
+	gen->enable_change_channel_bandwidth =
+		cfg_get(psoc, CFG_CHANGE_CHANNEL_BANDWIDTH);
 }
 
 static void mlme_init_edca_ani_cfg(struct wlan_mlme_edca_params *edca_params)

+ 32 - 1
mlme/dispatcher/inc/cfg_mlme_generic.h

@@ -595,6 +595,36 @@
 	0, \
 	"Enable to remove time stamp sync cmd")
 
+/*
+ * <ini>
+ * gEnableChangeChannelBandWidth  Enable/Disable change
+ * channel&bandwidth in the mission mode
+ * @Min: 0
+ * @Max: 1
+ * @Default: 0
+ *
+ * 0  not allow change channel&bandwidth by setMonChan
+ * 1  allow change channel&bandwidth by setMonChan
+ *
+ * Related: None
+ *
+ * Supported Feature: STA
+ *
+ * Usage: External
+ *
+ * </ini>
+ */
+#ifdef FEATURE_MONITOR_MODE_SUPPORT
+#define CFG_CHANGE_CHANNEL_BANDWIDTH_DEFAULT true
+#else
+#define CFG_CHANGE_CHANNEL_BANDWIDTH_DEFAULT false
+#endif
+
+#define CFG_CHANGE_CHANNEL_BANDWIDTH CFG_INI_BOOL( \
+		"gEnableChangeChannelBandWidth", \
+		CFG_CHANGE_CHANNEL_BANDWIDTH_DEFAULT, \
+		"enable change channel bw")
+
 #define CFG_GENERIC_ALL \
 	CFG(CFG_ENABLE_DEBUG_PACKET_LOG) \
 	CFG(CFG_PMF_SA_QUERY_MAX_RETRIES) \
@@ -620,6 +650,7 @@
 	CFG(CFG_DROPPED_PKT_DISCONNECT_THRESHOLD) \
 	CFG(CFG_ITO_REPEAT_COUNT) \
 	CFG(CFG_ENABLE_BEACON_RECEPTION_STATS) \
-	CFG(CFG_REMOVE_TIME_STAMP_SYNC_CMD)
+	CFG(CFG_REMOVE_TIME_STAMP_SYNC_CMD) \
+	CFG(CFG_CHANGE_CHANNEL_BANDWIDTH)
 
 #endif /* __CFG_MLME_GENERIC_H */

+ 10 - 0
mlme/dispatcher/inc/wlan_mlme_api.h

@@ -1975,6 +1975,16 @@ QDF_STATUS wlan_mlme_ibss_power_save_setup(struct wlan_objmgr_psoc *psoc,
 QDF_STATUS
 wlan_mlme_set_11d_enabled(struct wlan_objmgr_psoc *psoc, bool value);
 
+/**
+ * wlan_mlme_is_change_channel_bandwidth_enabled() - get the
+ * enable_change_channel_bandwidth flag
+ * @psoc: psoc context
+ *
+ * Return: true if enabled
+ */
+bool
+wlan_mlme_is_change_channel_bandwidth_enabled(struct wlan_objmgr_psoc *psoc);
+
 /**
  * wlan_mlme_get_sta_miracast_mcc_rest_time() - Get STA/MIRACAST MCC rest time
  *

+ 3 - 0
mlme/dispatcher/inc/wlan_mlme_public_struct.h

@@ -996,6 +996,8 @@ struct wlan_mlme_chainmask {
  * @enabled_11d: enable 11d flag
  * @enable_beacon_reception_stats: enable beacon reception stats
  * @enable_remove_time_stamp_sync_cmd: Enable remove time stamp sync cmd
+ * @enable_change_channel_bandwidth: enable/disable change channel bw in mission
+ * mode
  */
 struct wlan_mlme_generic {
 	enum band_info band_capability;
@@ -1024,6 +1026,7 @@ struct wlan_mlme_generic {
 	bool enable_deauth_to_disassoc_map;
 	bool enable_beacon_reception_stats;
 	bool enable_remove_time_stamp_sync_cmd;
+	bool enable_change_channel_bandwidth;
 };
 
 /*

+ 13 - 0
mlme/dispatcher/inc/wlan_mlme_ucfg_api.h

@@ -2521,6 +2521,19 @@ ucfg_mlme_set_11d_enabled(struct wlan_objmgr_psoc *psoc, bool value)
 	return wlan_mlme_set_11d_enabled(psoc, value);
 }
 
+/**
+ * ucfg_mlme_is_change_channel_bandwidth_enabled() - ucfg api to get the
+ * enable_change_channel_bandwidth flag
+ * @psoc: psoc context
+ *
+ * Return: true if enabled
+ */
+static inline bool
+ucfg_mlme_is_change_channel_bandwidth_enabled(struct wlan_objmgr_psoc *psoc)
+{
+	return wlan_mlme_is_change_channel_bandwidth_enabled(psoc);
+}
+
 /**
  * ucfg_mlme_get_opr_rate_set() - Get operational rate set
  * @psoc: pointer to psoc object

+ 13 - 0
mlme/dispatcher/src/wlan_mlme_api.c

@@ -2387,6 +2387,19 @@ wlan_mlme_set_11d_enabled(struct wlan_objmgr_psoc *psoc, bool value)
 
 	return QDF_STATUS_SUCCESS;
 }
+
+bool
+wlan_mlme_is_change_channel_bandwidth_enabled(struct wlan_objmgr_psoc *psoc)
+{
+	struct wlan_mlme_psoc_obj *mlme_obj;
+
+	mlme_obj = mlme_get_psoc_obj(psoc);
+	if (!mlme_obj)
+		return cfg_default(CFG_CHANGE_CHANNEL_BANDWIDTH);
+
+	return mlme_obj->cfg.gen.enable_change_channel_bandwidth;
+}
+
 QDF_STATUS
 wlan_mlme_cfg_set_vht_chan_width(struct wlan_objmgr_psoc *psoc, uint8_t value)
 {