|
@@ -20,9 +20,27 @@
|
|
|
#ifndef _WLAN_LMAC_IF_DEF_H_
|
|
|
#define _WLAN_LMAC_IF_DEF_H_
|
|
|
|
|
|
+#include "qdf_status.h"
|
|
|
+#include "wlan_objmgr_cmn.h"
|
|
|
+
|
|
|
/* Number of dev type: Direct attach and Offload */
|
|
|
#define MAX_DEV_TYPE 2
|
|
|
|
|
|
+
|
|
|
+/**
|
|
|
+ * struct wlan_lmac_if_mgmt_txrx_tx_ops - structure of tx function
|
|
|
+ * pointers for mgmt txrx component
|
|
|
+ * @mgmt_tx_send: function pointer to transmit mgmt tx frame
|
|
|
+ * @beacon_send: function pointer to transmit beacon frame
|
|
|
+ */
|
|
|
+struct wlan_lmac_if_mgmt_txrx_tx_ops {
|
|
|
+ QDF_STATUS (*mgmt_tx_send)(struct wlan_objmgr_vdev *vdev,
|
|
|
+ qdf_nbuf_t nbuf, u_int32_t desc_id,
|
|
|
+ void *mgmt_tx_params);
|
|
|
+ QDF_STATUS (*beacon_send)(struct wlan_objmgr_vdev *vdev,
|
|
|
+ qdf_nbuf_t nbuf);
|
|
|
+};
|
|
|
+
|
|
|
/**
|
|
|
* struct wlan_lmac_if_tx_ops - south bound tx function pointers
|
|
|
* @arg1
|
|
@@ -44,7 +62,36 @@ struct wlan_lmac_if_tx_ops {
|
|
|
* void (*fp2)();
|
|
|
* }
|
|
|
*/
|
|
|
+ struct wlan_lmac_if_mgmt_txrx_tx_ops mgmt_txrx_tx_ops;
|
|
|
+};
|
|
|
|
|
|
+/**
|
|
|
+ * struct wlan_lmac_if_mgmt_txrx_rx_ops - structure of rx function
|
|
|
+ * pointers for mgmt txrx component
|
|
|
+ * @mgmt_tx_completion_handler: function pointer to give tx completions
|
|
|
+ * to mgmt txrx comp.
|
|
|
+ * @mgmt_rx_frame_handler: function pointer to give rx frame to mgmt txrx comp.
|
|
|
+ * @mgmt_txrx_get_nbuf_from_desc_id: function pointer to get nbuf from desc id
|
|
|
+ * @mgmt_txrx_get_peer_from_desc_id: function pointer to get peer from desc id
|
|
|
+ * @mgmt_txrx_get_vdev_id_from_desc_id: function pointer to get vdev id from
|
|
|
+ * desc id
|
|
|
+ */
|
|
|
+struct wlan_lmac_if_mgmt_txrx_rx_ops {
|
|
|
+ QDF_STATUS (*mgmt_tx_completion_handler)(
|
|
|
+ struct wlan_objmgr_psoc *psoc,
|
|
|
+ uint32_t desc_id, uint32_t status,
|
|
|
+ void *tx_compl_params);
|
|
|
+ QDF_STATUS (*mgmt_rx_frame_handler)(
|
|
|
+ struct wlan_objmgr_psoc *psoc,
|
|
|
+ qdf_nbuf_t buf, void *params);
|
|
|
+ qdf_nbuf_t (*mgmt_txrx_get_nbuf_from_desc_id)(
|
|
|
+ struct wlan_objmgr_psoc *psoc,
|
|
|
+ uint32_t desc_id);
|
|
|
+ struct wlan_objmgr_peer * (*mgmt_txrx_get_peer_from_desc_id)(
|
|
|
+ struct wlan_objmgr_psoc *psoc, uint32_t desc_id);
|
|
|
+ uint8_t (*mgmt_txrx_get_vdev_id_from_desc_id)(
|
|
|
+ struct wlan_objmgr_psoc *psoc,
|
|
|
+ uint32_t desc_id);
|
|
|
};
|
|
|
|
|
|
/**
|
|
@@ -67,7 +114,7 @@ struct wlan_lmac_if_rx_ops {
|
|
|
* void (*fp2)();
|
|
|
* }
|
|
|
*/
|
|
|
-
|
|
|
+ struct wlan_lmac_if_mgmt_txrx_rx_ops mgmt_txrx_rx_ops;
|
|
|
};
|
|
|
|
|
|
#endif /* _WLAN_LMAC_IF_DEF_H_ */
|