qcacld-3.0: Set LPI power when safe mode is enabled

i.) Keep rf test mode ini disabled by default due to which
6G security check will be true.

ii.) while calculating TPC power, check safe mode & RF test
mode enabled or not and set power mode to LPI if
safe mode or Rf test mode is enabled.

iii.) During HE ops IE extarct set power type to VLP, if
6 G Hz info is not present in HE ops IE. So that power
type can be VLP in case ap_ctry is non US.
To get safe mode value, a new member is_safe_mode_enabled
is added in mlme private object and is set whenever
WIFI_TEST_CONFIG_6GHZ_SECURITY_TEST_MODE command is triggered
via userspace.

Change-Id: I4fc2a231f8e7d18e68b92af3f381456113668779
CRs-Fixed: 3192967
This commit is contained in:
Sheenam Monga
2022-05-16 18:55:27 +05:30
committed by Madan Koyyalamudi
부모 6f75f6340d
커밋 d933925871
8개의 변경된 파일88개의 추가작업 그리고 11개의 파일을 삭제

파일 보기

@@ -182,9 +182,11 @@ enum debug_packet_log_type {
* rf_test_mode_enabled - Enable rf test mode support
* @Min: 0
* @Max: 1
* @Default: 1
* @Default: 0
*
* This cfg is used to set rf test mode support flag
* by default 6 G Hz security check will be enabled
* with rf test mode as disabled.
*
* Related: None
*
@@ -192,7 +194,7 @@ enum debug_packet_log_type {
*/
#define CFG_RF_TEST_MODE_SUPP_ENABLED CFG_BOOL( \
"rf_test_mode_enabled", \
1, \
0, \
"rf test mode Enable Flag")
#ifdef CONFIG_BAND_6GHZ

파일 보기

@@ -3600,4 +3600,28 @@ QDF_STATUS mlme_save_vdev_max_mcs_idx(struct wlan_objmgr_vdev *vdev,
*/
uint8_t mlme_get_vdev_max_mcs_idx(struct wlan_objmgr_vdev *vdev);
#endif /* WLAN_FEATURE_SON */
/**
* wlan_mlme_set_safe_mode_enable() - set safe_mode_enable flag
* based on value set by user space.
*
* @psoc: psoc context
* @safe_mode_enable: safe mode enabled or not
*
* Return: none
*/
void wlan_mlme_set_safe_mode_enable(struct wlan_objmgr_psoc *psoc,
bool safe_mode_enable);
/**
* wlan_mlme_get_safe_mode_enable() - get safe_mode_enable set by user
* space
*
* @psoc: psoc context
* @safe_mode_enable: safe mode enabled or not
*
* Return: none
*/
void wlan_mlme_get_safe_mode_enable(struct wlan_objmgr_psoc *psoc,
bool *safe_mode_enable);
#endif /* _WLAN_MLME_API_H_ */

파일 보기

@@ -1358,6 +1358,8 @@ struct wlan_user_mcc_quota {
* @tx_retry_multiplier: TX xretry extension parameter
* @mgmt_hw_tx_retry_count: MGMT HW tx retry count for frames
* @relaxed_6ghz_conn_policy: 6GHz relaxed connection policy
* @safe_mode_enable: safe mode to bypass some strict 6 GHz checks for
* connection, bypass strict power levels
*/
struct wlan_mlme_generic {
uint32_t band_capability;
@@ -1411,6 +1413,7 @@ struct wlan_mlme_generic {
#ifdef WLAN_FEATURE_MCC_QUOTA
struct wlan_user_mcc_quota user_mcc_quota;
#endif
bool safe_mode_enable;
};
/*