qcacmn: Add WMI changes for PNO for converged scan

Add WMI changes for PNO for converged scan

Change-Id: I8133030502f63f458164f705aa88ebadf446ae60
CRs-Fixed: 1095299
This commit is contained in:
Abhishek Singh
2017-03-03 22:09:07 +05:30
committed by Sandeep Puligilla
parent 25c4702998
commit d418466478
3 changed files with 2 additions and 105 deletions

View File

@@ -654,8 +654,7 @@ QDF_STATUS wmi_unified_pno_stop_cmd(void *wmi_hdl, uint8_t vdev_id);
#ifdef FEATURE_WLAN_SCAN_PNO
QDF_STATUS wmi_unified_pno_start_cmd(void *wmi_hdl,
struct pno_scan_req_params *pno,
uint32_t *gchannel_freq_list);
struct pno_scan_req_params *pno);
#endif
QDF_STATUS wmi_unified_set_ric_req_cmd(void *wmi_hdl, void *msg,

View File

@@ -2081,105 +2081,6 @@ struct extscan_cached_result_params {
bool flush;
};
/* Set PNO */
#define WMI_PNO_MAX_NETW_CHANNELS 26
#define WMI_PNO_MAX_NETW_CHANNELS_EX 60
#define WMI_PNO_MAX_SUPP_NETWORKS 16
/*
* size based of dot11 declaration without extra IEs as we will not carry those
* for PNO
*/
#define WMI_PNO_MAX_PB_REQ_SIZE 450
#define WMI_PNO_24G_DEFAULT_CH 1
#define WMI_PNO_5G_DEFAULT_CH 36
/**
* enum pno_mode - pno mode types
* @WMI_PNO_MODE_IMMEDIATE: immidiate mode
* @WMI_PNO_MODE_ON_SUSPEND: suspend on mode
* @WMI_PNO_MODE_ON_RESUME: resume on mode
* @WMI_PNO_MODE_MAX: max range
*/
enum pno_mode {
WMI_PNO_MODE_IMMEDIATE,
WMI_PNO_MODE_ON_SUSPEND,
WMI_PNO_MODE_ON_RESUME,
WMI_PNO_MODE_MAX
};
/**
* struct pno_nw_type - pno nw type
* @ssid: mac ssid
* @authentication: authentication type
* @encryption: encryption type
* @bcastNetwType: broadcast nw type
* @ucChannelCount: uc channel count
* @aChannels: pno channel
* @rssiThreshold: rssi threshold
*/
struct pno_nw_type {
struct mac_ssid ssid;
uint32_t authentication;
uint32_t encryption;
uint32_t bcastNetwType;
uint8_t ucChannelCount;
uint8_t aChannels[WMI_PNO_MAX_NETW_CHANNELS_EX];
int32_t rssiThreshold;
};
/**
* struct pno_scan_req_params - PNO Scan request structure
* @enable: flag to enable or disable
* @modePNO: PNO Mode
* @ucNetworksCount: Number of networks
* @aNetworks: Preferred network list
* @sessionId: Session identifier
* @fast_scan_period: Fast Scan period
* @slow_scan_period: Slow scan period
* @delay_start_time: delay in seconds to use before starting the first scan
* @fast_scan_max_cycles: Fast scan max cycles
* @us24GProbeTemplateLen: 2.4G probe template length
* @p24GProbeTemplate: 2.4G probe template
* @us5GProbeTemplateLen: 5G probe template length
* @p5GProbeTemplate: 5G probe template
* @pno_channel_prediction: PNO channel prediction feature status
* @top_k_num_of_channels: top K number of channels are used for tanimoto
* distance calculation.
* @stationary_thresh: threshold value to determine that the STA is stationary.
* @pnoscan_adaptive_dwell_mode: adaptive dwelltime mode for pno scan
* @channel_prediction_full_scan: periodic timer upon which a full scan needs
* to be triggered.
*/
struct pno_scan_req_params {
uint8_t enable;
enum pno_mode modePNO;
uint8_t ucNetworksCount;
struct pno_nw_type aNetworks[WMI_PNO_MAX_SUPP_NETWORKS];
uint8_t sessionId;
uint32_t fast_scan_period;
uint32_t slow_scan_period;
uint32_t delay_start_time;
uint8_t fast_scan_max_cycles;
uint32_t active_min_time;
uint32_t active_max_time;
uint32_t passive_min_time;
uint32_t passive_max_time;
uint16_t us24GProbeTemplateLen;
uint8_t p24GProbeTemplate[WMI_PNO_MAX_PB_REQ_SIZE];
uint16_t us5GProbeTemplateLen;
uint8_t p5GProbeTemplate[WMI_PNO_MAX_PB_REQ_SIZE];
#ifdef FEATURE_WLAN_SCAN_PNO
bool pno_channel_prediction;
uint8_t top_k_num_of_channels;
uint8_t stationary_thresh;
enum wmi_dwelltime_adaptive_mode pnoscan_adaptive_dwell_mode;
uint32_t channel_prediction_full_scan;
#endif
};
#define WMI_WLAN_EXTSCAN_MAX_CHANNELS 36
#define WMI_WLAN_EXTSCAN_MAX_BUCKETS 16
#define WMI_WLAN_EXTSCAN_MAX_HOTLIST_APS 128

View File

@@ -455,11 +455,8 @@ QDF_STATUS (*send_csa_offload_enable_cmd)(wmi_unified_t wmi_handle,
QDF_STATUS (*send_pno_stop_cmd)(wmi_unified_t wmi_handle, uint8_t vdev_id);
#ifdef FEATURE_WLAN_SCAN_PNO
QDF_STATUS (*send_pno_start_cmd)(wmi_unified_t wmi_handle,
struct pno_scan_req_params *pno,
uint32_t *gchannel_freq_list);
#endif
struct pno_scan_req_params *pno);
QDF_STATUS (*send_ipa_offload_control_cmd)(wmi_unified_t wmi_handle,
struct ipa_offload_control_params *ipa_offload);