qcacld-3.0: Add tgt layer for packet capture mode

Add tgt layer for packet capture mode.

Change-Id: I8e69701c69d6ec1989e36cb09826c1c0bf3f51e7
CRs-Fixed: 2674337
This commit is contained in:
Dundi Raviteja
2020-05-28 12:42:54 +05:30
committed by nshrivas
parent 9b1c3c0ea9
commit 9fca084961
9 changed files with 295 additions and 99 deletions

View File

@@ -66,4 +66,30 @@ struct mgmt_offload_event_params {
struct pkt_capture_callbacks {
int (*get_rmf_status)(uint8_t vdev_id);
};
/**
* struct wlan_pkt_capture_tx_ops - structure of tx operation function
* pointers for packet capture component
* @pkt_capture_send_mode: send packet capture mode
*
*/
struct wlan_pkt_capture_tx_ops {
QDF_STATUS (*pkt_capture_send_mode)(struct wlan_objmgr_psoc *psoc,
uint8_t vdev_id,
enum pkt_capture_mode mode);
};
/**
* struct wlan_pkt_capture_rx_ops - structure of rx operation function
* pointers for packet capture component
* @pkt_capture_register_ev_handlers: register mgmt offload event
* @pkt_capture_unregister_ev_handlers: unregister mgmt offload event
*/
struct wlan_pkt_capture_rx_ops {
QDF_STATUS (*pkt_capture_register_ev_handlers)
(struct wlan_objmgr_psoc *psoc);
QDF_STATUS (*pkt_capture_unregister_ev_handlers)
(struct wlan_objmgr_psoc *psoc);
};
#endif /* _WLAN_PKT_CAPTURE_PUBLIC_STRUCTS_H_ */

View File

@@ -0,0 +1,55 @@
/*
* Copyright (c) 2020, The Linux Foundation. All rights reserved.
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: packet capture south bound interface declaration
*/
#ifndef _WLAN_PKT_CAPTURE_TGT_API_H
#define _WLAN_PKT_CAPTURE_TGT_API_H
#include "wlan_pkt_capture_objmgr.h"
#include "wlan_pkt_capture_main.h"
#include "wlan_pkt_capture_public_structs.h"
/**
* tgt_pkt_capture_register_ev_handler() - register pkt capture ev handler
* @vdev: pointer to vdev object
*
* Return: QDF_STATUS
*/
QDF_STATUS
tgt_pkt_capture_register_ev_handler(struct wlan_objmgr_vdev *vdev);
/**
* tgt_pkt_capture_unregister_ev_handler() - unregister pkt capture ev handler
* @vdev: pointer to vdev object
*
* Return: QDF_STATUS
*/
QDF_STATUS
tgt_pkt_capture_unregister_ev_handler(struct wlan_objmgr_vdev *vdev);
/**
* tgt_pkt_capture_send_mode() - send packet capture mode to firmware
* @vdev: pointer to vdev object
* @mode: packet capture mode
*
* Return: QDF_STATUS
*/
QDF_STATUS
tgt_pkt_capture_send_mode(struct wlan_objmgr_vdev *vdev,
enum pkt_capture_mode mode);
#endif /* _WLAN_PKT_CAPTURE_TGT_API_H */

View File

@@ -168,14 +168,6 @@ ucfg_pkt_capture_mgmt_tx_completion(
uint32_t status,
struct mgmt_offload_event_params *params);
/**
* ucfg_pkt_capture_enable_ops - Enable packet capture tx and rx ops handlers
* @wlan_objmgr_vdev: wlan vdev object manager
*
* Return: 0 on success, -EINVAL on failure
*/
int ucfg_pkt_capture_enable_ops(struct wlan_objmgr_vdev *vdev);
/**
* ucfg_pkt_capture_rx_msdu_process() - process data rx pkts
* @bssid: bssid
@@ -266,8 +258,8 @@ void ucfg_pkt_capture_record_channel(struct wlan_objmgr_vdev *vdev);
/**
* ucfg_pkt_capture_register_callbacks - ucfg API to register WMA callbacks
* @psoc - pointer to psoc object
* @cb_obj - Pointer to packet capture callback structure
* @psoc: pointer to psoc object
* @cb_obj: Pointer to packet capture callback structure
*
* Return: status of operation
*/