qcacmn: MLME tx/rx ops for DA scan
- DA scan state machine is moved to LMAC from UMAC - Functionalities in UMAC required by LMAC scan are accessed through tx ops and rx ops framework - These functionalities are specific to DA, hence distinguished by having them in seperate mlme_ops structure instead of mixing with common scan_ops structure FR 38661: UMAC Convergence: Direct Attach Separation Change-Id: I5177f20d41b7c1788629bcf10d60e4ad9642e0a6 CRs-Fixed: 2037656
This commit is contained in:

committed by
snandini

parent
57c42a193c
commit
314a0f7786
@@ -20,6 +20,7 @@
|
||||
#ifndef _WLAN_LMAC_IF_DEF_H_
|
||||
#define _WLAN_LMAC_IF_DEF_H_
|
||||
|
||||
#include <qdf_time.h>
|
||||
#include "qdf_status.h"
|
||||
#include "wlan_objmgr_cmn.h"
|
||||
#ifdef DFS_COMPONENT_ENABLE
|
||||
@@ -95,6 +96,13 @@ struct wlan_lmac_if_scan_tx_ops {
|
||||
};
|
||||
|
||||
|
||||
struct wlan_lmac_if_mlme_tx_ops {
|
||||
void (*scan_sta_power_events)(struct wlan_objmgr_pdev *pdev,
|
||||
int event_type, int event_status);
|
||||
void (*scan_connection_lost)(struct wlan_objmgr_pdev *pdev);
|
||||
void (*scan_end)(struct wlan_objmgr_pdev *pdev);
|
||||
};
|
||||
|
||||
/**
|
||||
* struct wlan_lmac_if_scan_rx_ops - south bound rx function pointers for scan
|
||||
* @scan_ev_handler: scan event handler
|
||||
@@ -559,6 +567,7 @@ struct wlan_lmac_if_tx_ops {
|
||||
#ifdef CONVERGED_TDLS_ENABLE
|
||||
struct wlan_lmac_if_tdls_tx_ops tdls_tx_ops;
|
||||
#endif
|
||||
struct wlan_lmac_if_mlme_tx_ops mops;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -836,6 +845,64 @@ struct wlan_lmac_if_dfs_rx_ops {
|
||||
#endif
|
||||
};
|
||||
|
||||
struct wlan_lmac_if_mlme_rx_ops {
|
||||
|
||||
void (*wlan_mlme_scan_start)(struct wlan_objmgr_pdev *pdev);
|
||||
void (*wlan_mlme_register_pm_event_handler)(
|
||||
struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id);
|
||||
void (*wlan_mlme_unregister_pm_event_handler)(
|
||||
struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id);
|
||||
QDF_STATUS (*wlan_mlme_register_vdev_event_handler)(
|
||||
struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id);
|
||||
QDF_STATUS (*wlan_mlme_unregister_vdev_event_handler)(
|
||||
struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id);
|
||||
int (*wlan_mlme_send_probe_request)(struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id,
|
||||
u_int8_t *destination,
|
||||
u_int8_t *bssid,
|
||||
u_int8_t *ssid,
|
||||
u_int32_t ssidlen,
|
||||
u_int8_t *ie,
|
||||
size_t len);
|
||||
int (*wlan_mlme_resmgr_request_bsschan)(struct wlan_objmgr_pdev *pdev);
|
||||
int (*wlan_mlme_resmgr_request_offchan)(struct wlan_objmgr_pdev *pdev,
|
||||
u_int32_t freq,
|
||||
u_int32_t flags,
|
||||
u_int32_t estimated_offchannel_time);
|
||||
int (*wlan_mlme_resmgr_active)(struct wlan_objmgr_pdev *pdev);
|
||||
int (*wlan_mlme_get_cw_inter_found)(struct wlan_objmgr_pdev *pdev);
|
||||
int (*wlan_mlme_set_home_channel)(struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id);
|
||||
int (*wlan_mlme_set_channel)(struct wlan_objmgr_pdev *pdev,
|
||||
u_int32_t freq,
|
||||
u_int32_t flags);
|
||||
void (*wlan_mlme_start_record_stats)(struct wlan_objmgr_pdev *pdev);
|
||||
void (*wlan_mlme_end_record_stats)(struct wlan_objmgr_pdev *pdev);
|
||||
int (*wlan_mlme_get_enh_rpt_ind)(struct wlan_objmgr_pdev *pdev);
|
||||
int (*wlan_mlme_pause)(struct wlan_objmgr_pdev *pdev);
|
||||
void (*wlan_mlme_unpause)(struct wlan_objmgr_pdev *pdev);
|
||||
int (*wlan_mlme_vdev_pause_control)(struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id);
|
||||
int (*wlan_mlme_sta_power_pause)(
|
||||
struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id,
|
||||
u_int32_t timeout);
|
||||
int (*wlan_mlme_sta_power_unpause)(struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id);
|
||||
int (*wlan_mlme_set_vdev_sleep)(struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id);
|
||||
int (*wlan_mlme_set_vdev_wakeup)(struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id);
|
||||
qdf_time_t (*wlan_mlme_get_traffic_indication_timestamp)(
|
||||
struct wlan_objmgr_pdev *pdev);
|
||||
int (*wlan_mlme_get_acs_in_progress)(struct wlan_objmgr_pdev *pdev,
|
||||
uint8_t vdev_id);
|
||||
void (*wlan_mlme_end_scan)(struct wlan_objmgr_pdev *pdev);
|
||||
};
|
||||
/**
|
||||
* struct wlan_lmac_if_rx_ops - south bound rx function pointers
|
||||
* @mgmt_txrx_tx_ops: mgmt txrx rx ops
|
||||
@@ -877,6 +944,7 @@ struct wlan_lmac_if_rx_ops {
|
||||
#ifdef CONVERGED_TDLS_ENABLE
|
||||
struct wlan_lmac_if_tdls_rx_ops tdls_rx_ops;
|
||||
#endif
|
||||
struct wlan_lmac_if_mlme_rx_ops mops;
|
||||
};
|
||||
|
||||
/* Function pointer to call legacy tx_ops registration in OL/WMA.
|
||||
|
Reference in New Issue
Block a user