qcacmn: Add TLV recording support for Rx monitor

Add TLV recording support for Rx monitor. The TLV
tag and its data are recorded in a fixed size buffer

Change-Id: Idad896d1ece25a499ab76028c8a231fcd9947f66
CRs-Fixed: 3402543
This commit is contained in:
Aniruddha Mishra
2023-01-31 14:26:18 +05:30
committed by Madan Koyyalamudi
parent ba92b235ce
commit fe48e79218
7 changed files with 554 additions and 3 deletions

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 2017-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. 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
@@ -1248,6 +1248,19 @@ struct hal_rx_user_ctrl_frm_info {
struct hal_rx_user_ctrl_frm_info {};
#endif /* WLAN_SUPPORT_CTRL_FRAME_STATS */
#ifdef MONITOR_TLV_RECORDING_ENABLE
/*
* struct hal_rx_tlv_info - TLV info to pass to dp layer
* @tlv_tag: Tag of the TLV
* @tlv_category: Category of TLV
*
*/
struct hal_rx_tlv_info {
uint32_t tlv_tag;
uint8_t tlv_category;
};
#endif
struct hal_rx_ppdu_info {
struct hal_rx_ppdu_common_info com_info;
struct hal_rx_u_sig_info u_sig_info;
@@ -1320,6 +1333,10 @@ struct hal_rx_ppdu_info {
uint8_t start_user_info_cnt;
/* PPDU drop cnt */
struct hal_rx_ppdu_drop_cnt drop_cnt;
#ifdef MONITOR_TLV_RECORDING_ENABLE
/*TLV Recording*/
struct hal_rx_tlv_info rx_tlv_info;
#endif
};
static inline uint32_t