qcacld-3.0: Apply PMO configures
Since refined PMO configures based on converged cfg component, apply PMO configurations, remove related legacy codes. Change-Id: I2cdf18c1000d8cc923c80c00bf530b2b0c60563e CRs-Fixed: 2322185
This commit is contained in:
@@ -39,6 +39,8 @@
|
|||||||
#define CFG_NAN_ALL
|
#define CFG_NAN_ALL
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include "wlan_pmo_cfg.h"
|
||||||
|
|
||||||
/* Maintain Alphabetic order here while adding components */
|
/* Maintain Alphabetic order here while adding components */
|
||||||
#define CFG_ALL \
|
#define CFG_ALL \
|
||||||
CFG_CONVERGED_ALL \
|
CFG_CONVERGED_ALL \
|
||||||
@@ -46,4 +48,5 @@
|
|||||||
CFG_MLME_ALL \
|
CFG_MLME_ALL \
|
||||||
CFG_NAN_ALL \
|
CFG_NAN_ALL \
|
||||||
CFG_P2P_ALL \
|
CFG_P2P_ALL \
|
||||||
|
CFG_PMO_ALL \
|
||||||
CFG_TDLS_ALL
|
CFG_TDLS_ALL
|
||||||
|
@@ -60,15 +60,9 @@ enum active_apf_mode {
|
|||||||
* struct cds_config_info - Place Holder for cds configuration
|
* struct cds_config_info - Place Holder for cds configuration
|
||||||
* @max_station: Max station supported
|
* @max_station: Max station supported
|
||||||
* @max_bssid: Max Bssid Supported
|
* @max_bssid: Max Bssid Supported
|
||||||
* @powersave_offload_enabled: Indicate if powersave offload is enabled
|
|
||||||
* @sta_maxlimod_dtim: station max listen interval
|
* @sta_maxlimod_dtim: station max listen interval
|
||||||
* @sta_mod_dtim: station mode DTIM
|
|
||||||
* @sta_dynamic_dtim: station dynamic DTIM
|
|
||||||
* @driver_type: Enumeration of Driver Type whether FTM or Mission mode
|
* @driver_type: Enumeration of Driver Type whether FTM or Mission mode
|
||||||
* @wow_enable: Indicate whether wow is enabled or not
|
|
||||||
* currently rest of bits are not used
|
* currently rest of bits are not used
|
||||||
* @ssdp: Indicate ssdp is enabled or not
|
|
||||||
* @enable_mc_list : To Check if Multicast list filtering is enabled in FW
|
|
||||||
* @dfs_phyerr_filter_offload: DFS Phyerror Filtering offload status from ini
|
* @dfs_phyerr_filter_offload: DFS Phyerror Filtering offload status from ini
|
||||||
* Indicates whether support is enabled or not
|
* Indicates whether support is enabled or not
|
||||||
* @ap_disable_intrabss_fwd: pass intra-bss-fwd info to txrx module
|
* @ap_disable_intrabss_fwd: pass intra-bss-fwd info to txrx module
|
||||||
@@ -94,7 +88,6 @@ enum active_apf_mode {
|
|||||||
* @num_dp_rx_threads: number of dp rx threads to be configured
|
* @num_dp_rx_threads: number of dp rx threads to be configured
|
||||||
* @enable_dp_rx_threads: enable dp rx threads
|
* @enable_dp_rx_threads: enable dp rx threads
|
||||||
* @is_lpass_enabled: Indicate whether LPASS is enabled or not
|
* @is_lpass_enabled: Indicate whether LPASS is enabled or not
|
||||||
* @bool apf_packet_filter_enable; Indicate apf filter enabled or not
|
|
||||||
* @tx_chain_mask_cck: Tx chain mask enabled or not
|
* @tx_chain_mask_cck: Tx chain mask enabled or not
|
||||||
* @self_gen_frm_pwr: Self gen from power
|
* @self_gen_frm_pwr: Self gen from power
|
||||||
* @sub_20_channel_width: Sub 20 MHz ch width, ini intersected with fw cap
|
* @sub_20_channel_width: Sub 20 MHz ch width, ini intersected with fw cap
|
||||||
@@ -104,7 +97,6 @@ enum active_apf_mode {
|
|||||||
* mode for uc packets
|
* mode for uc packets
|
||||||
* @active_mc_bc_apf_mode: Setting that determines how APF is applied in
|
* @active_mc_bc_apf_mode: Setting that determines how APF is applied in
|
||||||
* active mode for MC/BC packets
|
* active mode for MC/BC packets
|
||||||
* @auto_power_save_fail_mode: auto detect power save failure mode
|
|
||||||
* @ito_repeat_count: Indicates ito repeated count
|
* @ito_repeat_count: Indicates ito repeated count
|
||||||
* @force_target_assert_enabled: Indicate whether target assert enabled or not
|
* @force_target_assert_enabled: Indicate whether target assert enabled or not
|
||||||
* @bandcapability: Configured band by user
|
* @bandcapability: Configured band by user
|
||||||
@@ -117,14 +109,8 @@ enum active_apf_mode {
|
|||||||
struct cds_config_info {
|
struct cds_config_info {
|
||||||
uint16_t max_station;
|
uint16_t max_station;
|
||||||
uint16_t max_bssid;
|
uint16_t max_bssid;
|
||||||
uint8_t powersave_offload_enabled;
|
|
||||||
uint8_t sta_maxlimod_dtim;
|
uint8_t sta_maxlimod_dtim;
|
||||||
uint8_t sta_mod_dtim;
|
|
||||||
uint8_t sta_dynamic_dtim;
|
|
||||||
enum qdf_driver_type driver_type;
|
enum qdf_driver_type driver_type;
|
||||||
uint8_t wow_enable;
|
|
||||||
bool ssdp;
|
|
||||||
bool enable_mc_list;
|
|
||||||
uint8_t dfs_phyerr_filter_offload;
|
uint8_t dfs_phyerr_filter_offload;
|
||||||
uint8_t ap_disable_intrabss_fwd;
|
uint8_t ap_disable_intrabss_fwd;
|
||||||
uint8_t ap_maxoffload_peers;
|
uint8_t ap_maxoffload_peers;
|
||||||
@@ -153,7 +139,6 @@ struct cds_config_info {
|
|||||||
#ifdef WLAN_FEATURE_LPSS
|
#ifdef WLAN_FEATURE_LPSS
|
||||||
bool is_lpass_enabled;
|
bool is_lpass_enabled;
|
||||||
#endif
|
#endif
|
||||||
bool apf_packet_filter_enable;
|
|
||||||
uint16_t self_gen_frm_pwr;
|
uint16_t self_gen_frm_pwr;
|
||||||
enum cfg_sub_20_channel_width sub_20_channel_width;
|
enum cfg_sub_20_channel_width sub_20_channel_width;
|
||||||
bool flow_steering_enabled;
|
bool flow_steering_enabled;
|
||||||
@@ -163,7 +148,6 @@ struct cds_config_info {
|
|||||||
struct ol_tx_sched_wrr_ac_specs_t ac_specs[TX_WMM_AC_NUM];
|
struct ol_tx_sched_wrr_ac_specs_t ac_specs[TX_WMM_AC_NUM];
|
||||||
enum active_apf_mode active_uc_apf_mode;
|
enum active_apf_mode active_uc_apf_mode;
|
||||||
enum active_apf_mode active_mc_bc_apf_mode;
|
enum active_apf_mode active_mc_bc_apf_mode;
|
||||||
enum pmo_auto_pwr_detect_failure_mode auto_power_save_fail_mode;
|
|
||||||
uint8_t ito_repeat_count;
|
uint8_t ito_repeat_count;
|
||||||
bool force_target_assert_enabled;
|
bool force_target_assert_enabled;
|
||||||
uint8_t bandcapability;
|
uint8_t bandcapability;
|
||||||
|
@@ -3753,21 +3753,6 @@ enum station_keepalive_method {
|
|||||||
#define CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX (WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STAMAX)
|
#define CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX (WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STAMAX)
|
||||||
#define CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT (WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STADEF)
|
#define CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT (WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STADEF)
|
||||||
|
|
||||||
#define CFG_ENABLE_HOST_ARPOFFLOAD_NAME "hostArpOffload"
|
|
||||||
#define CFG_ENABLE_HOST_ARPOFFLOAD_MIN (0)
|
|
||||||
#define CFG_ENABLE_HOST_ARPOFFLOAD_MAX (1)
|
|
||||||
#define CFG_ENABLE_HOST_ARPOFFLOAD_DEFAULT (1)
|
|
||||||
|
|
||||||
#define CFG_ENABLE_HOST_SSDP_NAME "ssdp"
|
|
||||||
#define CFG_ENABLE_HOST_SSDP_MIN (0)
|
|
||||||
#define CFG_ENABLE_HOST_SSDP_MAX (1)
|
|
||||||
#define CFG_ENABLE_HOST_SSDP_DEFAULT (1)
|
|
||||||
|
|
||||||
#define CFG_ENABLE_HOST_NSOFFLOAD_NAME "hostNSOffload"
|
|
||||||
#define CFG_ENABLE_HOST_NSOFFLOAD_MIN (0)
|
|
||||||
#define CFG_ENABLE_HOST_NSOFFLOAD_MAX (1)
|
|
||||||
#define CFG_ENABLE_HOST_NSOFFLOAD_DEFAULT (1)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
* gHwFilterMode - configure hardware filter for DTIM mode
|
* gHwFilterMode - configure hardware filter for DTIM mode
|
||||||
@@ -4675,18 +4660,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define HDD_MULTICAST_FILTER_LIST 0x04
|
#define HDD_MULTICAST_FILTER_LIST 0x04
|
||||||
#define HDD_MULTICAST_FILTER_LIST_CLEAR 0x05
|
#define HDD_MULTICAST_FILTER_LIST_CLEAR 0x05
|
||||||
|
|
||||||
/*
|
|
||||||
* Enable Dynamic DTIM
|
|
||||||
* Options
|
|
||||||
* 0 -Disable DynamicDTIM
|
|
||||||
* 1 to 5 - SLM will switch to DTIM specified here when host suspends and
|
|
||||||
* switch DTIM1 when host resumes
|
|
||||||
*/
|
|
||||||
#define CFG_ENABLE_DYNAMIC_DTIM_NAME "gEnableDynamicDTIM"
|
|
||||||
#define CFG_ENABLE_DYNAMIC_DTIM_MIN (0)
|
|
||||||
#define CFG_ENABLE_DYNAMIC_DTIM_MAX (9)
|
|
||||||
#define CFG_ENABLE_DYNAMIC_DTIM_DEFAULT (0)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
* gConfigVCmodeBitmap - Bitmap for operating voltage corner mode
|
* gConfigVCmodeBitmap - Bitmap for operating voltage corner mode
|
||||||
@@ -5011,15 +4984,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MAX (100)
|
#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MAX (100)
|
||||||
#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_DEFAULT (94)
|
#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_DEFAULT (94)
|
||||||
|
|
||||||
/*
|
|
||||||
* Enable/Disable Modulated DTIM feature
|
|
||||||
* Default: Disable
|
|
||||||
*/
|
|
||||||
#define CFG_ENABLE_MODULATED_DTIM_NAME "gEnableModulatedDTIM"
|
|
||||||
#define CFG_ENABLE_MODULATED_DTIM_MIN (0)
|
|
||||||
#define CFG_ENABLE_MODULATED_DTIM_MAX (5)
|
|
||||||
#define CFG_ENABLE_MODULATED_DTIM_DEFAULT (0)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
* gMCAddrListEnable - Enable/Disable Multicast MAC Address List feature
|
* gMCAddrListEnable - Enable/Disable Multicast MAC Address List feature
|
||||||
@@ -5823,25 +5787,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_ENABLE_MEMORY_DEBUG_DEFAULT (1)
|
#define CFG_ENABLE_MEMORY_DEBUG_DEFAULT (1)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* g_auto_detect_power_failure_mode - auto detect power save failure mode
|
|
||||||
* @Min: PMO_FW_TO_CRASH_ON_PWR_FAILURE
|
|
||||||
* @Max: PMO_AUTO_PWR_FAILURE_DETECT_DISABLE
|
|
||||||
* @Default: PMO_FW_TO_CRASH_ON_PWR_FAILURE
|
|
||||||
*
|
|
||||||
* This ini specifies the behavior of FW in case of
|
|
||||||
* CHIP_POWER_SAVE_FAIL_DETECTED event
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_AUTO_DETECT_POWER_FAIL_MODE_NAME "g_auto_detect_power_failure_mode"
|
|
||||||
#define CFG_AUTO_DETECT_POWER_FAIL_MODE_DEFAULT (PMO_FW_TO_CRASH_ON_PWR_FAILURE)
|
|
||||||
#define CFG_AUTO_DETECT_POWER_FAIL_MODE_MIN (PMO_FW_TO_CRASH_ON_PWR_FAILURE)
|
|
||||||
#define CFG_AUTO_DETECT_POWER_FAIL_MODE_MAX \
|
|
||||||
(PMO_AUTO_PWR_FAILURE_DETECT_DISABLE)
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
* gMaxAmsduNum - Max number of MSDU's in aggregate
|
* gMaxAmsduNum - Max number of MSDU's in aggregate
|
||||||
@@ -6661,38 +6606,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_MAX_MSDUS_PER_RXIND_MIN (4)
|
#define CFG_MAX_MSDUS_PER_RXIND_MIN (4)
|
||||||
#define CFG_MAX_MSDUS_PER_RXIND_MAX (32)
|
#define CFG_MAX_MSDUS_PER_RXIND_MAX (32)
|
||||||
#define CFG_MAX_MSDUS_PER_RXIND_DEFAULT (32)
|
#define CFG_MAX_MSDUS_PER_RXIND_DEFAULT (32)
|
||||||
/*
|
|
||||||
* In static display use case when APPS is in stand alone power save mode enable
|
|
||||||
* active offload mode which helps FW to filter out MC/BC data packets to avoid
|
|
||||||
* APPS wake up and save more power.
|
|
||||||
*
|
|
||||||
* By default enable active mode offload as it helps to save more power in
|
|
||||||
* static display usecase(APPS stand alone power collapse).
|
|
||||||
*
|
|
||||||
* If active mode offload(gActiveModeOffload=1) is enabled then all applicable
|
|
||||||
* data offload/filtering is enabled immediately in FW once config is available
|
|
||||||
* in WLAN driver and FW caches this configuration across suspend/resume
|
|
||||||
*
|
|
||||||
* If active mode offload is disabled(gActiveModeOffload=0) then all applicable
|
|
||||||
* data offload/filtering is enabled during cfg80211 suspend and disabled
|
|
||||||
* during cfg80211 resume
|
|
||||||
*
|
|
||||||
* Active mode offload feature is bydefault enabled for all targets
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define CFG_ACTIVE_MODE_OFFLOAD "gActiveModeOffload"
|
|
||||||
#define CFG_ACTIVE_MODE_OFFLOAD_MIN (0)
|
|
||||||
#define CFG_ACTIVE_MODE_OFFLOAD_MAX (1)
|
|
||||||
#define CFG_ACTIVE_MODE_OFFLOAD_DEFAULT (1)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* 0: Disable APF packet filter
|
|
||||||
* 1: Enable APF packet filter
|
|
||||||
*/
|
|
||||||
#define CFG_APF_PACKET_FILTER_OFFLOAD "gBpfFilterEnable"
|
|
||||||
#define CFG_APF_PACKET_FILTER_OFFLOAD_MIN (0)
|
|
||||||
#define CFG_APF_PACKET_FILTER_OFFLOAD_MAX (1)
|
|
||||||
#define CFG_APF_PACKET_FILTER_OFFLOAD_DEFAULT (1)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* <ini>
|
* <ini>
|
||||||
@@ -7766,47 +7679,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
*/
|
*/
|
||||||
#define CFG_RPS_RX_QUEUE_CPU_MAP_LIST_LEN 30
|
#define CFG_RPS_RX_QUEUE_CPU_MAP_LIST_LEN 30
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_WOW_PULSE
|
|
||||||
/*
|
|
||||||
* Enable/Disable WOW PULSE feature
|
|
||||||
* Set the wakeup pulse which FW use to wake up HOST
|
|
||||||
* Default : Disable
|
|
||||||
*/
|
|
||||||
#define CFG_WOW_PULSE_SUPPORT_NAME "gwow_pulse_support"
|
|
||||||
#define CFG_WOW_PULSE_SUPPORT_MIN (0)
|
|
||||||
#define CFG_WOW_PULSE_SUPPORT_MAX (1)
|
|
||||||
#define CFG_WOW_PULSE_SUPPORT_DEFAULT (CFG_WOW_PULSE_SUPPORT_MIN)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* GPIO PIN for Pulse
|
|
||||||
* Which PIN to send the Pulse
|
|
||||||
*/
|
|
||||||
#define CFG_WOW_PULSE_PIN_NAME "gwow_pulse_pin"
|
|
||||||
#define CFG_WOW_PULSE_PIN_MIN (CFG_SET_TSF_GPIO_PIN_MIN)
|
|
||||||
#define CFG_WOW_PULSE_PIN_MAX (CFG_SET_TSF_GPIO_PIN_MAX)
|
|
||||||
#define CFG_WOW_PULSE_PIN_DEFAULT (35)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Pulse interval low
|
|
||||||
* The interval of low level in the pulse
|
|
||||||
* The value which defined by customer should between 160 and 480
|
|
||||||
*/
|
|
||||||
#define CFG_WOW_PULSE_INTERVAL_LOW_NAME "gwow_pulse_interval_low"
|
|
||||||
#define CFG_WOW_PULSE_INTERVAL_LOW_MIN (160)
|
|
||||||
#define CFG_WOW_PULSE_INTERVAL_LOW_MAX (480)
|
|
||||||
#define CFG_WOW_PULSE_INTERVAL_LOW_DEFAULT (180)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Pulse interval high
|
|
||||||
* The interval of high level in the pulse
|
|
||||||
* The value which defined by customer should between 20 and 40
|
|
||||||
*/
|
|
||||||
#define CFG_WOW_PULSE_INTERVAL_HIGH_NAME "gwow_pulse_interval_high"
|
|
||||||
#define CFG_WOW_PULSE_INTERVAL_HIGH_MIN (20)
|
|
||||||
#define CFG_WOW_PULSE_INTERVAL_HIGH_MAX (40)
|
|
||||||
#define CFG_WOW_PULSE_INTERVAL_HIGH_DEFAULT (20)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Support to start sap in indoor channel
|
* Support to start sap in indoor channel
|
||||||
* Customer can config this item to enable/disable sap in indoor channel
|
* Customer can config this item to enable/disable sap in indoor channel
|
||||||
@@ -8369,329 +8241,6 @@ enum hdd_wext_control {
|
|||||||
#define CFG_ENABLE_RUNTIME_PM_MIN (0)
|
#define CFG_ENABLE_RUNTIME_PM_MIN (0)
|
||||||
#define CFG_ENABLE_RUNTIME_PM_MAX (1)
|
#define CFG_ENABLE_RUNTIME_PM_MAX (1)
|
||||||
#define CFG_ENABLE_RUNTIME_PM_DEFAULT (0)
|
#define CFG_ENABLE_RUNTIME_PM_DEFAULT (0)
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gRuntimePMDelay - Set runtime pm's inactivity timer
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 1
|
|
||||||
* @Default: 0
|
|
||||||
*
|
|
||||||
* This ini is used to set runtime pm's inactivity timer value.
|
|
||||||
* the wlan driver will wait for this number of milliseconds of
|
|
||||||
* inactivity before performing a runtime suspend.
|
|
||||||
*
|
|
||||||
* Related: gRuntimePM
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_RUNTIME_PM_DELAY_NAME "gRuntimePMDelay"
|
|
||||||
#define CFG_RUNTIME_PM_DELAY_MIN (100)
|
|
||||||
#define CFG_RUNTIME_PM_DELAY_MAX (10000)
|
|
||||||
#define CFG_RUNTIME_PM_DELAY_DEFAULT (500)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gEnablePowerSaveOffload - Enable Power Save Offload
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 5
|
|
||||||
* @Default: 0
|
|
||||||
*
|
|
||||||
* This ini is used to set Power Save Offload configuration:
|
|
||||||
* Current values of gEnablePowerSaveOffload:
|
|
||||||
* 0 -> Power save offload is disabled
|
|
||||||
* 1 -> Legacy Power save enabled + Deep sleep Disabled
|
|
||||||
* 2 -> QPower enabled + Deep sleep Disabled
|
|
||||||
* 3 -> Legacy Power save enabled + Deep sleep Enabled
|
|
||||||
* 4 -> QPower enabled + Deep sleep Enabled
|
|
||||||
* 5 -> Duty cycling QPower enabled
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_POWERSAVE_OFFLOAD_NAME "gEnablePowerSaveOffload"
|
|
||||||
#define CFG_POWERSAVE_OFFLOAD_MIN (0)
|
|
||||||
#define CFG_POWERSAVE_OFFLOAD_MAX (PS_DUTY_CYCLING_QPOWER)
|
|
||||||
#define CFG_POWERSAVE_OFFLOAD_DEFAULT (CFG_POWERSAVE_OFFLOAD_MIN)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gEnableWoW - Enable/Disable WoW
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 3
|
|
||||||
* @Default: 3
|
|
||||||
*
|
|
||||||
* This ini is used to enable/disable WoW. Configurations are as follows:
|
|
||||||
* 0 - Disable both magic pattern match and pattern byte match.
|
|
||||||
* 1 - Enable magic pattern match on all interfaces.
|
|
||||||
* 2 - Enable pattern byte match on all interfaces.
|
|
||||||
* 3 - Enable both magic patter and pattern byte match on all interfaces.
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_WOW_STATUS_NAME "gEnableWoW"
|
|
||||||
#define CFG_WOW_ENABLE_MIN (0)
|
|
||||||
#define CFG_WOW_ENABLE_MAX (3)
|
|
||||||
#define CFG_WOW_STATUS_DEFAULT (3)
|
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_EXTWOW_SUPPORT
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWoWgotoSuspend - Enable/Disable Extended WoW
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 1
|
|
||||||
* @Default: 1
|
|
||||||
*
|
|
||||||
* This ini is used to enable/disable Extended WoW.
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_GO_TO_SUSPEND "gExtWoWgotoSuspend"
|
|
||||||
#define CFG_EXTWOW_GO_TO_SUSPEND_MIN (0)
|
|
||||||
#define CFG_EXTWOW_GO_TO_SUSPEND_MAX (1)
|
|
||||||
#define CFG_EXTWOW_GO_TO_SUSPEND_DEFAULT (1)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWowApp1WakeupPinNumber - Set wakeup1 PIN number
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 255
|
|
||||||
* @Default: 12
|
|
||||||
*
|
|
||||||
* This ini is used to set EXT WOW APP1 wakeup PIN number
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER "gExtWowApp1WakeupPinNumber"
|
|
||||||
#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_MIN (0)
|
|
||||||
#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_MAX (255)
|
|
||||||
#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_DEFAULT (12)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWowApp2WakeupPinNumber - Set wakeup2 PIN number
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 255
|
|
||||||
* @Default: 16
|
|
||||||
*
|
|
||||||
* This ini is used to set EXT WOW APP2 wakeup PIN number
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER "gExtWowApp2WakeupPinNumber"
|
|
||||||
#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_MIN (0)
|
|
||||||
#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_MAX (255)
|
|
||||||
#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_DEFAULT (16)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWoWApp2KAInitPingInterval - Set Keep Alive Init Ping Interval
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 0xffffffff
|
|
||||||
* @Default: 240
|
|
||||||
*
|
|
||||||
* This ini is used to set Keep Alive Init Ping Interval for EXT WOW
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_KA_INIT_PING_INTERVAL "gExtWoWApp2KAInitPingInterval"
|
|
||||||
#define CFG_EXTWOW_KA_INIT_PING_INTERVAL_MIN (0)
|
|
||||||
#define CFG_EXTWOW_KA_INIT_PING_INTERVAL_MAX (0xffffffff)
|
|
||||||
#define CFG_EXTWOW_KA_INIT_PING_INTERVAL_DEFAULT (240)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWoWApp2KAMinPingInterval - Set Keep Alive Minimum Ping Interval
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 0xffffffff
|
|
||||||
* @Default: 240
|
|
||||||
*
|
|
||||||
* This ini is used to set Keep Alive Minimum Ping Interval for EXT WOW
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_KA_MIN_PING_INTERVAL "gExtWoWApp2KAMinPingInterval"
|
|
||||||
#define CFG_EXTWOW_KA_MIN_PING_INTERVAL_MIN (0)
|
|
||||||
#define CFG_EXTWOW_KA_MIN_PING_INTERVAL_MAX (0xffffffff)
|
|
||||||
#define CFG_EXTWOW_KA_MIN_PING_INTERVAL_DEFAULT (240)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWoWApp2KAMaxPingInterval - Set Keep Alive Maximum Ping Interval
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 0xffffffff
|
|
||||||
* @Default: 1280
|
|
||||||
*
|
|
||||||
* This ini is used to set Keep Alive Maximum Ping Interval for EXT WOW
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_KA_MAX_PING_INTERVAL "gExtWoWApp2KAMaxPingInterval"
|
|
||||||
#define CFG_EXTWOW_KA_MAX_PING_INTERVAL_MIN (0)
|
|
||||||
#define CFG_EXTWOW_KA_MAX_PING_INTERVAL_MAX (0xffffffff)
|
|
||||||
#define CFG_EXTWOW_KA_MAX_PING_INTERVAL_DEFAULT (1280)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWoWApp2KAIncPingInterval - Set Keep Alive increment of Ping Interval
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 0xffffffff
|
|
||||||
* @Default: 4
|
|
||||||
*
|
|
||||||
* This ini is used to set Keep Alive increment of Ping Interval for EXT WOW
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_KA_INC_PING_INTERVAL "gExtWoWApp2KAIncPingInterval"
|
|
||||||
#define CFG_EXTWOW_KA_INC_PING_INTERVAL_MIN (0)
|
|
||||||
#define CFG_EXTWOW_KA_INC_PING_INTERVAL_MAX (0xffffffff)
|
|
||||||
#define CFG_EXTWOW_KA_INC_PING_INTERVAL_DEFAULT (4)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWoWApp2KAIncPingInterval - Set TCP source port
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 65535
|
|
||||||
* @Default: 5000
|
|
||||||
*
|
|
||||||
* This ini is used to set TCP source port when EXT WOW is enabled
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_TCP_SRC_PORT "gExtWoWApp2TcpSrcPort"
|
|
||||||
#define CFG_EXTWOW_TCP_SRC_PORT_MIN (0)
|
|
||||||
#define CFG_EXTWOW_TCP_SRC_PORT_MAX (65535)
|
|
||||||
#define CFG_EXTWOW_TCP_SRC_PORT_DEFAULT (5000)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWoWApp2TcpDstPort - Set TCP Destination port
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 65535
|
|
||||||
* @Default: 5001
|
|
||||||
*
|
|
||||||
* This ini is used to set TCP Destination port when EXT WOW is enabled
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_TCP_DST_PORT "gExtWoWApp2TcpDstPort"
|
|
||||||
#define CFG_EXTWOW_TCP_DST_PORT_MIN (0)
|
|
||||||
#define CFG_EXTWOW_TCP_DST_PORT_MAX (65535)
|
|
||||||
#define CFG_EXTWOW_TCP_DST_PORT_DEFAULT (5001)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWoWApp2TcpTxTimeout - Set TCP tx timeout
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 0xffffffff
|
|
||||||
* @Default: 200
|
|
||||||
*
|
|
||||||
* This ini is used to set TCP Tx timeout when EXT WOW is enabled
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_TCP_TX_TIMEOUT "gExtWoWApp2TcpTxTimeout"
|
|
||||||
#define CFG_EXTWOW_TCP_TX_TIMEOUT_MIN (0)
|
|
||||||
#define CFG_EXTWOW_TCP_TX_TIMEOUT_MAX (0xffffffff)
|
|
||||||
#define CFG_EXTWOW_TCP_TX_TIMEOUT_DEFAULT (200)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* <ini>
|
|
||||||
* gExtWoWApp2TcpRxTimeout - Set TCP rx timeout
|
|
||||||
* @Min: 0
|
|
||||||
* @Max: 0xffffffff
|
|
||||||
* @Default: 200
|
|
||||||
*
|
|
||||||
* This ini is used to set TCP Rx timeout when EXT WOW is enabled
|
|
||||||
*
|
|
||||||
* Related: None
|
|
||||||
*
|
|
||||||
* Supported Feature: Power Save
|
|
||||||
*
|
|
||||||
* Usage: External
|
|
||||||
*
|
|
||||||
* </ini>
|
|
||||||
*/
|
|
||||||
#define CFG_EXTWOW_TCP_RX_TIMEOUT "gExtWoWApp2TcpRxTimeout"
|
|
||||||
#define CFG_EXTWOW_TCP_RX_TIMEOUT_MIN (0)
|
|
||||||
#define CFG_EXTWOW_TCP_RX_TIMEOUT_MAX (0xffffffff)
|
|
||||||
#define CFG_EXTWOW_TCP_RX_TIMEOUT_DEFAULT (200)
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -10493,8 +10042,6 @@ struct hdd_config {
|
|||||||
/* In units of milliseconds */
|
/* In units of milliseconds */
|
||||||
uint32_t idle_time_conc;
|
uint32_t idle_time_conc;
|
||||||
|
|
||||||
uint8_t nMaxPsPoll;
|
|
||||||
|
|
||||||
uint8_t nRssiFilterPeriod;
|
uint8_t nRssiFilterPeriod;
|
||||||
uint8_t fMaxLIModulatedDTIM;
|
uint8_t fMaxLIModulatedDTIM;
|
||||||
|
|
||||||
@@ -10559,16 +10106,8 @@ struct hdd_config {
|
|||||||
|
|
||||||
char enableConcurrentSTA[CFG_CONCURRENT_IFACE_MAX_LEN];
|
char enableConcurrentSTA[CFG_CONCURRENT_IFACE_MAX_LEN];
|
||||||
|
|
||||||
/* Control for Replay counetr. value 1 means
|
|
||||||
* single replay counter for all TID
|
|
||||||
*/
|
|
||||||
bool fhostArpOffload;
|
|
||||||
enum pmo_hw_filter_mode hw_filter_mode_bitmap;
|
|
||||||
bool ssdp;
|
|
||||||
|
|
||||||
#ifdef FEATURE_RUNTIME_PM
|
#ifdef FEATURE_RUNTIME_PM
|
||||||
bool runtime_pm;
|
bool runtime_pm;
|
||||||
uint32_t runtime_pm_delay;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef FEATURE_WLAN_RA_FILTERING
|
#ifdef FEATURE_WLAN_RA_FILTERING
|
||||||
@@ -10578,7 +10117,6 @@ struct hdd_config {
|
|||||||
#ifdef FEATURE_WLAN_SCAN_PNO
|
#ifdef FEATURE_WLAN_SCAN_PNO
|
||||||
bool PnoOffload;
|
bool PnoOffload;
|
||||||
#endif
|
#endif
|
||||||
bool fhostNSOffload;
|
|
||||||
bool burstSizeDefinition;
|
bool burstSizeDefinition;
|
||||||
uint8_t tsInfoAckPolicy;
|
uint8_t tsInfoAckPolicy;
|
||||||
|
|
||||||
@@ -10617,7 +10155,6 @@ struct hdd_config {
|
|||||||
uint8_t enableBypass11d;
|
uint8_t enableBypass11d;
|
||||||
uint8_t enableDFSChnlScan;
|
uint8_t enableDFSChnlScan;
|
||||||
uint8_t enable_dfs_pno_chnl_scan;
|
uint8_t enable_dfs_pno_chnl_scan;
|
||||||
uint8_t enableDynamicDTIM;
|
|
||||||
uint8_t ShortGI40MhzEnable;
|
uint8_t ShortGI40MhzEnable;
|
||||||
enum hdd_link_speed_rpt_type reportMaxLinkSpeed;
|
enum hdd_link_speed_rpt_type reportMaxLinkSpeed;
|
||||||
int32_t linkSpeedRssiHigh;
|
int32_t linkSpeedRssiHigh;
|
||||||
@@ -10683,8 +10220,6 @@ struct hdd_config {
|
|||||||
uint8_t enableAmpduPs;
|
uint8_t enableAmpduPs;
|
||||||
uint8_t enableHtSmps;
|
uint8_t enableHtSmps;
|
||||||
uint8_t htSmps;
|
uint8_t htSmps;
|
||||||
uint8_t enableModulatedDTIM;
|
|
||||||
uint32_t fEnableMCAddrList;
|
|
||||||
bool enableFirstScan2GOnly;
|
bool enableFirstScan2GOnly;
|
||||||
bool enableRxSTBC;
|
bool enableRxSTBC;
|
||||||
bool enableTxSTBC;
|
bool enableTxSTBC;
|
||||||
@@ -10721,7 +10256,6 @@ struct hdd_config {
|
|||||||
uint32_t ibssPs1RxChainInAtimEnable;
|
uint32_t ibssPs1RxChainInAtimEnable;
|
||||||
|
|
||||||
bool enable_ip_tcp_udp_checksum_offload;
|
bool enable_ip_tcp_udp_checksum_offload;
|
||||||
uint8_t enablePowersaveOffload;
|
|
||||||
bool enablefwprint;
|
bool enablefwprint;
|
||||||
uint8_t enable_fw_log;
|
uint8_t enable_fw_log;
|
||||||
uint8_t fVhtAmpduLenExponent;
|
uint8_t fVhtAmpduLenExponent;
|
||||||
@@ -10738,7 +10272,6 @@ struct hdd_config {
|
|||||||
#ifdef FEATURE_WLAN_AUTO_SHUTDOWN
|
#ifdef FEATURE_WLAN_AUTO_SHUTDOWN
|
||||||
uint32_t WlanAutoShutdown;
|
uint32_t WlanAutoShutdown;
|
||||||
#endif
|
#endif
|
||||||
uint8_t wowEnable;
|
|
||||||
uint8_t disableDFSChSwitch;
|
uint8_t disableDFSChSwitch;
|
||||||
uint8_t enableDFSMasterCap;
|
uint8_t enableDFSMasterCap;
|
||||||
uint32_t TxPower2g;
|
uint32_t TxPower2g;
|
||||||
@@ -10831,19 +10364,6 @@ struct hdd_config {
|
|||||||
|
|
||||||
bool enable_sap_suspend;
|
bool enable_sap_suspend;
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_EXTWOW_SUPPORT
|
|
||||||
uint8_t extWowGotoSuspend;
|
|
||||||
uint8_t extWowApp1WakeupPinNumber;
|
|
||||||
uint8_t extWowApp2WakeupPinNumber;
|
|
||||||
uint32_t extWowApp2KAInitPingInterval;
|
|
||||||
uint32_t extWowApp2KAMinPingInterval;
|
|
||||||
uint32_t extWowApp2KAMaxPingInterval;
|
|
||||||
uint32_t extWowApp2KAIncPingInterval;
|
|
||||||
uint16_t extWowApp2TcpSrcPort;
|
|
||||||
uint16_t extWowApp2TcpDstPort;
|
|
||||||
uint32_t extWowApp2TcpTxTimeout;
|
|
||||||
uint32_t extWowApp2TcpRxTimeout;
|
|
||||||
#endif
|
|
||||||
bool gEnableDeauthToDisassocMap;
|
bool gEnableDeauthToDisassocMap;
|
||||||
#ifdef DHCP_SERVER_OFFLOAD
|
#ifdef DHCP_SERVER_OFFLOAD
|
||||||
bool enableDHCPServerOffload;
|
bool enableDHCPServerOffload;
|
||||||
@@ -10872,8 +10392,6 @@ struct hdd_config {
|
|||||||
bool gro_enable;
|
bool gro_enable;
|
||||||
bool flow_steering_enable;
|
bool flow_steering_enable;
|
||||||
uint8_t max_msdus_per_rxinorderind;
|
uint8_t max_msdus_per_rxinorderind;
|
||||||
bool active_mode_offload;
|
|
||||||
bool apf_packet_filter_enable;
|
|
||||||
/* parameter for defer timer for enabling TDLS on p2p listen */
|
/* parameter for defer timer for enabling TDLS on p2p listen */
|
||||||
uint32_t fine_time_meas_cap;
|
uint32_t fine_time_meas_cap;
|
||||||
uint8_t max_scan_count;
|
uint8_t max_scan_count;
|
||||||
@@ -10981,12 +10499,6 @@ struct hdd_config {
|
|||||||
uint32_t rx_wakelock_timeout;
|
uint32_t rx_wakelock_timeout;
|
||||||
uint32_t max_sched_scan_plan_interval;
|
uint32_t max_sched_scan_plan_interval;
|
||||||
uint32_t max_sched_scan_plan_iterations;
|
uint32_t max_sched_scan_plan_iterations;
|
||||||
#ifdef WLAN_FEATURE_WOW_PULSE
|
|
||||||
bool wow_pulse_support;
|
|
||||||
uint8_t wow_pulse_pin;
|
|
||||||
uint16_t wow_pulse_interval_high;
|
|
||||||
uint16_t wow_pulse_interval_low;
|
|
||||||
#endif
|
|
||||||
enum hdd_wext_control private_wext_control;
|
enum hdd_wext_control private_wext_control;
|
||||||
bool sap_internal_restart;
|
bool sap_internal_restart;
|
||||||
enum restart_beaconing_on_ch_avoid_rule
|
enum restart_beaconing_on_ch_avoid_rule
|
||||||
@@ -11024,7 +10536,6 @@ struct hdd_config {
|
|||||||
bool is_force_1x1;
|
bool is_force_1x1;
|
||||||
uint8_t enable_rts_sifsbursting;
|
uint8_t enable_rts_sifsbursting;
|
||||||
uint8_t max_mpdus_inampdu;
|
uint8_t max_mpdus_inampdu;
|
||||||
enum pmo_auto_pwr_detect_failure_mode auto_pwr_save_fail_mode;
|
|
||||||
uint8_t ito_repeat_count;
|
uint8_t ito_repeat_count;
|
||||||
bool enable_11d_in_world_mode;
|
bool enable_11d_in_world_mode;
|
||||||
/* 5G preference parameters for boosting RSSI */
|
/* 5G preference parameters for boosting RSSI */
|
||||||
@@ -11049,9 +10560,6 @@ struct hdd_config {
|
|||||||
uint32_t wlm_latency_flags_moderate;
|
uint32_t wlm_latency_flags_moderate;
|
||||||
uint32_t wlm_latency_flags_low;
|
uint32_t wlm_latency_flags_low;
|
||||||
uint32_t wlm_latency_flags_ultralow;
|
uint32_t wlm_latency_flags_ultralow;
|
||||||
#ifdef WLAN_FEATURE_PACKET_FILTERING
|
|
||||||
uint8_t packet_filters_bitmap;
|
|
||||||
#endif
|
|
||||||
uint8_t enable_phy_reg_retention;
|
uint8_t enable_phy_reg_retention;
|
||||||
uint8_t dfs_beacon_tx_enhanced;
|
uint8_t dfs_beacon_tx_enhanced;
|
||||||
uint32_t btm_offload_config;
|
uint32_t btm_offload_config;
|
||||||
|
@@ -1975,7 +1975,6 @@ struct hdd_context {
|
|||||||
enum twt_status twt_state;
|
enum twt_status twt_state;
|
||||||
#endif
|
#endif
|
||||||
#ifdef FEATURE_WLAN_APF
|
#ifdef FEATURE_WLAN_APF
|
||||||
bool apf_supported;
|
|
||||||
uint32_t apf_version;
|
uint32_t apf_version;
|
||||||
bool apf_enabled_v2;
|
bool apf_enabled_v2;
|
||||||
#endif
|
#endif
|
||||||
|
@@ -637,7 +637,7 @@ __wlan_hdd_cfg80211_apf_offload(struct wiphy *wiphy,
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!hdd_ctx->apf_supported) {
|
if (!ucfg_pmo_is_apf_enabled(hdd_ctx->psoc)) {
|
||||||
hdd_err("APF is not supported or disabled through INI");
|
hdd_err("APF is not supported or disabled through INI");
|
||||||
return -ENOTSUPP;
|
return -ENOTSUPP;
|
||||||
}
|
}
|
||||||
|
@@ -726,13 +726,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_IDLE_TIME_MIN,
|
CFG_IDLE_TIME_MIN,
|
||||||
CFG_IDLE_TIME_MAX),
|
CFG_IDLE_TIME_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_MAX_PS_POLL_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, nMaxPsPoll,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_MAX_PS_POLL_DEFAULT,
|
|
||||||
CFG_MAX_PS_POLL_MIN,
|
|
||||||
CFG_MAX_PS_POLL_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_MAX_TX_POWER_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_MAX_TX_POWER_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, nTxPowerCap,
|
struct hdd_config, nTxPowerCap,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -1348,20 +1341,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_QOS_WMM_BURST_SIZE_DEFN_MIN,
|
CFG_QOS_WMM_BURST_SIZE_DEFN_MIN,
|
||||||
CFG_QOS_WMM_BURST_SIZE_DEFN_MAX),
|
CFG_QOS_WMM_BURST_SIZE_DEFN_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_HOST_ARPOFFLOAD_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, fhostArpOffload,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_HOST_ARPOFFLOAD_DEFAULT,
|
|
||||||
CFG_ENABLE_HOST_ARPOFFLOAD_MIN,
|
|
||||||
CFG_ENABLE_HOST_ARPOFFLOAD_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_HW_FILTER_MODE_BITMAP_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, hw_filter_mode_bitmap,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_HW_FILTER_MODE_BITMAP_DEFAULT,
|
|
||||||
CFG_HW_FILTER_MODE_BITMAP_MIN,
|
|
||||||
CFG_HW_FILTER_MODE_BITMAP_MAX),
|
|
||||||
|
|
||||||
#ifdef FEATURE_WLAN_RA_FILTERING
|
#ifdef FEATURE_WLAN_RA_FILTERING
|
||||||
REG_VARIABLE(CFG_RA_FILTER_ENABLE_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_RA_FILTER_ENABLE_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, IsRArateLimitEnabled,
|
struct hdd_config, IsRArateLimitEnabled,
|
||||||
@@ -1378,13 +1357,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_RA_RATE_LIMIT_INTERVAL_MAX),
|
CFG_RA_RATE_LIMIT_INTERVAL_MAX),
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_HOST_SSDP_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, ssdp,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_HOST_SSDP_DEFAULT,
|
|
||||||
CFG_ENABLE_HOST_SSDP_MIN,
|
|
||||||
CFG_ENABLE_HOST_SSDP_MAX),
|
|
||||||
|
|
||||||
#ifdef FEATURE_RUNTIME_PM
|
#ifdef FEATURE_RUNTIME_PM
|
||||||
REG_VARIABLE(CFG_ENABLE_RUNTIME_PM, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_ENABLE_RUNTIME_PM, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, runtime_pm,
|
struct hdd_config, runtime_pm,
|
||||||
@@ -1392,23 +1364,8 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_ENABLE_RUNTIME_PM_DEFAULT,
|
CFG_ENABLE_RUNTIME_PM_DEFAULT,
|
||||||
CFG_ENABLE_RUNTIME_PM_MIN,
|
CFG_ENABLE_RUNTIME_PM_MIN,
|
||||||
CFG_ENABLE_RUNTIME_PM_MAX),
|
CFG_ENABLE_RUNTIME_PM_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_RUNTIME_PM_DELAY_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, runtime_pm_delay,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_RUNTIME_PM_DELAY_DEFAULT,
|
|
||||||
CFG_RUNTIME_PM_DELAY_MIN,
|
|
||||||
CFG_RUNTIME_PM_DELAY_MAX),
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_HOST_NSOFFLOAD_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, fhostNSOffload,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_HOST_NSOFFLOAD_DEFAULT,
|
|
||||||
CFG_ENABLE_HOST_NSOFFLOAD_MIN,
|
|
||||||
CFG_ENABLE_HOST_NSOFFLOAD_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_QOS_WMM_TS_INFO_ACK_POLICY_NAME, WLAN_PARAM_HexInteger,
|
REG_VARIABLE(CFG_QOS_WMM_TS_INFO_ACK_POLICY_NAME, WLAN_PARAM_HexInteger,
|
||||||
struct hdd_config, tsInfoAckPolicy,
|
struct hdd_config, tsInfoAckPolicy,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -1629,13 +1586,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_ENABLE_DFS_PNO_CHNL_SCAN_MIN,
|
CFG_ENABLE_DFS_PNO_CHNL_SCAN_MIN,
|
||||||
CFG_ENABLE_DFS_PNO_CHNL_SCAN_MAX),
|
CFG_ENABLE_DFS_PNO_CHNL_SCAN_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_DYNAMIC_DTIM_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, enableDynamicDTIM,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_DYNAMIC_DTIM_DEFAULT,
|
|
||||||
CFG_ENABLE_DYNAMIC_DTIM_MIN,
|
|
||||||
CFG_ENABLE_DYNAMIC_DTIM_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_SHORT_GI_40MHZ_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_SHORT_GI_40MHZ_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, ShortGI40MhzEnable,
|
struct hdd_config, ShortGI40MhzEnable,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -1771,20 +1721,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MIN,
|
CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MIN,
|
||||||
CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MAX),
|
CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_MODULATED_DTIM_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, enableModulatedDTIM,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_MODULATED_DTIM_DEFAULT,
|
|
||||||
CFG_ENABLE_MODULATED_DTIM_MIN,
|
|
||||||
CFG_ENABLE_MODULATED_DTIM_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_MC_ADDR_LIST_ENABLE_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, fEnableMCAddrList,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_MC_ADDR_LIST_ENABLE_DEFAULT,
|
|
||||||
CFG_MC_ADDR_LIST_ENABLE_MIN,
|
|
||||||
CFG_MC_ADDR_LIST_ENABLE_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_VHT_CHANNEL_WIDTH, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_VHT_CHANNEL_WIDTH, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, vhtChannelWidth,
|
struct hdd_config, vhtChannelWidth,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
|
||||||
@@ -2134,13 +2070,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_DISABLE,
|
CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_DISABLE,
|
||||||
CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_ENABLE),
|
CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_ENABLE),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_POWERSAVE_OFFLOAD_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, enablePowersaveOffload,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
|
|
||||||
CFG_POWERSAVE_OFFLOAD_DEFAULT,
|
|
||||||
CFG_POWERSAVE_OFFLOAD_MIN,
|
|
||||||
CFG_POWERSAVE_OFFLOAD_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ENABLE_FW_UART_PRINT_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_ENABLE_FW_UART_PRINT_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, enablefwprint,
|
struct hdd_config, enablefwprint,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -2206,13 +2135,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_VHT_MPDU_LEN_MIN,
|
CFG_VHT_MPDU_LEN_MIN,
|
||||||
CFG_VHT_MPDU_LEN_MAX),
|
CFG_VHT_MPDU_LEN_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_WOW_STATUS_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, wowEnable,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_WOW_STATUS_DEFAULT,
|
|
||||||
CFG_WOW_ENABLE_MIN,
|
|
||||||
CFG_WOW_ENABLE_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_COALESING_IN_IBSS_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_COALESING_IN_IBSS_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, isCoalesingInIBSSAllowed,
|
struct hdd_config, isCoalesingInIBSSAllowed,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -2676,84 +2598,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_ENABLE_SAP_SUSPEND_MIN,
|
CFG_ENABLE_SAP_SUSPEND_MIN,
|
||||||
CFG_ENABLE_SAP_SUSPEND_MAX),
|
CFG_ENABLE_SAP_SUSPEND_MAX),
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_EXTWOW_SUPPORT
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_GO_TO_SUSPEND, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowGotoSuspend,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_GO_TO_SUSPEND_DEFAULT,
|
|
||||||
CFG_EXTWOW_GO_TO_SUSPEND_MIN,
|
|
||||||
CFG_EXTWOW_GO_TO_SUSPEND_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_APP1_WAKE_PIN_NUMBER, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowApp1WakeupPinNumber,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_DEFAULT,
|
|
||||||
CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_MIN,
|
|
||||||
CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_APP2_WAKE_PIN_NUMBER, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowApp2WakeupPinNumber,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_DEFAULT,
|
|
||||||
CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_MIN,
|
|
||||||
CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_KA_INIT_PING_INTERVAL, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowApp2KAInitPingInterval,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_KA_INIT_PING_INTERVAL_DEFAULT,
|
|
||||||
CFG_EXTWOW_KA_INIT_PING_INTERVAL_MIN,
|
|
||||||
CFG_EXTWOW_KA_INIT_PING_INTERVAL_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_KA_MIN_PING_INTERVAL, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowApp2KAMinPingInterval,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_KA_MIN_PING_INTERVAL_DEFAULT,
|
|
||||||
CFG_EXTWOW_KA_MIN_PING_INTERVAL_MIN,
|
|
||||||
CFG_EXTWOW_KA_MIN_PING_INTERVAL_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_KA_MAX_PING_INTERVAL, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowApp2KAMaxPingInterval,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_KA_MAX_PING_INTERVAL_DEFAULT,
|
|
||||||
CFG_EXTWOW_KA_MAX_PING_INTERVAL_MIN,
|
|
||||||
CFG_EXTWOW_KA_MAX_PING_INTERVAL_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_KA_INC_PING_INTERVAL, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowApp2KAIncPingInterval,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_KA_INC_PING_INTERVAL_DEFAULT,
|
|
||||||
CFG_EXTWOW_KA_INC_PING_INTERVAL_MIN,
|
|
||||||
CFG_EXTWOW_KA_INC_PING_INTERVAL_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_TCP_SRC_PORT, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowApp2TcpSrcPort,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_TCP_SRC_PORT_DEFAULT,
|
|
||||||
CFG_EXTWOW_TCP_SRC_PORT_MIN,
|
|
||||||
CFG_EXTWOW_TCP_SRC_PORT_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_TCP_DST_PORT, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowApp2TcpDstPort,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_TCP_DST_PORT_DEFAULT,
|
|
||||||
CFG_EXTWOW_TCP_DST_PORT_MIN,
|
|
||||||
CFG_EXTWOW_TCP_DST_PORT_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_TCP_TX_TIMEOUT, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowApp2TcpTxTimeout,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_TCP_TX_TIMEOUT_DEFAULT,
|
|
||||||
CFG_EXTWOW_TCP_TX_TIMEOUT_MIN,
|
|
||||||
CFG_EXTWOW_TCP_TX_TIMEOUT_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_EXTWOW_TCP_RX_TIMEOUT, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, extWowApp2TcpRxTimeout,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_EXTWOW_TCP_RX_TIMEOUT_DEFAULT,
|
|
||||||
CFG_EXTWOW_TCP_RX_TIMEOUT_MIN,
|
|
||||||
CFG_EXTWOW_TCP_RX_TIMEOUT_MAX),
|
|
||||||
#endif
|
|
||||||
REG_VARIABLE(CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, gEnableDeauthToDisassocMap,
|
struct hdd_config, gEnableDeauthToDisassocMap,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -2912,13 +2756,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_GRO_ENABLED_MIN,
|
CFG_GRO_ENABLED_MIN,
|
||||||
CFG_GRO_ENABLED_MAX),
|
CFG_GRO_ENABLED_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_APF_PACKET_FILTER_OFFLOAD, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, apf_packet_filter_enable,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_APF_PACKET_FILTER_OFFLOAD_DEFAULT,
|
|
||||||
CFG_APF_PACKET_FILTER_OFFLOAD_MIN,
|
|
||||||
CFG_APF_PACKET_FILTER_OFFLOAD_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_FLOW_STEERING_ENABLED_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_FLOW_STEERING_ENABLED_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, flow_steering_enable,
|
struct hdd_config, flow_steering_enable,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -2933,13 +2770,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_MAX_MSDUS_PER_RXIND_MIN,
|
CFG_MAX_MSDUS_PER_RXIND_MIN,
|
||||||
CFG_MAX_MSDUS_PER_RXIND_MAX),
|
CFG_MAX_MSDUS_PER_RXIND_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ACTIVE_MODE_OFFLOAD, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, active_mode_offload,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ACTIVE_MODE_OFFLOAD_DEFAULT,
|
|
||||||
CFG_ACTIVE_MODE_OFFLOAD_MIN,
|
|
||||||
CFG_ACTIVE_MODE_OFFLOAD_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_FINE_TIME_MEAS_CAPABILITY, WLAN_PARAM_HexInteger,
|
REG_VARIABLE(CFG_FINE_TIME_MEAS_CAPABILITY, WLAN_PARAM_HexInteger,
|
||||||
struct hdd_config, fine_time_meas_cap,
|
struct hdd_config, fine_time_meas_cap,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -2969,37 +2799,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE_MIN,
|
CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE_MIN,
|
||||||
CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE_MAX),
|
CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE_MAX),
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_WOW_PULSE
|
|
||||||
REG_VARIABLE(CFG_WOW_PULSE_SUPPORT_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, wow_pulse_support,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_WOW_PULSE_SUPPORT_DEFAULT,
|
|
||||||
CFG_WOW_PULSE_SUPPORT_MIN,
|
|
||||||
CFG_WOW_PULSE_SUPPORT_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_WOW_PULSE_PIN_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, wow_pulse_pin,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_WOW_PULSE_PIN_DEFAULT,
|
|
||||||
CFG_WOW_PULSE_PIN_MIN,
|
|
||||||
CFG_WOW_PULSE_PIN_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_WOW_PULSE_INTERVAL_LOW_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, wow_pulse_interval_low,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_WOW_PULSE_INTERVAL_LOW_DEFAULT,
|
|
||||||
CFG_WOW_PULSE_INTERVAL_LOW_MIN,
|
|
||||||
CFG_WOW_PULSE_INTERVAL_LOW_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_WOW_PULSE_INTERVAL_HIGH_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, wow_pulse_interval_high,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_WOW_PULSE_INTERVAL_HIGH_DEFAULT,
|
|
||||||
CFG_WOW_PULSE_INTERVAL_HIGH_MIN,
|
|
||||||
CFG_WOW_PULSE_INTERVAL_HIGH_MAX),
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_CE_CLASSIFY_ENABLE_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_CE_CLASSIFY_ENABLE_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, ce_classify_enabled,
|
struct hdd_config, ce_classify_enabled,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -3711,13 +3510,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_TX_ORPHAN_ENABLE_MIN,
|
CFG_TX_ORPHAN_ENABLE_MIN,
|
||||||
CFG_TX_ORPHAN_ENABLE_MAX),
|
CFG_TX_ORPHAN_ENABLE_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_AUTO_DETECT_POWER_FAIL_MODE_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, auto_pwr_save_fail_mode,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_AUTO_DETECT_POWER_FAIL_MODE_DEFAULT,
|
|
||||||
CFG_AUTO_DETECT_POWER_FAIL_MODE_MIN,
|
|
||||||
CFG_AUTO_DETECT_POWER_FAIL_MODE_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_ITO_REPEAT_COUNT_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_ITO_REPEAT_COUNT_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, ito_repeat_count,
|
struct hdd_config, ito_repeat_count,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -3858,15 +3650,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_LATENCY_FLAGS_ULTRALOW_MAX),
|
CFG_LATENCY_FLAGS_ULTRALOW_MAX),
|
||||||
|
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_PACKET_FILTERING
|
|
||||||
REG_VARIABLE(CFG_ENABLE_PACKET_FILTERS_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, packet_filters_bitmap,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_ENABLE_PACKET_FILTERS_DEFAULT,
|
|
||||||
CFG_ENABLE_PACKET_FILTERS_MIN,
|
|
||||||
CFG_ENABLE_PACKET_FILTERS_MAX),
|
|
||||||
#endif /* WLAN_FEATURE_PACKET_FILTERING */
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_DFS_BEACON_TX_ENHANCED, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_DFS_BEACON_TX_ENHANCED, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, dfs_beacon_tx_enhanced,
|
struct hdd_config, dfs_beacon_tx_enhanced,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
@@ -4983,8 +4766,8 @@ static void hdd_override_all_ps(struct hdd_context *hdd_ctx)
|
|||||||
cfg_ini->is_ps_enabled = 0;
|
cfg_ini->is_ps_enabled = 0;
|
||||||
hdd_disable_runtime_pm(cfg_ini);
|
hdd_disable_runtime_pm(cfg_ini);
|
||||||
hdd_disable_auto_shutdown(cfg_ini);
|
hdd_disable_auto_shutdown(cfg_ini);
|
||||||
cfg_ini->enablePowersaveOffload = 0;
|
ucfg_pmo_set_power_save_mode(hdd_ctx->psoc, PS_NOT_SUPPORTED);
|
||||||
cfg_ini->wowEnable = 0;
|
ucfg_pmo_set_wow_enable(hdd_ctx->psoc, PMO_WOW_DISABLE_BOTH);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -5558,12 +5341,6 @@ bool hdd_update_config_cfg(struct hdd_context *hdd_ctx)
|
|||||||
hdd_err("Couldn't pass on WNI_CFG_PASSIVE_MAXIMUM_CHANNEL_TIME to CFG");
|
hdd_err("Couldn't pass on WNI_CFG_PASSIVE_MAXIMUM_CHANNEL_TIME to CFG");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sme_cfg_set_int(mac_handle, WNI_CFG_MAX_PS_POLL,
|
|
||||||
config->nMaxPsPoll) == QDF_STATUS_E_FAILURE) {
|
|
||||||
status = false;
|
|
||||||
hdd_err("Couldn't pass on WNI_CFG_MAX_PS_POLL to CFG");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sme_cfg_set_int(mac_handle, WNI_CFG_PS_DATA_INACTIVITY_TIMEOUT,
|
if (sme_cfg_set_int(mac_handle, WNI_CFG_PS_DATA_INACTIVITY_TIMEOUT,
|
||||||
config->nDataInactivityTimeout) == QDF_STATUS_E_FAILURE) {
|
config->nDataInactivityTimeout) == QDF_STATUS_E_FAILURE) {
|
||||||
status = false;
|
status = false;
|
||||||
@@ -5577,7 +5354,6 @@ bool hdd_update_config_cfg(struct hdd_context *hdd_ctx)
|
|||||||
hdd_err("Fail to pass WNI_CFG_PS_WOW_DATA_INACTIVITY_TO CFG");
|
hdd_err("Fail to pass WNI_CFG_PS_WOW_DATA_INACTIVITY_TO CFG");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (sme_cfg_set_int(mac_handle, WNI_CFG_AP_KEEP_ALIVE_TIMEOUT,
|
if (sme_cfg_set_int(mac_handle, WNI_CFG_AP_KEEP_ALIVE_TIMEOUT,
|
||||||
config->apKeepAlivePeriod) == QDF_STATUS_E_FAILURE) {
|
config->apKeepAlivePeriod) == QDF_STATUS_E_FAILURE) {
|
||||||
status = false;
|
status = false;
|
||||||
@@ -5609,12 +5385,6 @@ bool hdd_update_config_cfg(struct hdd_context *hdd_ctx)
|
|||||||
hdd_err("Couldn't pass on WNI_CFG_HEART_BEAT_THRESHOLD to CFG");
|
hdd_err("Couldn't pass on WNI_CFG_HEART_BEAT_THRESHOLD to CFG");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sme_cfg_set_int(mac_handle, WNI_CFG_ENABLE_MC_ADDR_LIST,
|
|
||||||
config->fEnableMCAddrList) == QDF_STATUS_E_FAILURE) {
|
|
||||||
status = false;
|
|
||||||
hdd_err("Couldn't pass on WNI_CFG_ENABLE_MC_ADDR_LIST to CFG");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sme_cfg_set_int(mac_handle, WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED,
|
if (sme_cfg_set_int(mac_handle, WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED,
|
||||||
config->enableMCCAdaptiveScheduler) ==
|
config->enableMCCAdaptiveScheduler) ==
|
||||||
QDF_STATUS_E_FAILURE) {
|
QDF_STATUS_E_FAILURE) {
|
||||||
|
@@ -121,6 +121,8 @@
|
|||||||
#include "wlan_mlme_public_struct.h"
|
#include "wlan_mlme_public_struct.h"
|
||||||
#include "wlan_extscan_ucfg_api.h"
|
#include "wlan_extscan_ucfg_api.h"
|
||||||
#include "wlan_mlme_ucfg_api.h"
|
#include "wlan_mlme_ucfg_api.h"
|
||||||
|
#include "wlan_pmo_cfg.h"
|
||||||
|
#include "cfg_ucfg_api.h"
|
||||||
|
|
||||||
#include "wlan_crypto_global_api.h"
|
#include "wlan_crypto_global_api.h"
|
||||||
#include "wlan_nl_to_crypto_params.h"
|
#include "wlan_nl_to_crypto_params.h"
|
||||||
@@ -5554,7 +5556,7 @@ __wlan_hdd_cfg80211_wifi_configuration_set(struct wiphy *wiphy,
|
|||||||
override_li = nla_get_u32(
|
override_li = nla_get_u32(
|
||||||
tb[QCA_WLAN_VENDOR_ATTR_CONFIG_LISTEN_INTERVAL]);
|
tb[QCA_WLAN_VENDOR_ATTR_CONFIG_LISTEN_INTERVAL]);
|
||||||
|
|
||||||
if (override_li > CFG_ENABLE_DYNAMIC_DTIM_MAX) {
|
if (override_li > cfg_max(CFG_PMO_ENABLE_DYNAMIC_DTIM)) {
|
||||||
hdd_err_rl("Invalid value for listen interval - %d",
|
hdd_err_rl("Invalid value for listen interval - %d",
|
||||||
override_li);
|
override_li);
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
@@ -7167,12 +7169,13 @@ __wlan_hdd_cfg80211_set_ns_offload(struct wiphy *wiphy,
|
|||||||
status = wlan_hdd_validate_context(hdd_ctx);
|
status = wlan_hdd_validate_context(hdd_ctx);
|
||||||
if (0 != status)
|
if (0 != status)
|
||||||
return status;
|
return status;
|
||||||
if (!hdd_ctx->config->fhostNSOffload) {
|
|
||||||
|
if (!ucfg_pmo_is_ns_offloaded(hdd_ctx->psoc)) {
|
||||||
hdd_err("ND Offload not supported");
|
hdd_err("ND Offload not supported");
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!hdd_ctx->config->active_mode_offload) {
|
if (!ucfg_pmo_is_active_mode_offloaded(hdd_ctx->psoc)) {
|
||||||
hdd_warn("Active mode offload is disabled");
|
hdd_warn("Active mode offload is disabled");
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
@@ -61,7 +61,7 @@ wlan_hdd_mc_addr_list_info_debugfs(struct hdd_context *hdd_ctx,
|
|||||||
struct pmo_mc_addr_list mc_addr_list = {0};
|
struct pmo_mc_addr_list mc_addr_list = {0};
|
||||||
QDF_STATUS status;
|
QDF_STATUS status;
|
||||||
|
|
||||||
if (!hdd_ctx->config->fEnableMCAddrList) {
|
if (!ucfg_pmo_is_mc_addr_list_enabled(hdd_ctx->psoc)) {
|
||||||
ret = scnprintf(buf, buf_avail_len,
|
ret = scnprintf(buf, buf_avail_len,
|
||||||
"\nMC addr ini is disabled\n");
|
"\nMC addr ini is disabled\n");
|
||||||
if (ret > 0)
|
if (ret > 0)
|
||||||
|
@@ -73,8 +73,6 @@ int hdd_update_cds_config_ftm(struct hdd_context *hdd_ctx)
|
|||||||
}
|
}
|
||||||
|
|
||||||
cds_cfg->driver_type = QDF_DRIVER_TYPE_MFG;
|
cds_cfg->driver_type = QDF_DRIVER_TYPE_MFG;
|
||||||
cds_cfg->powersave_offload_enabled =
|
|
||||||
hdd_ctx->config->enablePowersaveOffload;
|
|
||||||
hdd_lpass_populate_cds_config(cds_cfg, hdd_ctx);
|
hdd_lpass_populate_cds_config(cds_cfg, hdd_ctx);
|
||||||
cds_cfg->sub_20_channel_width = WLAN_SUB_20_CH_WIDTH_NONE;
|
cds_cfg->sub_20_channel_width = WLAN_SUB_20_CH_WIDTH_NONE;
|
||||||
cds_cfg->self_recovery_enabled = hdd_ctx->config->enableSelfRecovery;
|
cds_cfg->self_recovery_enabled = hdd_ctx->config->enableSelfRecovery;
|
||||||
|
@@ -1840,7 +1840,7 @@ static int hdd_enable_ext_wow(struct hdd_adapter *adapter,
|
|||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hdd_ctx->config->extWowGotoSuspend) {
|
if (ucfg_pmo_extwow_is_goto_suspend_enabled(hdd_ctx->psoc)) {
|
||||||
hdd_info("Received ready to ExtWoW. Going to suspend");
|
hdd_info("Received ready to ExtWoW. Going to suspend");
|
||||||
|
|
||||||
rc = wlan_hdd_cfg80211_suspend_wlan(hdd_ctx->wiphy, NULL);
|
rc = wlan_hdd_cfg80211_suspend_wlan(hdd_ctx->wiphy, NULL);
|
||||||
@@ -1857,6 +1857,7 @@ static int hdd_enable_ext_wow(struct hdd_adapter *adapter,
|
|||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
exit:
|
exit:
|
||||||
osif_request_put(request);
|
osif_request_put(request);
|
||||||
return rc;
|
return rc;
|
||||||
@@ -1868,6 +1869,7 @@ static int hdd_enable_ext_wow_parser(struct hdd_adapter *adapter, int vdev_id,
|
|||||||
tSirExtWoWParams params;
|
tSirExtWoWParams params;
|
||||||
struct hdd_context *hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
struct hdd_context *hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
||||||
int rc;
|
int rc;
|
||||||
|
uint8_t pin1, pin2;
|
||||||
|
|
||||||
rc = wlan_hdd_validate_context(hdd_ctx);
|
rc = wlan_hdd_validate_context(hdd_ctx);
|
||||||
if (rc)
|
if (rc)
|
||||||
@@ -1896,9 +1898,9 @@ static int hdd_enable_ext_wow_parser(struct hdd_adapter *adapter, int vdev_id,
|
|||||||
}
|
}
|
||||||
|
|
||||||
params.vdev_id = vdev_id;
|
params.vdev_id = vdev_id;
|
||||||
params.wakeup_pin_num = hdd_ctx->config->extWowApp1WakeupPinNumber |
|
pin1 = ucfg_pmo_extwow_app1_wakeup_pin_num(hdd_ctx->psoc);
|
||||||
(hdd_ctx->config->extWowApp2WakeupPinNumber
|
pin2 = ucfg_pmo_extwow_app2_wakeup_pin_num(hdd_ctx->psoc);
|
||||||
<< 8);
|
params.wakeup_pin_num = pin1 | (pin2 << 8);
|
||||||
|
|
||||||
return hdd_enable_ext_wow(adapter, ¶ms);
|
return hdd_enable_ext_wow(adapter, ¶ms);
|
||||||
}
|
}
|
||||||
@@ -2028,33 +2030,38 @@ static int hdd_set_app_type2_parser(struct hdd_adapter *adapter,
|
|||||||
qdf_mem_copy(params.rc4_key, rc4_key, params.rc4_key_len);
|
qdf_mem_copy(params.rc4_key, rc4_key, params.rc4_key_len);
|
||||||
|
|
||||||
params.vdev_id = adapter->session_id;
|
params.vdev_id = adapter->session_id;
|
||||||
params.tcp_src_port = (params.tcp_src_port != 0) ?
|
|
||||||
params.tcp_src_port : hdd_ctx->config->extWowApp2TcpSrcPort;
|
if (!params.tcp_src_port)
|
||||||
params.tcp_dst_port = (params.tcp_dst_port != 0) ?
|
params.tcp_src_port =
|
||||||
params.tcp_dst_port : hdd_ctx->config->extWowApp2TcpDstPort;
|
ucfg_pmo_extwow_app2_tcp_src_port(hdd_ctx->psoc);
|
||||||
params.keepalive_init = (params.keepalive_init != 0) ?
|
|
||||||
params.keepalive_init : hdd_ctx->config->
|
if (!params.tcp_dst_port)
|
||||||
extWowApp2KAInitPingInterval;
|
params.tcp_dst_port =
|
||||||
params.keepalive_min =
|
ucfg_pmo_extwow_app2_tcp_dst_port(hdd_ctx->psoc);
|
||||||
(params.keepalive_min != 0) ?
|
|
||||||
params.keepalive_min :
|
if (!params.keepalive_init)
|
||||||
hdd_ctx->config->extWowApp2KAMinPingInterval;
|
params.keepalive_init =
|
||||||
params.keepalive_max =
|
ucfg_pmo_extwow_app2_init_ping_interval(hdd_ctx->psoc);
|
||||||
(params.keepalive_max != 0) ?
|
|
||||||
params.keepalive_max :
|
if (!params.keepalive_min)
|
||||||
hdd_ctx->config->extWowApp2KAMaxPingInterval;
|
params.keepalive_min =
|
||||||
params.keepalive_inc =
|
ucfg_pmo_extwow_app2_min_ping_interval(hdd_ctx->psoc);
|
||||||
(params.keepalive_inc != 0) ?
|
|
||||||
params.keepalive_inc :
|
if (!params.keepalive_max)
|
||||||
hdd_ctx->config->extWowApp2KAIncPingInterval;
|
params.keepalive_max =
|
||||||
params.tcp_tx_timeout_val =
|
ucfg_pmo_extwow_app2_max_ping_interval(hdd_ctx->psoc);
|
||||||
(params.tcp_tx_timeout_val != 0) ?
|
|
||||||
params.tcp_tx_timeout_val :
|
if (!params.keepalive_inc)
|
||||||
hdd_ctx->config->extWowApp2TcpTxTimeout;
|
params.keepalive_inc =
|
||||||
params.tcp_rx_timeout_val =
|
ucfg_pmo_extwow_app2_inc_ping_interval(hdd_ctx->psoc);
|
||||||
(params.tcp_rx_timeout_val != 0) ?
|
|
||||||
params.tcp_rx_timeout_val :
|
if (!params.tcp_tx_timeout_val)
|
||||||
hdd_ctx->config->extWowApp2TcpRxTimeout;
|
params.tcp_tx_timeout_val =
|
||||||
|
ucfg_pmo_extwow_app2_tcp_tx_timeout(hdd_ctx->psoc);
|
||||||
|
|
||||||
|
if (!params.tcp_rx_timeout_val)
|
||||||
|
params.tcp_rx_timeout_val =
|
||||||
|
ucfg_pmo_extwow_app2_tcp_rx_timeout(hdd_ctx->psoc);
|
||||||
|
|
||||||
hdd_debug("%pM %.16s %u %u %u %u %u %u %u %u %u %u %u %u %u",
|
hdd_debug("%pM %.16s %u %u %u %u %u %u %u %u %u %u %u %u %u",
|
||||||
gateway_mac, rc4_key, params.ip_id,
|
gateway_mac, rc4_key, params.ip_id,
|
||||||
@@ -6301,7 +6308,7 @@ static int hdd_set_rx_filter(struct hdd_adapter *adapter, bool action,
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!hdd_ctx->config->fEnableMCAddrList) {
|
if (!ucfg_pmo_is_mc_addr_list_enabled(hdd_ctx->psoc)) {
|
||||||
hdd_warn("mc addr ini is disabled");
|
hdd_warn("mc addr ini is disabled");
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
@@ -1248,6 +1248,7 @@ static void hdd_update_tgt_services(struct hdd_context *hdd_ctx,
|
|||||||
struct wma_tgt_services *cfg)
|
struct wma_tgt_services *cfg)
|
||||||
{
|
{
|
||||||
struct hdd_config *config = hdd_ctx->config;
|
struct hdd_config *config = hdd_ctx->config;
|
||||||
|
bool arp_offload_enable;
|
||||||
#ifdef FEATURE_WLAN_TDLS
|
#ifdef FEATURE_WLAN_TDLS
|
||||||
bool tdls_support;
|
bool tdls_support;
|
||||||
bool tdls_off_channel;
|
bool tdls_off_channel;
|
||||||
@@ -1269,8 +1270,10 @@ static void hdd_update_tgt_services(struct hdd_context *hdd_ctx,
|
|||||||
config->dot11Mode = eHDD_DOT11_MODE_AUTO;
|
config->dot11Mode = eHDD_DOT11_MODE_AUTO;
|
||||||
|
|
||||||
/* ARP offload: override user setting if invalid */
|
/* ARP offload: override user setting if invalid */
|
||||||
config->fhostArpOffload &= cfg->arp_offload;
|
arp_offload_enable =
|
||||||
|
ucfg_pmo_is_arp_offload_enabled(hdd_ctx->psoc);
|
||||||
|
ucfg_pmo_set_arp_offload_enabled(hdd_ctx->psoc,
|
||||||
|
arp_offload_enable & cfg->arp_offload);
|
||||||
#ifdef FEATURE_WLAN_SCAN_PNO
|
#ifdef FEATURE_WLAN_SCAN_PNO
|
||||||
/* PNO offload */
|
/* PNO offload */
|
||||||
hdd_debug("PNO Capability in f/w = %d", cfg->pno_offload);
|
hdd_debug("PNO Capability in f/w = %d", cfg->pno_offload);
|
||||||
@@ -1892,29 +1895,6 @@ static int hdd_generate_macaddr_auto(struct hdd_context *hdd_ctx)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef FEATURE_WLAN_APF
|
|
||||||
/**
|
|
||||||
* hdd_update_apf_support() - Update APF supported flag in hdd context
|
|
||||||
* @hdd_ctx: Pointer to hdd_ctx
|
|
||||||
* @cfg: target configuration
|
|
||||||
*
|
|
||||||
* Update the APF support flag in HDD Context using INI and target config.
|
|
||||||
*
|
|
||||||
* Return: None
|
|
||||||
*/
|
|
||||||
static void hdd_update_apf_support(struct hdd_context *hdd_ctx,
|
|
||||||
struct wma_tgt_cfg *cfg)
|
|
||||||
{
|
|
||||||
hdd_ctx->apf_supported = (cfg->apf_enabled &&
|
|
||||||
hdd_ctx->config->apf_packet_filter_enable);
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
static void hdd_update_apf_support(struct hdd_context *hdd_ctx,
|
|
||||||
struct wma_tgt_cfg *cfg)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* hdd_update_ra_rate_limit() - Update RA rate limit from target
|
* hdd_update_ra_rate_limit() - Update RA rate limit from target
|
||||||
* configuration to cfg_ini in HDD
|
* configuration to cfg_ini in HDD
|
||||||
@@ -2128,10 +2108,7 @@ void hdd_update_tgt_cfg(hdd_handle_t hdd_handle, struct wma_tgt_cfg *cfg)
|
|||||||
if (QDF_IS_STATUS_ERROR(status))
|
if (QDF_IS_STATUS_ERROR(status))
|
||||||
hdd_err("fw update WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED to CFG fails");
|
hdd_err("fw update WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED to CFG fails");
|
||||||
|
|
||||||
hdd_update_apf_support(hdd_ctx, cfg);
|
hdd_debug("Target 8ss fw support %d txBFCsnValue %d",
|
||||||
|
|
||||||
hdd_debug("Target APF %d Host APF %d 8ss fw support %d txBFCsnValue %d",
|
|
||||||
cfg->apf_enabled, hdd_ctx->config->apf_packet_filter_enable,
|
|
||||||
cfg->tx_bfee_8ss_enabled, hdd_ctx->config->txBFCsnValue);
|
cfg->tx_bfee_8ss_enabled, hdd_ctx->config->txBFCsnValue);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -8241,24 +8218,25 @@ static void hdd_init_offloaded_packets_ctx(struct hdd_context *hdd_ctx)
|
|||||||
*/
|
*/
|
||||||
static int wlan_hdd_set_wow_pulse(struct hdd_context *phddctx, bool enable)
|
static int wlan_hdd_set_wow_pulse(struct hdd_context *phddctx, bool enable)
|
||||||
{
|
{
|
||||||
struct hdd_config *pcfg_ini = phddctx->config;
|
|
||||||
struct wow_pulse_mode wow_pulse_set_info;
|
struct wow_pulse_mode wow_pulse_set_info;
|
||||||
QDF_STATUS status;
|
QDF_STATUS status;
|
||||||
|
|
||||||
hdd_debug("wow pulse enable flag is %d", enable);
|
hdd_debug("wow pulse enable flag is %d", enable);
|
||||||
|
|
||||||
if (false == phddctx->config->wow_pulse_support)
|
if (!ucfg_pmo_is_wow_pulse_enabled(phddctx->psoc))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* prepare the request to send to SME */
|
/* prepare the request to send to SME */
|
||||||
if (enable == true) {
|
if (enable == true) {
|
||||||
wow_pulse_set_info.wow_pulse_enable = true;
|
wow_pulse_set_info.wow_pulse_enable = true;
|
||||||
wow_pulse_set_info.wow_pulse_pin =
|
wow_pulse_set_info.wow_pulse_pin =
|
||||||
pcfg_ini->wow_pulse_pin;
|
ucfg_pmo_get_wow_pulse_pin(phddctx->psoc);
|
||||||
wow_pulse_set_info.wow_pulse_interval_low =
|
|
||||||
pcfg_ini->wow_pulse_interval_low;
|
|
||||||
wow_pulse_set_info.wow_pulse_interval_high =
|
wow_pulse_set_info.wow_pulse_interval_high =
|
||||||
pcfg_ini->wow_pulse_interval_high;
|
ucfg_pmo_get_wow_pulse_interval_high(phddctx->psoc);
|
||||||
|
|
||||||
|
wow_pulse_set_info.wow_pulse_interval_low =
|
||||||
|
ucfg_pmo_get_wow_pulse_interval_low(phddctx->psoc);
|
||||||
} else {
|
} else {
|
||||||
wow_pulse_set_info.wow_pulse_enable = false;
|
wow_pulse_set_info.wow_pulse_enable = false;
|
||||||
wow_pulse_set_info.wow_pulse_pin = 0;
|
wow_pulse_set_info.wow_pulse_pin = 0;
|
||||||
@@ -9236,10 +9214,6 @@ static struct hdd_context *hdd_context_create(struct device *dev)
|
|||||||
hdd_ctx->config->timer_multiplier);
|
hdd_ctx->config->timer_multiplier);
|
||||||
qdf_timer_set_multiplier(hdd_ctx->config->timer_multiplier);
|
qdf_timer_set_multiplier(hdd_ctx->config->timer_multiplier);
|
||||||
|
|
||||||
|
|
||||||
if (hdd_ctx->config->fhostNSOffload)
|
|
||||||
hdd_ctx->ns_offload_enable = true;
|
|
||||||
|
|
||||||
cds_set_fatal_event(hdd_ctx->config->enable_fatal_event);
|
cds_set_fatal_event(hdd_ctx->config->enable_fatal_event);
|
||||||
|
|
||||||
hdd_override_ini_config(hdd_ctx);
|
hdd_override_ini_config(hdd_ctx);
|
||||||
@@ -9633,27 +9607,7 @@ static int hdd_update_cds_config(struct hdd_context *hdd_ctx)
|
|||||||
}
|
}
|
||||||
|
|
||||||
cds_cfg->driver_type = QDF_DRIVER_TYPE_PRODUCTION;
|
cds_cfg->driver_type = QDF_DRIVER_TYPE_PRODUCTION;
|
||||||
if (!hdd_ctx->config->nMaxPsPoll ||
|
|
||||||
!hdd_ctx->config->enablePowersaveOffload) {
|
|
||||||
cds_cfg->powersave_offload_enabled =
|
|
||||||
hdd_ctx->config->enablePowersaveOffload;
|
|
||||||
} else {
|
|
||||||
if ((hdd_ctx->config->enablePowersaveOffload ==
|
|
||||||
PS_QPOWER_NODEEPSLEEP) ||
|
|
||||||
(hdd_ctx->config->enablePowersaveOffload ==
|
|
||||||
PS_LEGACY_NODEEPSLEEP))
|
|
||||||
cds_cfg->powersave_offload_enabled =
|
|
||||||
PS_LEGACY_NODEEPSLEEP;
|
|
||||||
else
|
|
||||||
cds_cfg->powersave_offload_enabled =
|
|
||||||
PS_LEGACY_DEEPSLEEP;
|
|
||||||
hdd_info("Qpower disabled in cds config, %d",
|
|
||||||
cds_cfg->powersave_offload_enabled);
|
|
||||||
}
|
|
||||||
cds_cfg->sta_dynamic_dtim = hdd_ctx->config->enableDynamicDTIM;
|
|
||||||
cds_cfg->sta_mod_dtim = hdd_ctx->config->enableModulatedDTIM;
|
|
||||||
cds_cfg->sta_maxlimod_dtim = hdd_ctx->config->fMaxLIModulatedDTIM;
|
cds_cfg->sta_maxlimod_dtim = hdd_ctx->config->fMaxLIModulatedDTIM;
|
||||||
cds_cfg->wow_enable = hdd_ctx->config->wowEnable;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copy the DFS Phyerr Filtering Offload status.
|
* Copy the DFS Phyerr Filtering Offload status.
|
||||||
@@ -9662,14 +9616,10 @@ static int hdd_update_cds_config(struct hdd_context *hdd_ctx)
|
|||||||
*/
|
*/
|
||||||
cds_cfg->dfs_phyerr_filter_offload =
|
cds_cfg->dfs_phyerr_filter_offload =
|
||||||
hdd_ctx->config->fDfsPhyerrFilterOffload;
|
hdd_ctx->config->fDfsPhyerrFilterOffload;
|
||||||
if (hdd_ctx->config->ssdp)
|
|
||||||
cds_cfg->ssdp = hdd_ctx->config->ssdp;
|
|
||||||
|
|
||||||
cds_cfg->force_target_assert_enabled =
|
cds_cfg->force_target_assert_enabled =
|
||||||
hdd_ctx->config->crash_inject_enabled;
|
hdd_ctx->config->crash_inject_enabled;
|
||||||
|
|
||||||
cds_cfg->enable_mc_list = hdd_ctx->config->fEnableMCAddrList;
|
|
||||||
|
|
||||||
ucfg_mlme_get_sap_max_offload_peers(hdd_ctx->psoc, &value);
|
ucfg_mlme_get_sap_max_offload_peers(hdd_ctx->psoc, &value);
|
||||||
cds_cfg->ap_maxoffload_peers = value;
|
cds_cfg->ap_maxoffload_peers = value;
|
||||||
ucfg_mlme_get_sap_max_offload_reorder_buffs(hdd_ctx->psoc,
|
ucfg_mlme_get_sap_max_offload_reorder_buffs(hdd_ctx->psoc,
|
||||||
@@ -9727,8 +9677,6 @@ static int hdd_update_cds_config(struct hdd_context *hdd_ctx)
|
|||||||
cds_cfg->enable_rxthread = hdd_ctx->enable_rxthread;
|
cds_cfg->enable_rxthread = hdd_ctx->enable_rxthread;
|
||||||
cds_cfg->ce_classify_enabled =
|
cds_cfg->ce_classify_enabled =
|
||||||
hdd_ctx->config->ce_classify_enabled;
|
hdd_ctx->config->ce_classify_enabled;
|
||||||
cds_cfg->apf_packet_filter_enable =
|
|
||||||
hdd_ctx->config->apf_packet_filter_enable;
|
|
||||||
cds_cfg->self_gen_frm_pwr = hdd_ctx->config->self_gen_frm_pwr;
|
cds_cfg->self_gen_frm_pwr = hdd_ctx->config->self_gen_frm_pwr;
|
||||||
ucfg_mlme_get_sap_max_peers(hdd_ctx->psoc, &value);
|
ucfg_mlme_get_sap_max_peers(hdd_ctx->psoc, &value);
|
||||||
cds_cfg->max_station = value;
|
cds_cfg->max_station = value;
|
||||||
@@ -9740,8 +9688,6 @@ static int hdd_update_cds_config(struct hdd_context *hdd_ctx)
|
|||||||
cds_cfg->fw_timeout_crash = hdd_ctx->config->fw_timeout_crash;
|
cds_cfg->fw_timeout_crash = hdd_ctx->config->fw_timeout_crash;
|
||||||
cds_cfg->active_uc_apf_mode = hdd_ctx->config->active_uc_apf_mode;
|
cds_cfg->active_uc_apf_mode = hdd_ctx->config->active_uc_apf_mode;
|
||||||
cds_cfg->active_mc_bc_apf_mode = hdd_ctx->config->active_mc_bc_apf_mode;
|
cds_cfg->active_mc_bc_apf_mode = hdd_ctx->config->active_mc_bc_apf_mode;
|
||||||
cds_cfg->auto_power_save_fail_mode =
|
|
||||||
hdd_ctx->config->auto_pwr_save_fail_mode;
|
|
||||||
|
|
||||||
cds_cfg->ito_repeat_count = hdd_ctx->config->ito_repeat_count;
|
cds_cfg->ito_repeat_count = hdd_ctx->config->ito_repeat_count;
|
||||||
cds_cfg->bandcapability = hdd_ctx->config->nBandCapability;
|
cds_cfg->bandcapability = hdd_ctx->config->nBandCapability;
|
||||||
@@ -10879,6 +10825,7 @@ int hdd_configure_cds(struct hdd_context *hdd_ctx)
|
|||||||
uint16_t num_11ag_tx_chains = 0;
|
uint16_t num_11ag_tx_chains = 0;
|
||||||
struct policy_mgr_dp_cbacks dp_cbs = {0};
|
struct policy_mgr_dp_cbacks dp_cbs = {0};
|
||||||
bool value;
|
bool value;
|
||||||
|
enum pmo_auto_pwr_detect_failure_mode auto_power_fail_mode;
|
||||||
|
|
||||||
mac_handle = hdd_ctx->mac_handle;
|
mac_handle = hdd_ctx->mac_handle;
|
||||||
|
|
||||||
@@ -11008,8 +10955,11 @@ int hdd_configure_cds(struct hdd_context *hdd_ctx)
|
|||||||
|
|
||||||
sme_cli_set_command(0, WMI_PDEV_PARAM_GCMP_SUPPORT_ENABLE,
|
sme_cli_set_command(0, WMI_PDEV_PARAM_GCMP_SUPPORT_ENABLE,
|
||||||
hdd_ctx->config->gcmp_enabled, PDEV_CMD);
|
hdd_ctx->config->gcmp_enabled, PDEV_CMD);
|
||||||
|
|
||||||
|
auto_power_fail_mode =
|
||||||
|
ucfg_pmo_get_auto_power_fail_mode(hdd_ctx->psoc);
|
||||||
sme_cli_set_command(0, WMI_PDEV_AUTO_DETECT_POWER_FAILURE,
|
sme_cli_set_command(0, WMI_PDEV_AUTO_DETECT_POWER_FAILURE,
|
||||||
hdd_ctx->config->auto_pwr_save_fail_mode, PDEV_CMD);
|
auto_power_fail_mode, PDEV_CMD);
|
||||||
|
|
||||||
|
|
||||||
if (hdd_ctx->config->enable_phy_reg_retention)
|
if (hdd_ctx->config->enable_phy_reg_retention)
|
||||||
@@ -12785,17 +12735,24 @@ QDF_STATUS hdd_component_psoc_open(struct wlan_objmgr_psoc *psoc)
|
|||||||
|
|
||||||
status = ucfg_fwol_psoc_open(psoc);
|
status = ucfg_fwol_psoc_open(psoc);
|
||||||
if (QDF_IS_STATUS_ERROR(status))
|
if (QDF_IS_STATUS_ERROR(status))
|
||||||
goto err;
|
goto err_fwol;
|
||||||
|
|
||||||
|
status = ucfg_pmo_psoc_open(psoc);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status))
|
||||||
|
goto err_pmo;
|
||||||
|
|
||||||
return status;
|
return status;
|
||||||
|
|
||||||
err:
|
err_pmo:
|
||||||
|
ucfg_fwol_psoc_close(psoc);
|
||||||
|
err_fwol:
|
||||||
ucfg_mlme_psoc_close(psoc);
|
ucfg_mlme_psoc_close(psoc);
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
void hdd_component_psoc_close(struct wlan_objmgr_psoc *psoc)
|
void hdd_component_psoc_close(struct wlan_objmgr_psoc *psoc)
|
||||||
{
|
{
|
||||||
|
ucfg_pmo_psoc_close(psoc);
|
||||||
ucfg_fwol_psoc_close(psoc);
|
ucfg_fwol_psoc_close(psoc);
|
||||||
ucfg_mlme_psoc_close(psoc);
|
ucfg_mlme_psoc_close(psoc);
|
||||||
}
|
}
|
||||||
@@ -13675,7 +13632,8 @@ static void hdd_populate_runtime_cfg(struct hdd_context *hdd_ctx,
|
|||||||
struct hif_config_info *cfg)
|
struct hif_config_info *cfg)
|
||||||
{
|
{
|
||||||
cfg->enable_runtime_pm = hdd_ctx->config->runtime_pm;
|
cfg->enable_runtime_pm = hdd_ctx->config->runtime_pm;
|
||||||
cfg->runtime_pm_delay = hdd_ctx->config->runtime_pm_delay;
|
cfg->runtime_pm_delay =
|
||||||
|
ucfg_pmo_get_runtime_pm_delay(hdd_ctx->psoc);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
static void hdd_populate_runtime_cfg(struct hdd_context *hdd_ctx,
|
static void hdd_populate_runtime_cfg(struct hdd_context *hdd_ctx,
|
||||||
@@ -13753,6 +13711,9 @@ int hdd_update_config(struct hdd_context *hdd_ctx)
|
|||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
if (ucfg_pmo_is_ns_offloaded(hdd_ctx->psoc))
|
||||||
|
hdd_ctx->ns_offload_enable = true;
|
||||||
|
|
||||||
hdd_update_ol_config(hdd_ctx);
|
hdd_update_ol_config(hdd_ctx);
|
||||||
hdd_update_hif_config(hdd_ctx);
|
hdd_update_hif_config(hdd_ctx);
|
||||||
if (QDF_GLOBAL_FTM_MODE == hdd_get_conparam())
|
if (QDF_GLOBAL_FTM_MODE == hdd_get_conparam())
|
||||||
@@ -13799,6 +13760,9 @@ static int hdd_update_pmo_config(struct hdd_context *hdd_ctx)
|
|||||||
{
|
{
|
||||||
struct pmo_psoc_cfg psoc_cfg;
|
struct pmo_psoc_cfg psoc_cfg;
|
||||||
QDF_STATUS status;
|
QDF_STATUS status;
|
||||||
|
enum pmo_wow_enable_type wow_enable;
|
||||||
|
|
||||||
|
ucfg_pmo_get_psoc_config(hdd_ctx->psoc, &psoc_cfg);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Value of hdd_ctx->wowEnable can be,
|
* Value of hdd_ctx->wowEnable can be,
|
||||||
@@ -13808,27 +13772,14 @@ static int hdd_update_pmo_config(struct hdd_context *hdd_ctx)
|
|||||||
* 3 - Enable both magic patter and pattern byte match on
|
* 3 - Enable both magic patter and pattern byte match on
|
||||||
* all interfaces.
|
* all interfaces.
|
||||||
*/
|
*/
|
||||||
psoc_cfg.magic_ptrn_enable =
|
wow_enable = ucfg_pmo_get_wow_enable(hdd_ctx->psoc);
|
||||||
(hdd_ctx->config->wowEnable & 0x01) ? true : false;
|
psoc_cfg.magic_ptrn_enable = (wow_enable & 0x01) ? true : false;
|
||||||
psoc_cfg.ptrn_match_enable_all_vdev =
|
psoc_cfg.ptrn_match_enable_all_vdev =
|
||||||
(hdd_ctx->config->wowEnable & 0x02) ? true : false;
|
(wow_enable & 0x02) ? true : false;
|
||||||
psoc_cfg.apf_enable = hdd_ctx->config->apf_packet_filter_enable;
|
|
||||||
psoc_cfg.arp_offload_enable = hdd_ctx->config->fhostArpOffload;
|
|
||||||
psoc_cfg.hw_filter_mode_bitmap = hdd_ctx->config->hw_filter_mode_bitmap;
|
|
||||||
psoc_cfg.ns_offload_enable_dynamic = hdd_ctx->config->fhostNSOffload;
|
|
||||||
psoc_cfg.ns_offload_enable_static = hdd_ctx->config->fhostNSOffload;
|
|
||||||
psoc_cfg.packet_filter_enabled = !hdd_ctx->config->disablePacketFilter;
|
psoc_cfg.packet_filter_enabled = !hdd_ctx->config->disablePacketFilter;
|
||||||
psoc_cfg.ssdp = hdd_ctx->config->ssdp;
|
|
||||||
psoc_cfg.enable_mc_list = hdd_ctx->config->fEnableMCAddrList;
|
|
||||||
psoc_cfg.active_mode_offload = hdd_ctx->config->active_mode_offload;
|
|
||||||
psoc_cfg.ap_arpns_support = hdd_ctx->ap_arpns_support;
|
psoc_cfg.ap_arpns_support = hdd_ctx->ap_arpns_support;
|
||||||
psoc_cfg.d0_wow_supported = wma_d0_wow_is_supported();
|
psoc_cfg.d0_wow_supported = wma_d0_wow_is_supported();
|
||||||
psoc_cfg.sta_dynamic_dtim = hdd_ctx->config->enableDynamicDTIM;
|
|
||||||
psoc_cfg.sta_mod_dtim = hdd_ctx->config->enableModulatedDTIM;
|
|
||||||
psoc_cfg.sta_max_li_mod_dtim = hdd_ctx->config->fMaxLIModulatedDTIM;
|
psoc_cfg.sta_max_li_mod_dtim = hdd_ctx->config->fMaxLIModulatedDTIM;
|
||||||
psoc_cfg.power_save_mode = hdd_ctx->config->enablePowersaveOffload;
|
|
||||||
psoc_cfg.auto_power_save_fail_mode =
|
|
||||||
hdd_ctx->config->auto_pwr_save_fail_mode;
|
|
||||||
|
|
||||||
hdd_ra_populate_pmo_config(&psoc_cfg, hdd_ctx);
|
hdd_ra_populate_pmo_config(&psoc_cfg, hdd_ctx);
|
||||||
hdd_lpass_populate_pmo_config(&psoc_cfg, hdd_ctx);
|
hdd_lpass_populate_pmo_config(&psoc_cfg, hdd_ctx);
|
||||||
|
@@ -42,7 +42,7 @@ int hdd_enable_default_pkt_filters(struct hdd_adapter *adapter)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
filters = hdd_ctx->config->packet_filters_bitmap;
|
filters = ucfg_pmo_get_pkt_filter_bitmap(hdd_ctx->psoc);
|
||||||
|
|
||||||
while (filters != 0) {
|
while (filters != 0) {
|
||||||
if (filters & 0x1) {
|
if (filters & 0x1) {
|
||||||
@@ -79,7 +79,7 @@ int hdd_disable_default_pkt_filters(struct hdd_adapter *adapter)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
filters = hdd_ctx->config->packet_filters_bitmap;
|
filters = ucfg_pmo_get_pkt_filter_bitmap(hdd_ctx->psoc);
|
||||||
|
|
||||||
while (filters != 0) {
|
while (filters != 0) {
|
||||||
if (filters & 0x1) {
|
if (filters & 0x1) {
|
||||||
|
@@ -802,9 +802,8 @@ static int __wlan_hdd_ipv4_changed(struct notifier_block *nb,
|
|||||||
hdd_debug("invoking sme_dhcp_done_ind");
|
hdd_debug("invoking sme_dhcp_done_ind");
|
||||||
sme_dhcp_done_ind(hdd_ctx->mac_handle, adapter->session_id);
|
sme_dhcp_done_ind(hdd_ctx->mac_handle, adapter->session_id);
|
||||||
|
|
||||||
if (!hdd_ctx->config->fhostArpOffload) {
|
if (!ucfg_pmo_is_arp_offload_enabled(hdd_ctx->psoc)) {
|
||||||
hdd_debug("Offload not enabled ARPOffload=%d",
|
hdd_debug("Offload not enabled");
|
||||||
hdd_ctx->config->fhostArpOffload);
|
|
||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2131,7 +2130,7 @@ int hdd_set_qpower_config(struct hdd_context *hddctx,
|
|||||||
{
|
{
|
||||||
QDF_STATUS status;
|
QDF_STATUS status;
|
||||||
|
|
||||||
if (!hddctx->config->enablePowersaveOffload) {
|
if (!ucfg_pmo_get_power_save_mode(hddctx->psoc)) {
|
||||||
hdd_err("qpower is disabled in configuration");
|
hdd_err("qpower is disabled in configuration");
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
@@ -2148,7 +2147,7 @@ int hdd_set_qpower_config(struct hdd_context *hddctx,
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hddctx->config->nMaxPsPoll) {
|
if (ucfg_pmo_get_max_ps_poll(hddctx->psoc)) {
|
||||||
if ((qpower == PS_QPOWER_NODEEPSLEEP) ||
|
if ((qpower == PS_QPOWER_NODEEPSLEEP) ||
|
||||||
(qpower == PS_LEGACY_NODEEPSLEEP))
|
(qpower == PS_LEGACY_NODEEPSLEEP))
|
||||||
qpower = PS_LEGACY_NODEEPSLEEP;
|
qpower = PS_LEGACY_NODEEPSLEEP;
|
||||||
|
@@ -104,6 +104,8 @@
|
|||||||
#include "wlan_mlme_public_struct.h"
|
#include "wlan_mlme_public_struct.h"
|
||||||
#include "cfg_ucfg_api.h"
|
#include "cfg_ucfg_api.h"
|
||||||
#include "cfg_mlme_threshold.h"
|
#include "cfg_mlme_threshold.h"
|
||||||
|
#include "wlan_pmo_cfg.h"
|
||||||
|
#include "wlan_pmo_ucfg_api.h"
|
||||||
|
|
||||||
#define HDD_FINISH_ULA_TIME_OUT 800
|
#define HDD_FINISH_ULA_TIME_OUT 800
|
||||||
#define HDD_SET_MCBC_FILTERS_TO_FW 1
|
#define HDD_SET_MCBC_FILTERS_TO_FW 1
|
||||||
@@ -5198,14 +5200,14 @@ static int __iw_setint_getnone(struct net_device *dev,
|
|||||||
ret = hdd_handle_pdev_reset(adapter, set_value);
|
ret = hdd_handle_pdev_reset(adapter, set_value);
|
||||||
break;
|
break;
|
||||||
case WE_SET_MODULATED_DTIM:
|
case WE_SET_MODULATED_DTIM:
|
||||||
if ((set_value < CFG_ENABLE_MODULATED_DTIM_MIN) ||
|
if ((set_value < cfg_max(CFG_PMO_ENABLE_MODULATED_DTIM)) ||
|
||||||
(set_value > CFG_ENABLE_MODULATED_DTIM_MAX)) {
|
(set_value > cfg_max(CFG_PMO_ENABLE_MODULATED_DTIM))) {
|
||||||
hdd_err("Invalid gEnableModuleDTIM value %d",
|
hdd_err("Invalid gEnableModuleDTIM value %d",
|
||||||
set_value);
|
set_value);
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
hdd_ctx->config->enableModulatedDTIM = set_value;
|
ucfg_pmo_set_sta_mod_dtim(hdd_ctx->psoc, set_value);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
hdd_debug("Invalid sub command %d", sub_cmd);
|
hdd_debug("Invalid sub command %d", sub_cmd);
|
||||||
|
@@ -5654,23 +5654,6 @@ enum powersave_qpower_mode {
|
|||||||
QPOWER_DUTY_CYCLING = 2
|
QPOWER_DUTY_CYCLING = 2
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
|
||||||
* enum powersave_qpower_mode: powersave_mode
|
|
||||||
* @PS_NOT_SUPPORTED: Power save is not supported
|
|
||||||
* @PS_LEGACY_NODEEPSLEEP: Legacy power save enabled and deep sleep disabled
|
|
||||||
* @PS_QPOWER_NODEEPSLEEP: QPOWER enabled and deep sleep disabled
|
|
||||||
* @PS_LEGACY_DEEPSLEEP: Legacy power save enabled and deep sleep enabled
|
|
||||||
* @PS_QPOWER_DEEPSLEEP: QPOWER enabled and deep sleep enabled
|
|
||||||
* @PS_DUTY_CYCLING_QPOWER: QPOWER enabled in duty cycling mode
|
|
||||||
*/
|
|
||||||
enum powersave_mode {
|
|
||||||
PS_NOT_SUPPORTED = 0,
|
|
||||||
PS_LEGACY_NODEEPSLEEP = 1,
|
|
||||||
PS_QPOWER_NODEEPSLEEP = 2,
|
|
||||||
PS_LEGACY_DEEPSLEEP = 3,
|
|
||||||
PS_QPOWER_DEEPSLEEP = 4,
|
|
||||||
PS_DUTY_CYCLING_QPOWER = 5
|
|
||||||
};
|
|
||||||
#ifdef FEATURE_LFR_SUBNET_DETECTION
|
#ifdef FEATURE_LFR_SUBNET_DETECTION
|
||||||
/**
|
/**
|
||||||
* struct gateway_param_update_req - gateway parameter update request
|
* struct gateway_param_update_req - gateway parameter update request
|
||||||
|
@@ -111,14 +111,9 @@ enum {
|
|||||||
WNI_CFG_VHT_160MHZ_UTILIZATION,
|
WNI_CFG_VHT_160MHZ_UTILIZATION,
|
||||||
WNI_CFG_MPDU_DENSITY,
|
WNI_CFG_MPDU_DENSITY,
|
||||||
WNI_CFG_MAX_RX_AMPDU_FACTOR,
|
WNI_CFG_MAX_RX_AMPDU_FACTOR,
|
||||||
WNI_CFG_MAX_PS_POLL,
|
|
||||||
WNI_CFG_SCAN_IN_POWERSAVE,
|
WNI_CFG_SCAN_IN_POWERSAVE,
|
||||||
WNI_CFG_WOWLAN_UCAST_PATTERN_FILTER_ENABLE,
|
WNI_CFG_WOWLAN_UCAST_PATTERN_FILTER_ENABLE,
|
||||||
WNI_CFG_WOWLAN_CHANNEL_SWITCH_ENABLE,
|
WNI_CFG_WOWLAN_CHANNEL_SWITCH_ENABLE,
|
||||||
WNI_CFG_WOWLAN_DEAUTH_ENABLE,
|
|
||||||
WNI_CFG_WOWLAN_DISASSOC_ENABLE,
|
|
||||||
WNI_CFG_WOWLAN_MAX_MISSED_BEACON,
|
|
||||||
WNI_CFG_WOWLAN_MAX_SLEEP_PERIOD,
|
|
||||||
WNI_CFG_IBSS_AUTO_BSSID,
|
WNI_CFG_IBSS_AUTO_BSSID,
|
||||||
WNI_CFG_WPS_ENABLE,
|
WNI_CFG_WPS_ENABLE,
|
||||||
WNI_CFG_WPS_STATE,
|
WNI_CFG_WPS_STATE,
|
||||||
@@ -134,7 +129,6 @@ enum {
|
|||||||
WNI_CFG_ASSOC_STA_LIMIT,
|
WNI_CFG_ASSOC_STA_LIMIT,
|
||||||
WNI_CFG_ENABLE_LTE_COEX,
|
WNI_CFG_ENABLE_LTE_COEX,
|
||||||
WNI_CFG_AP_KEEP_ALIVE_TIMEOUT,
|
WNI_CFG_AP_KEEP_ALIVE_TIMEOUT,
|
||||||
WNI_CFG_ENABLE_MC_ADDR_LIST,
|
|
||||||
WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED,
|
WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED,
|
||||||
WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP,
|
WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP,
|
||||||
WNI_CFG_AP_LINK_MONITOR_TIMEOUT,
|
WNI_CFG_AP_LINK_MONITOR_TIMEOUT,
|
||||||
@@ -871,10 +865,6 @@ enum {
|
|||||||
#define WNI_CFG_SHORT_GI_40MHZ_ENABLE 1
|
#define WNI_CFG_SHORT_GI_40MHZ_ENABLE 1
|
||||||
#define WNI_CFG_SHORT_GI_40MHZ_DISABLE 0
|
#define WNI_CFG_SHORT_GI_40MHZ_DISABLE 0
|
||||||
|
|
||||||
#define WNI_CFG_MAX_PS_POLL_STAMIN 0
|
|
||||||
#define WNI_CFG_MAX_PS_POLL_STAMAX 255
|
|
||||||
#define WNI_CFG_MAX_PS_POLL_STADEF 0
|
|
||||||
|
|
||||||
#define WNI_CFG_SCAN_IN_POWERSAVE_STAMIN 0
|
#define WNI_CFG_SCAN_IN_POWERSAVE_STAMIN 0
|
||||||
#define WNI_CFG_SCAN_IN_POWERSAVE_STAMAX 1
|
#define WNI_CFG_SCAN_IN_POWERSAVE_STAMAX 1
|
||||||
#define WNI_CFG_SCAN_IN_POWERSAVE_STADEF 1
|
#define WNI_CFG_SCAN_IN_POWERSAVE_STADEF 1
|
||||||
@@ -895,14 +885,6 @@ enum {
|
|||||||
#define WNI_CFG_WOWLAN_DISASSOC_ENABLE_STAMAX 1
|
#define WNI_CFG_WOWLAN_DISASSOC_ENABLE_STAMAX 1
|
||||||
#define WNI_CFG_WOWLAN_DISASSOC_ENABLE_STADEF 1
|
#define WNI_CFG_WOWLAN_DISASSOC_ENABLE_STADEF 1
|
||||||
|
|
||||||
#define WNI_CFG_WOWLAN_MAX_MISSED_BEACON_STAMIN 0
|
|
||||||
#define WNI_CFG_WOWLAN_MAX_MISSED_BEACON_STAMAX 65535
|
|
||||||
#define WNI_CFG_WOWLAN_MAX_MISSED_BEACON_STADEF 40
|
|
||||||
|
|
||||||
#define WNI_CFG_WOWLAN_MAX_SLEEP_PERIOD_STAMIN 0
|
|
||||||
#define WNI_CFG_WOWLAN_MAX_SLEEP_PERIOD_STAMAX 65535
|
|
||||||
#define WNI_CFG_WOWLAN_MAX_SLEEP_PERIOD_STADEF 65535
|
|
||||||
|
|
||||||
#define WNI_CFG_IBSS_AUTO_BSSID_STAMIN 0
|
#define WNI_CFG_IBSS_AUTO_BSSID_STAMIN 0
|
||||||
#define WNI_CFG_IBSS_AUTO_BSSID_STAMAX 1
|
#define WNI_CFG_IBSS_AUTO_BSSID_STAMAX 1
|
||||||
#define WNI_CFG_IBSS_AUTO_BSSID_STADEF 1
|
#define WNI_CFG_IBSS_AUTO_BSSID_STADEF 1
|
||||||
@@ -962,10 +944,6 @@ enum {
|
|||||||
#define WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STAMAX 65535
|
#define WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STAMAX 65535
|
||||||
#define WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STADEF 20
|
#define WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STADEF 20
|
||||||
|
|
||||||
#define WNI_CFG_ENABLE_MC_ADDR_LIST_STAMIN 0
|
|
||||||
#define WNI_CFG_ENABLE_MC_ADDR_LIST_STAMAX 1
|
|
||||||
#define WNI_CFG_ENABLE_MC_ADDR_LIST_STADEF 0
|
|
||||||
|
|
||||||
#define WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED_STAMIN 0
|
#define WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED_STAMIN 0
|
||||||
#define WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED_STAMAX 1
|
#define WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED_STAMAX 1
|
||||||
#define WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED_STADEF 0
|
#define WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED_STADEF 0
|
||||||
|
@@ -2638,20 +2638,6 @@ NONE
|
|||||||
#ENUM ENABLE 1
|
#ENUM ENABLE 1
|
||||||
#ENUM DISABLE 0
|
#ENUM DISABLE 0
|
||||||
|
|
||||||
|
|
||||||
* *********************************************************
|
|
||||||
*
|
|
||||||
* Power Save Configuration
|
|
||||||
*
|
|
||||||
WNI_CFG_MAX_PS_POLL I 4 5
|
|
||||||
V RW NP
|
|
||||||
LIM
|
|
||||||
0 255 0
|
|
||||||
NV RW NP
|
|
||||||
LIM
|
|
||||||
0 255 0
|
|
||||||
|
|
||||||
|
|
||||||
WNI_CFG_NUM_BEACON_PER_RSSI_AVERAGE I 4 5
|
WNI_CFG_NUM_BEACON_PER_RSSI_AVERAGE I 4 5
|
||||||
V RW NP
|
V RW NP
|
||||||
LIM
|
LIM
|
||||||
@@ -2736,28 +2722,6 @@ NONE
|
|||||||
0 1 0
|
0 1 0
|
||||||
|
|
||||||
|
|
||||||
WNI_CFG_WOWLAN_MAX_MISSED_BEACON I 4 5
|
|
||||||
V RW NP
|
|
||||||
NONE
|
|
||||||
0 65535 40
|
|
||||||
NV RW NP
|
|
||||||
NONE
|
|
||||||
0 65535 40
|
|
||||||
|
|
||||||
*
|
|
||||||
* Timeout value in units of us. It requests
|
|
||||||
* hardware to unconditionally wake up after
|
|
||||||
* it has stayed in WoWLAN mode for some time.
|
|
||||||
*
|
|
||||||
WNI_CFG_WOWLAN_MAX_SLEEP_PERIOD I 4 5
|
|
||||||
V RW NP
|
|
||||||
NONE
|
|
||||||
0 65535 65535
|
|
||||||
NV RW NP
|
|
||||||
NONE
|
|
||||||
0 65535 65535
|
|
||||||
|
|
||||||
|
|
||||||
*
|
*
|
||||||
* BA timeout in TUs, set to 1 minute = approx 58593 TUs
|
* BA timeout in TUs, set to 1 minute = approx 58593 TUs
|
||||||
* 16 bit wide
|
* 16 bit wide
|
||||||
@@ -3642,19 +3606,6 @@ V RW NP
|
|||||||
HAL
|
HAL
|
||||||
1 65535 20
|
1 65535 20
|
||||||
|
|
||||||
*
|
|
||||||
* MC Addr List power control will be enabled if value is set to 1
|
|
||||||
*
|
|
||||||
*
|
|
||||||
*
|
|
||||||
WNI_CFG_ENABLE_MC_ADDR_LIST I 4 0
|
|
||||||
V RW NP
|
|
||||||
HAL
|
|
||||||
0 1 0
|
|
||||||
V RW NP
|
|
||||||
HAL
|
|
||||||
0 1 0
|
|
||||||
|
|
||||||
*
|
*
|
||||||
* UC Filter will be enabled if value is set to 1
|
* UC Filter will be enabled if value is set to 1
|
||||||
*
|
*
|
||||||
|
@@ -126,13 +126,8 @@ const char *cfg_get_string(uint16_t cfg_id)
|
|||||||
CASE_RETURN_STRING(WNI_CFG_VHT_160MHZ_UTILIZATION);
|
CASE_RETURN_STRING(WNI_CFG_VHT_160MHZ_UTILIZATION);
|
||||||
CASE_RETURN_STRING(WNI_CFG_MPDU_DENSITY);
|
CASE_RETURN_STRING(WNI_CFG_MPDU_DENSITY);
|
||||||
CASE_RETURN_STRING(WNI_CFG_MAX_RX_AMPDU_FACTOR);
|
CASE_RETURN_STRING(WNI_CFG_MAX_RX_AMPDU_FACTOR);
|
||||||
CASE_RETURN_STRING(WNI_CFG_MAX_PS_POLL);
|
|
||||||
CASE_RETURN_STRING(WNI_CFG_WOWLAN_UCAST_PATTERN_FILTER_ENABLE);
|
CASE_RETURN_STRING(WNI_CFG_WOWLAN_UCAST_PATTERN_FILTER_ENABLE);
|
||||||
CASE_RETURN_STRING(WNI_CFG_WOWLAN_CHANNEL_SWITCH_ENABLE);
|
CASE_RETURN_STRING(WNI_CFG_WOWLAN_CHANNEL_SWITCH_ENABLE);
|
||||||
CASE_RETURN_STRING(WNI_CFG_WOWLAN_DEAUTH_ENABLE);
|
|
||||||
CASE_RETURN_STRING(WNI_CFG_WOWLAN_DISASSOC_ENABLE);
|
|
||||||
CASE_RETURN_STRING(WNI_CFG_WOWLAN_MAX_MISSED_BEACON);
|
|
||||||
CASE_RETURN_STRING(WNI_CFG_WOWLAN_MAX_SLEEP_PERIOD);
|
|
||||||
CASE_RETURN_STRING(WNI_CFG_IBSS_AUTO_BSSID);
|
CASE_RETURN_STRING(WNI_CFG_IBSS_AUTO_BSSID);
|
||||||
CASE_RETURN_STRING(WNI_CFG_WPS_ENABLE);
|
CASE_RETURN_STRING(WNI_CFG_WPS_ENABLE);
|
||||||
CASE_RETURN_STRING(WNI_CFG_WPS_STATE);
|
CASE_RETURN_STRING(WNI_CFG_WPS_STATE);
|
||||||
@@ -148,7 +143,6 @@ const char *cfg_get_string(uint16_t cfg_id)
|
|||||||
CASE_RETURN_STRING(WNI_CFG_ASSOC_STA_LIMIT);
|
CASE_RETURN_STRING(WNI_CFG_ASSOC_STA_LIMIT);
|
||||||
CASE_RETURN_STRING(WNI_CFG_ENABLE_LTE_COEX);
|
CASE_RETURN_STRING(WNI_CFG_ENABLE_LTE_COEX);
|
||||||
CASE_RETURN_STRING(WNI_CFG_AP_KEEP_ALIVE_TIMEOUT);
|
CASE_RETURN_STRING(WNI_CFG_AP_KEEP_ALIVE_TIMEOUT);
|
||||||
CASE_RETURN_STRING(WNI_CFG_ENABLE_MC_ADDR_LIST);
|
|
||||||
CASE_RETURN_STRING(WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED);
|
CASE_RETURN_STRING(WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED);
|
||||||
CASE_RETURN_STRING(WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP);
|
CASE_RETURN_STRING(WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP);
|
||||||
CASE_RETURN_STRING(WNI_CFG_AP_LINK_MONITOR_TIMEOUT);
|
CASE_RETURN_STRING(WNI_CFG_AP_LINK_MONITOR_TIMEOUT);
|
||||||
|
@@ -493,12 +493,6 @@ cgstatic cfg_static[CFG_PARAM_MAX_NUM] = {
|
|||||||
WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMIN,
|
WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMIN,
|
||||||
WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMAX,
|
WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMAX,
|
||||||
WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMAX},
|
WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMAX},
|
||||||
{WNI_CFG_MAX_PS_POLL,
|
|
||||||
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT |
|
|
||||||
CFG_CTL_NTF_LIM,
|
|
||||||
WNI_CFG_MAX_PS_POLL_STAMIN,
|
|
||||||
WNI_CFG_MAX_PS_POLL_STAMAX,
|
|
||||||
WNI_CFG_MAX_PS_POLL_STADEF},
|
|
||||||
{WNI_CFG_SCAN_IN_POWERSAVE,
|
{WNI_CFG_SCAN_IN_POWERSAVE,
|
||||||
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT |
|
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT |
|
||||||
CFG_CTL_NTF_LIM,
|
CFG_CTL_NTF_LIM,
|
||||||
@@ -515,26 +509,6 @@ cgstatic cfg_static[CFG_PARAM_MAX_NUM] = {
|
|||||||
WNI_CFG_WOWLAN_CHANNEL_SWITCH_ENABLE_STAMIN,
|
WNI_CFG_WOWLAN_CHANNEL_SWITCH_ENABLE_STAMIN,
|
||||||
WNI_CFG_WOWLAN_CHANNEL_SWITCH_ENABLE_STAMAX,
|
WNI_CFG_WOWLAN_CHANNEL_SWITCH_ENABLE_STAMAX,
|
||||||
WNI_CFG_WOWLAN_CHANNEL_SWITCH_ENABLE_STADEF},
|
WNI_CFG_WOWLAN_CHANNEL_SWITCH_ENABLE_STADEF},
|
||||||
{WNI_CFG_WOWLAN_DEAUTH_ENABLE,
|
|
||||||
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
|
|
||||||
WNI_CFG_WOWLAN_DEAUTH_ENABLE_STAMIN,
|
|
||||||
WNI_CFG_WOWLAN_DEAUTH_ENABLE_STAMAX,
|
|
||||||
WNI_CFG_WOWLAN_DEAUTH_ENABLE_STADEF},
|
|
||||||
{WNI_CFG_WOWLAN_DISASSOC_ENABLE,
|
|
||||||
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
|
|
||||||
WNI_CFG_WOWLAN_DISASSOC_ENABLE_STAMIN,
|
|
||||||
WNI_CFG_WOWLAN_DISASSOC_ENABLE_STAMAX,
|
|
||||||
WNI_CFG_WOWLAN_DISASSOC_ENABLE_STADEF},
|
|
||||||
{WNI_CFG_WOWLAN_MAX_MISSED_BEACON,
|
|
||||||
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
|
|
||||||
WNI_CFG_WOWLAN_MAX_MISSED_BEACON_STAMIN,
|
|
||||||
WNI_CFG_WOWLAN_MAX_MISSED_BEACON_STAMAX,
|
|
||||||
WNI_CFG_WOWLAN_MAX_MISSED_BEACON_STADEF},
|
|
||||||
{WNI_CFG_WOWLAN_MAX_SLEEP_PERIOD,
|
|
||||||
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
|
|
||||||
WNI_CFG_WOWLAN_MAX_SLEEP_PERIOD_STAMIN,
|
|
||||||
WNI_CFG_WOWLAN_MAX_SLEEP_PERIOD_STAMAX,
|
|
||||||
WNI_CFG_WOWLAN_MAX_SLEEP_PERIOD_STADEF},
|
|
||||||
{WNI_CFG_IBSS_AUTO_BSSID,
|
{WNI_CFG_IBSS_AUTO_BSSID,
|
||||||
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
|
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
|
||||||
WNI_CFG_IBSS_AUTO_BSSID_STAMIN,
|
WNI_CFG_IBSS_AUTO_BSSID_STAMIN,
|
||||||
@@ -617,11 +591,6 @@ cgstatic cfg_static[CFG_PARAM_MAX_NUM] = {
|
|||||||
WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STAMIN,
|
WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STAMIN,
|
||||||
WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STAMAX,
|
WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STAMAX,
|
||||||
WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STADEF},
|
WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STADEF},
|
||||||
{WNI_CFG_ENABLE_MC_ADDR_LIST,
|
|
||||||
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
|
|
||||||
WNI_CFG_ENABLE_MC_ADDR_LIST_STAMIN,
|
|
||||||
WNI_CFG_ENABLE_MC_ADDR_LIST_STAMAX,
|
|
||||||
WNI_CFG_ENABLE_MC_ADDR_LIST_STADEF},
|
|
||||||
{WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED,
|
{WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED,
|
||||||
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
|
CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT,
|
||||||
WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED_STAMIN,
|
WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED_STAMIN,
|
||||||
|
@@ -693,7 +693,6 @@ struct wma_version_info {
|
|||||||
* @wow_enable_cmd_sent: is wow enable command sent to fw
|
* @wow_enable_cmd_sent: is wow enable command sent to fw
|
||||||
* @deauth_enable: is deauth wakeup enable/disable
|
* @deauth_enable: is deauth wakeup enable/disable
|
||||||
* @disassoc_enable: is disassoc wakeup enable/disable
|
* @disassoc_enable: is disassoc wakeup enable/disable
|
||||||
* @bmiss_enable: is bmiss wakeup enable/disable
|
|
||||||
* @gtk_pdev_enable: is GTK based wakeup enable/disable
|
* @gtk_pdev_enable: is GTK based wakeup enable/disable
|
||||||
* @gtk_err_enable: is GTK error wakeup enable/disable
|
* @gtk_err_enable: is GTK error wakeup enable/disable
|
||||||
* @lphb_cache: lphb cache
|
* @lphb_cache: lphb cache
|
||||||
@@ -707,7 +706,6 @@ struct wma_wow {
|
|||||||
bool wow_enable_cmd_sent;
|
bool wow_enable_cmd_sent;
|
||||||
bool deauth_enable;
|
bool deauth_enable;
|
||||||
bool disassoc_enable;
|
bool disassoc_enable;
|
||||||
bool bmiss_enable;
|
|
||||||
bool gtk_err_enable[WMA_MAX_SUPPORTED_BSS];
|
bool gtk_err_enable[WMA_MAX_SUPPORTED_BSS];
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -1110,8 +1108,6 @@ struct wma_valid_channels {
|
|||||||
* @pe_roam_synch_cb: pe callback for firmware Roam Sync events
|
* @pe_roam_synch_cb: pe callback for firmware Roam Sync events
|
||||||
* @wmi_cmd_rsp_wake_lock: wmi command response wake lock
|
* @wmi_cmd_rsp_wake_lock: wmi command response wake lock
|
||||||
* @wmi_cmd_rsp_runtime_lock: wmi command response bus lock
|
* @wmi_cmd_rsp_runtime_lock: wmi command response bus lock
|
||||||
* @apf_enabled: Is APF enabled in firmware?
|
|
||||||
* @apf_packet_filter_enable: Is APF filter enabled om host?
|
|
||||||
* @active_uc_apf_mode: Setting that determines how APF is applied in
|
* @active_uc_apf_mode: Setting that determines how APF is applied in
|
||||||
* active mode for uc packets
|
* active mode for uc packets
|
||||||
* @active_mc_bc_apf_mode: Setting that determines how APF is applied in
|
* @active_mc_bc_apf_mode: Setting that determines how APF is applied in
|
||||||
@@ -1261,8 +1257,6 @@ typedef struct {
|
|||||||
enum sir_roam_op_code reason);
|
enum sir_roam_op_code reason);
|
||||||
qdf_wake_lock_t wmi_cmd_rsp_wake_lock;
|
qdf_wake_lock_t wmi_cmd_rsp_wake_lock;
|
||||||
qdf_runtime_lock_t wmi_cmd_rsp_runtime_lock;
|
qdf_runtime_lock_t wmi_cmd_rsp_runtime_lock;
|
||||||
bool apf_enabled;
|
|
||||||
bool apf_packet_filter_enable;
|
|
||||||
enum active_apf_mode active_uc_apf_mode;
|
enum active_apf_mode active_uc_apf_mode;
|
||||||
enum active_apf_mode active_mc_bc_apf_mode;
|
enum active_apf_mode active_mc_bc_apf_mode;
|
||||||
struct wma_ini_config ini_config;
|
struct wma_ini_config ini_config;
|
||||||
|
@@ -198,7 +198,6 @@ struct wma_tgt_cfg {
|
|||||||
#endif
|
#endif
|
||||||
uint8_t ap_arpns_support;
|
uint8_t ap_arpns_support;
|
||||||
uint32_t fine_time_measurement_cap;
|
uint32_t fine_time_measurement_cap;
|
||||||
bool apf_enabled;
|
|
||||||
#ifdef FEATURE_WLAN_RA_FILTERING
|
#ifdef FEATURE_WLAN_RA_FILTERING
|
||||||
bool is_ra_rate_limit_enabled;
|
bool is_ra_rate_limit_enabled;
|
||||||
#endif
|
#endif
|
||||||
|
@@ -2419,23 +2419,11 @@ struct cdp_vdev *wma_vdev_attach(tp_wma_handle wma_handle,
|
|||||||
wma_handle->interfaces[vdev_id].ptrn_match_enable =
|
wma_handle->interfaces[vdev_id].ptrn_match_enable =
|
||||||
wma_handle->ptrn_match_enable_all_vdev ? true : false;
|
wma_handle->ptrn_match_enable_all_vdev ? true : false;
|
||||||
|
|
||||||
if (wlan_cfg_get_int(mac, WNI_CFG_WOWLAN_DEAUTH_ENABLE, &cfg_val)
|
wma_handle->wow.deauth_enable =
|
||||||
!= QDF_STATUS_SUCCESS)
|
ucfg_pmo_is_wowlan_deauth_enabled(wma_handle->psoc);
|
||||||
wma_handle->wow.deauth_enable = true;
|
|
||||||
else
|
|
||||||
wma_handle->wow.deauth_enable = cfg_val ? true : false;
|
|
||||||
|
|
||||||
if (wlan_cfg_get_int(mac, WNI_CFG_WOWLAN_DISASSOC_ENABLE, &cfg_val)
|
wma_handle->wow.disassoc_enable =
|
||||||
!= QDF_STATUS_SUCCESS)
|
ucfg_pmo_is_wowlan_disassoc_enabled(wma_handle->psoc);
|
||||||
wma_handle->wow.disassoc_enable = true;
|
|
||||||
else
|
|
||||||
wma_handle->wow.disassoc_enable = cfg_val ? true : false;
|
|
||||||
|
|
||||||
if (wlan_cfg_get_int(mac, WNI_CFG_WOWLAN_MAX_MISSED_BEACON, &cfg_val)
|
|
||||||
!= QDF_STATUS_SUCCESS)
|
|
||||||
wma_handle->wow.bmiss_enable = true;
|
|
||||||
else
|
|
||||||
wma_handle->wow.bmiss_enable = cfg_val ? true : false;
|
|
||||||
|
|
||||||
qdf_mem_copy(wma_handle->interfaces[vdev_id].addr,
|
qdf_mem_copy(wma_handle->interfaces[vdev_id].addr,
|
||||||
self_sta_req->self_mac_addr,
|
self_sta_req->self_mac_addr,
|
||||||
|
@@ -3138,6 +3138,7 @@ QDF_STATUS wma_open(struct wlan_objmgr_psoc *psoc,
|
|||||||
bool val = 0;
|
bool val = 0;
|
||||||
void *cds_context;
|
void *cds_context;
|
||||||
target_resource_config *wlan_res_cfg;
|
target_resource_config *wlan_res_cfg;
|
||||||
|
enum pmo_wow_enable_type wow_enable;
|
||||||
|
|
||||||
WMA_LOGD("%s: Enter", __func__);
|
WMA_LOGD("%s: Enter", __func__);
|
||||||
|
|
||||||
@@ -3292,10 +3293,9 @@ QDF_STATUS wma_open(struct wlan_objmgr_psoc *psoc,
|
|||||||
|
|
||||||
wma_handle->max_station = cds_cfg->max_station;
|
wma_handle->max_station = cds_cfg->max_station;
|
||||||
wma_handle->max_bssid = cds_cfg->max_bssid;
|
wma_handle->max_bssid = cds_cfg->max_bssid;
|
||||||
wma_handle->ssdp = cds_cfg->ssdp;
|
wma_handle->ssdp = ucfg_pmo_is_ssdp_enabled(wma_handle->psoc);
|
||||||
wma_handle->enable_mc_list = cds_cfg->enable_mc_list;
|
wma_handle->enable_mc_list =
|
||||||
wma_handle->apf_packet_filter_enable =
|
ucfg_pmo_is_mc_addr_list_enabled(wma_handle->psoc);
|
||||||
cds_cfg->apf_packet_filter_enable;
|
|
||||||
wma_handle->active_uc_apf_mode = cds_cfg->active_uc_apf_mode;
|
wma_handle->active_uc_apf_mode = cds_cfg->active_uc_apf_mode;
|
||||||
wma_handle->active_mc_bc_apf_mode = cds_cfg->active_mc_bc_apf_mode;
|
wma_handle->active_mc_bc_apf_mode = cds_cfg->active_mc_bc_apf_mode;
|
||||||
wma_handle->link_stats_results = NULL;
|
wma_handle->link_stats_results = NULL;
|
||||||
@@ -3506,10 +3506,12 @@ QDF_STATUS wma_open(struct wlan_objmgr_psoc *psoc,
|
|||||||
* 3 - Legacy Powersave + Deepsleep Enabled
|
* 3 - Legacy Powersave + Deepsleep Enabled
|
||||||
* 4 - QPower + Deepsleep Enabled
|
* 4 - QPower + Deepsleep Enabled
|
||||||
*/
|
*/
|
||||||
wma_handle->powersave_mode = cds_cfg->powersave_offload_enabled;
|
wma_handle->powersave_mode =
|
||||||
|
ucfg_pmo_power_save_offload_enabled(wma_handle->psoc);
|
||||||
wma_handle->staMaxLIModDtim = cds_cfg->sta_maxlimod_dtim;
|
wma_handle->staMaxLIModDtim = cds_cfg->sta_maxlimod_dtim;
|
||||||
wma_handle->staModDtim = cds_cfg->sta_mod_dtim;
|
wma_handle->staModDtim = ucfg_pmo_get_sta_mod_dtim(wma_handle->psoc);
|
||||||
wma_handle->staDynamicDtim = cds_cfg->sta_dynamic_dtim;
|
wma_handle->staDynamicDtim =
|
||||||
|
ucfg_pmo_get_sta_dynamic_dtim(wma_handle->psoc);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Value of cds_cfg->wow_enable can be,
|
* Value of cds_cfg->wow_enable can be,
|
||||||
@@ -3519,10 +3521,11 @@ QDF_STATUS wma_open(struct wlan_objmgr_psoc *psoc,
|
|||||||
* 3 - Enable both magic patter and pattern byte match on
|
* 3 - Enable both magic patter and pattern byte match on
|
||||||
* all interfaces.
|
* all interfaces.
|
||||||
*/
|
*/
|
||||||
|
wow_enable = ucfg_pmo_get_wow_enable(wma_handle->psoc);
|
||||||
wma_handle->wow.magic_ptrn_enable =
|
wma_handle->wow.magic_ptrn_enable =
|
||||||
(cds_cfg->wow_enable & 0x01) ? true : false;
|
(wow_enable & 0x01) ? true : false;
|
||||||
wma_handle->ptrn_match_enable_all_vdev =
|
wma_handle->ptrn_match_enable_all_vdev =
|
||||||
(cds_cfg->wow_enable & 0x02) ? true : false;
|
(wow_enable & 0x02) ? true : false;
|
||||||
|
|
||||||
/* register for install key completion event */
|
/* register for install key completion event */
|
||||||
wmi_unified_register_event_handler(wma_handle->wmi_handle,
|
wmi_unified_register_event_handler(wma_handle->wmi_handle,
|
||||||
@@ -3599,7 +3602,7 @@ QDF_STATUS wma_open(struct wlan_objmgr_psoc *psoc,
|
|||||||
wma_handle->bandcapability = cds_cfg->bandcapability;
|
wma_handle->bandcapability = cds_cfg->bandcapability;
|
||||||
|
|
||||||
/* Register PWR_SAVE_FAIL event only in case of recovery(1) */
|
/* Register PWR_SAVE_FAIL event only in case of recovery(1) */
|
||||||
if (cds_cfg->auto_power_save_fail_mode ==
|
if (ucfg_pmo_get_auto_power_fail_mode(wma_handle->psoc) ==
|
||||||
PMO_FW_TO_SEND_WOW_IND_ON_PWR_FAILURE) {
|
PMO_FW_TO_SEND_WOW_IND_ON_PWR_FAILURE) {
|
||||||
wmi_unified_register_event_handler(wma_handle->wmi_handle,
|
wmi_unified_register_event_handler(wma_handle->wmi_handle,
|
||||||
wmi_pdev_chip_pwr_save_failure_detect_event_id,
|
wmi_pdev_chip_pwr_save_failure_detect_event_id,
|
||||||
@@ -5557,7 +5560,6 @@ static void wma_update_hdd_cfg(tp_wma_handle wma_handle)
|
|||||||
tgt_cfg.lpss_support = wma_handle->lpss_support;
|
tgt_cfg.lpss_support = wma_handle->lpss_support;
|
||||||
#endif /* WLAN_FEATURE_LPSS */
|
#endif /* WLAN_FEATURE_LPSS */
|
||||||
tgt_cfg.ap_arpns_support = wma_handle->ap_arpns_support;
|
tgt_cfg.ap_arpns_support = wma_handle->ap_arpns_support;
|
||||||
tgt_cfg.apf_enabled = wma_handle->apf_enabled;
|
|
||||||
tgt_cfg.dfs_cac_offload = wma_handle->is_dfs_offloaded;
|
tgt_cfg.dfs_cac_offload = wma_handle->is_dfs_offloaded;
|
||||||
tgt_cfg.rcpi_enabled = wma_handle->rcpi_enabled;
|
tgt_cfg.rcpi_enabled = wma_handle->rcpi_enabled;
|
||||||
wma_update_ra_rate_limit(wma_handle, &tgt_cfg);
|
wma_update_ra_rate_limit(wma_handle, &tgt_cfg);
|
||||||
@@ -5651,11 +5653,11 @@ static void wma_init_scan_fw_mode_config(struct wlan_objmgr_psoc *psoc,
|
|||||||
#ifdef FEATURE_WLAN_RA_FILTERING
|
#ifdef FEATURE_WLAN_RA_FILTERING
|
||||||
static void wma_update_ra_limit(tp_wma_handle wma_handle)
|
static void wma_update_ra_limit(tp_wma_handle wma_handle)
|
||||||
{
|
{
|
||||||
if (wma_handle->apf_enabled)
|
if (ucfg_pmo_is_apf_enabled(wma_handle->psoc))
|
||||||
wma_handle->IsRArateLimitEnabled = false;
|
wma_handle->IsRArateLimitEnabled = false;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
static void wma_update_ra__limit(tp_wma_handle handle)
|
static void wma_update_ra_limit(tp_wma_handle handle)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@@ -5885,8 +5887,6 @@ int wma_rx_service_ready_event(void *handle, uint8_t *cmd_param_info,
|
|||||||
wma_handle->ap_arpns_support =
|
wma_handle->ap_arpns_support =
|
||||||
wmi_service_enabled(wmi_handle, wmi_service_ap_arpns_offload);
|
wmi_service_enabled(wmi_handle, wmi_service_ap_arpns_offload);
|
||||||
|
|
||||||
wma_handle->apf_enabled = (wma_handle->apf_packet_filter_enable &&
|
|
||||||
wmi_service_enabled(wmi_handle, wmi_service_apf_offload));
|
|
||||||
wma_update_ra_limit(wma_handle);
|
wma_update_ra_limit(wma_handle);
|
||||||
|
|
||||||
if (wmi_service_enabled(wmi_handle, wmi_service_csa_offload)) {
|
if (wmi_service_enabled(wmi_handle, wmi_service_csa_offload)) {
|
||||||
|
@@ -52,6 +52,7 @@
|
|||||||
#include "ol_fw.h"
|
#include "ol_fw.h"
|
||||||
|
|
||||||
#include "wma_internal.h"
|
#include "wma_internal.h"
|
||||||
|
#include "wlan_pmo_ucfg_api.h"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* wma_unified_modem_power_state() - set modem power state to fw
|
* wma_unified_modem_power_state() - set modem power state to fw
|
||||||
@@ -583,28 +584,20 @@ static QDF_STATUS wma_set_force_sleep(tp_wma_handle wma,
|
|||||||
rx_wake_policy = WMI_STA_PS_RX_WAKE_POLICY_POLL_UAPSD;
|
rx_wake_policy = WMI_STA_PS_RX_WAKE_POLICY_POLL_UAPSD;
|
||||||
tx_wake_threshold = WMI_STA_PS_TX_WAKE_THRESHOLD_NEVER;
|
tx_wake_threshold = WMI_STA_PS_TX_WAKE_THRESHOLD_NEVER;
|
||||||
|
|
||||||
if (wlan_cfg_get_int(mac, WNI_CFG_MAX_PS_POLL,
|
if (ucfg_pmo_get_max_ps_poll(mac->psoc))
|
||||||
&cfg_data_val) != QDF_STATUS_SUCCESS) {
|
pspoll_count =
|
||||||
QDF_TRACE(QDF_MODULE_ID_WMA, QDF_TRACE_LEVEL_ERROR,
|
(uint32_t)ucfg_pmo_get_max_ps_poll(mac->psoc);
|
||||||
"Failed to get value for WNI_CFG_MAX_PS_POLL");
|
|
||||||
}
|
|
||||||
if (cfg_data_val)
|
|
||||||
pspoll_count = (uint32_t) cfg_data_val;
|
|
||||||
else
|
else
|
||||||
pspoll_count = WMA_DEFAULT_MAX_PSPOLL_BEFORE_WAKE;
|
pspoll_count = WMA_DEFAULT_MAX_PSPOLL_BEFORE_WAKE;
|
||||||
|
|
||||||
psmode = WMI_STA_PS_MODE_ENABLED;
|
psmode = WMI_STA_PS_MODE_ENABLED;
|
||||||
} else {
|
} else {
|
||||||
/* Ps Poll Wake Policy */
|
/* Ps Poll Wake Policy */
|
||||||
if (wlan_cfg_get_int(mac, WNI_CFG_MAX_PS_POLL,
|
if (ucfg_pmo_get_max_ps_poll(mac->psoc)) {
|
||||||
&cfg_data_val) != QDF_STATUS_SUCCESS) {
|
|
||||||
QDF_TRACE(QDF_MODULE_ID_WMA, QDF_TRACE_LEVEL_ERROR,
|
|
||||||
"Failed to get value for WNI_CFG_MAX_PS_POLL");
|
|
||||||
}
|
|
||||||
if (cfg_data_val) {
|
|
||||||
/* Ps Poll is enabled */
|
/* Ps Poll is enabled */
|
||||||
rx_wake_policy = WMI_STA_PS_RX_WAKE_POLICY_POLL_UAPSD;
|
rx_wake_policy = WMI_STA_PS_RX_WAKE_POLICY_POLL_UAPSD;
|
||||||
pspoll_count = (uint32_t) cfg_data_val;
|
pspoll_count =
|
||||||
|
(uint32_t)ucfg_pmo_get_max_ps_poll(mac->psoc);
|
||||||
tx_wake_threshold = WMI_STA_PS_TX_WAKE_THRESHOLD_NEVER;
|
tx_wake_threshold = WMI_STA_PS_TX_WAKE_THRESHOLD_NEVER;
|
||||||
} else {
|
} else {
|
||||||
rx_wake_policy = WMI_STA_PS_RX_WAKE_POLICY_WAKE;
|
rx_wake_policy = WMI_STA_PS_RX_WAKE_POLICY_WAKE;
|
||||||
|
Fai riferimento in un nuovo problema
Block a user