qcacmn: Add pmo tx ops and rx ops in lmac interface
Add pmo tx ops and rx ops in lmac interface. Change-Id: I78b38c1a199c0dd89be9805be5a4f85f8da3798d CRs-Fixed: 2002390
This commit is contained in:
@@ -43,7 +43,6 @@ struct wlan_lmac_if_mgmt_txrx_tx_ops {
|
|||||||
qdf_nbuf_t nbuf);
|
qdf_nbuf_t nbuf);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* struct wlan_lmac_if_scan_tx_ops - south bound tx function pointers for scan
|
* struct wlan_lmac_if_scan_tx_ops - south bound tx function pointers for scan
|
||||||
* @scan_start: function to start scan
|
* @scan_start: function to start scan
|
||||||
@@ -77,6 +76,68 @@ struct wlan_lmac_if_scan_rx_ops {
|
|||||||
struct scan_event_info *event_info);
|
struct scan_event_info *event_info);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#ifdef WLAN_PMO_ENABLE
|
||||||
|
|
||||||
|
/* fwd declarations for pmo tx ops */
|
||||||
|
struct pmo_arp_offload_params;
|
||||||
|
struct pmo_ns_offload_params;
|
||||||
|
struct pmo_gtk_req;
|
||||||
|
struct pmo_action_wakeup_set_params;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* struct wlan_lmac_if_pmo_tx_ops - structure of tx function
|
||||||
|
* pointers for pmo component
|
||||||
|
* @send_arp_offload_req: fp to send arp offload request
|
||||||
|
* @send_ns_offload_req: fp to send ns offload request
|
||||||
|
* @send_enable_wakeup_event_req: fp to send enable wow wakeup events req
|
||||||
|
* @send_disable_wakeup_event_req: fp to send disable wow wakeup events req
|
||||||
|
* @send_add_wow_pattern: fp to send wow pattern request
|
||||||
|
* @send_enhance_mc_offload_req: fp to send enhanced multicast offload request
|
||||||
|
* @send_set_mc_filter_req: fp to send set mc filter request
|
||||||
|
* @send_clear_mc_filter_req: fp to send clear mc filter request
|
||||||
|
* @send_ra_filter_req: fp to send ra filter request
|
||||||
|
* @send_gtk_offload_req: fp to send gtk offload request command
|
||||||
|
* @send_get_gtk_rsp_cmd: fp to send get gtk response request cmd to firmware
|
||||||
|
* @send_action_frame_pattern_req: fp to send wow action frame patterns request
|
||||||
|
*/
|
||||||
|
struct wlan_lmac_if_pmo_tx_ops {
|
||||||
|
QDF_STATUS(*send_arp_offload_req)(struct wlan_objmgr_vdev *vdev,
|
||||||
|
struct pmo_arp_offload_params *arp_offload_req,
|
||||||
|
struct pmo_ns_offload_params *ns_offload_req);
|
||||||
|
QDF_STATUS(*send_ns_offload_req)(struct wlan_objmgr_vdev *vdev,
|
||||||
|
struct pmo_arp_offload_params *arp_offload_req,
|
||||||
|
struct pmo_ns_offload_params *ns_offload_req);
|
||||||
|
QDF_STATUS(*send_enable_wow_wakeup_event_req)(
|
||||||
|
struct wlan_objmgr_vdev *vdev,
|
||||||
|
uint32_t bitmap);
|
||||||
|
QDF_STATUS(*send_disable_wow_wakeup_event_req)(
|
||||||
|
struct wlan_objmgr_vdev *vdev,
|
||||||
|
uint32_t bitmap);
|
||||||
|
QDF_STATUS(*send_add_wow_pattern)(
|
||||||
|
struct wlan_objmgr_vdev *vdev,
|
||||||
|
uint8_t ptrn_id, const uint8_t *ptrn, uint8_t ptrn_len,
|
||||||
|
uint8_t ptrn_offset, const uint8_t *mask,
|
||||||
|
uint8_t mask_len, bool user);
|
||||||
|
QDF_STATUS(*send_enhance_mc_offload_req)(
|
||||||
|
struct wlan_objmgr_vdev *vdev, bool enable);
|
||||||
|
QDF_STATUS(*send_set_mc_filter_req)(
|
||||||
|
struct wlan_objmgr_vdev *vdev,
|
||||||
|
struct qdf_mac_addr multicast_addr);
|
||||||
|
QDF_STATUS(*send_clear_mc_filter_req)(
|
||||||
|
struct wlan_objmgr_vdev *vdev,
|
||||||
|
struct qdf_mac_addr multicast_addr);
|
||||||
|
QDF_STATUS(*send_ra_filter_req)(
|
||||||
|
struct wlan_objmgr_vdev *vdev,
|
||||||
|
uint8_t default_pattern, uint16_t rate_limit_interval);
|
||||||
|
QDF_STATUS(*send_gtk_offload_req)(
|
||||||
|
struct wlan_objmgr_vdev *vdev,
|
||||||
|
struct pmo_gtk_req *gtk_offload_req);
|
||||||
|
QDF_STATUS(*send_get_gtk_rsp_cmd)(struct wlan_objmgr_vdev *vdev);
|
||||||
|
QDF_STATUS(*send_action_frame_pattern_req)(
|
||||||
|
struct wlan_objmgr_vdev *vdev,
|
||||||
|
struct pmo_action_wakeup_set_params *ip_cmd);
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* struct wlan_lmac_if_tx_ops - south bound tx function pointers
|
* struct wlan_lmac_if_tx_ops - south bound tx function pointers
|
||||||
@@ -96,6 +157,9 @@ struct wlan_lmac_if_tx_ops {
|
|||||||
*/
|
*/
|
||||||
struct wlan_lmac_if_mgmt_txrx_tx_ops mgmt_txrx_tx_ops;
|
struct wlan_lmac_if_mgmt_txrx_tx_ops mgmt_txrx_tx_ops;
|
||||||
struct wlan_lmac_if_scan_tx_ops scan;
|
struct wlan_lmac_if_scan_tx_ops scan;
|
||||||
|
#ifdef WLAN_PMO_ENABLE
|
||||||
|
struct wlan_lmac_if_pmo_tx_ops pmo_tx_ops;
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -128,6 +192,22 @@ struct wlan_lmac_if_mgmt_txrx_rx_ops {
|
|||||||
uint32_t desc_id);
|
uint32_t desc_id);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#ifdef WLAN_PMO_ENABLE
|
||||||
|
|
||||||
|
/* fwd declarations for pmo rx ops */
|
||||||
|
struct pmo_gtk_rsp_params;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* struct wlan_lmac_if_pmo_rx_ops - structure of rx function
|
||||||
|
* pointers for pmo component
|
||||||
|
* @gtk_rsp_event: function pointer to handle gtk rsp event from fwr
|
||||||
|
*/
|
||||||
|
struct wlan_lmac_if_pmo_rx_ops {
|
||||||
|
QDF_STATUS(*rx_gtk_rsp_event)(struct wlan_objmgr_psoc *psoc,
|
||||||
|
struct pmo_gtk_rsp_params *rsp_param);
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* struct wlan_lmac_if_rx_ops - south bound rx function pointers
|
* struct wlan_lmac_if_rx_ops - south bound rx function pointers
|
||||||
* @arg1
|
* @arg1
|
||||||
@@ -144,6 +224,9 @@ struct wlan_lmac_if_rx_ops {
|
|||||||
*/
|
*/
|
||||||
struct wlan_lmac_if_mgmt_txrx_rx_ops mgmt_txrx_rx_ops;
|
struct wlan_lmac_if_mgmt_txrx_rx_ops mgmt_txrx_rx_ops;
|
||||||
struct wlan_lmac_if_scan_rx_ops scan;
|
struct wlan_lmac_if_scan_rx_ops scan;
|
||||||
|
#ifdef WLAN_PMO_ENABLE
|
||||||
|
struct wlan_lmac_if_pmo_rx_ops pmo_rx_ops;
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Function pointer to call legacy tx_ops registration in OL/WMA.
|
/* Function pointer to call legacy tx_ops registration in OL/WMA.
|
||||||
|
Reference in New Issue
Block a user