qcacmn: Add RxMON global enable support

Add RxMON global enable support for WKK

Change-Id: If732318788821303441a5db9ebe21bd2d56b3679
CRs-Fixed: 3123532
This commit is contained in:
Amir Patel
2022-02-04 01:29:06 +05:30
committed by Madan Koyyalamudi
parent 6340679db0
commit 28ecc1a2f1
3 changed files with 11 additions and 2 deletions

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021,2022 Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2021-2022 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
@@ -958,6 +958,9 @@ int htt_h2t_rx_ring_cfg(struct htt_soc *htt_soc, int pdev_id,
*msg_word = 0;
HTT_H2T_MSG_TYPE_SET(*msg_word, HTT_H2T_MSG_TYPE_RX_RING_SELECTION_CFG);
if (htt_tlv_filter->rx_mon_global_en)
*msg_word |= (1 << RXMON_GLOBAL_EN_SHIFT);
/*
* pdev_id is indexed from 0 whereas mac_id is indexed from 1
* SW_TO_SW and SW_TO_HW rings are unaffected by this

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2021,2022 Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2021-2022 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
@@ -192,6 +192,7 @@ void htt_htc_pkt_pool_free(struct htt_soc *soc);
__QDF_TRACE_FL(QDF_TRACE_LEVEL_INFO_HIGH, QDF_MODULE_ID_DP_HTT_TX_STATS, ## params)
#define dp_htt_tx_stats_debug(params...) QDF_TRACE_DEBUG(QDF_MODULE_ID_DP_HTT_TX_STATS, params)
#define RXMON_GLOBAL_EN_SHIFT 28
/**
* enum dp_full_mon_config - enum to enable/disable full monitor mode
*
@@ -653,6 +654,7 @@ struct htt_rx_ring_tlv_filter {
ctrl_mpdu_log:1,
data_mpdu_log:1;
#endif
uint8_t rx_mon_global_en;
};
/**

View File

@@ -1117,6 +1117,7 @@ void dp_mon_filter_setup_rx_mon_mode_2_0(struct dp_pdev *pdev)
rx_tlv_filter = &filter.rx_tlv_filter;
rx_tlv_filter->valid = true;
rx_tlv_filter->tlv_filter.rx_mon_global_en = 1;
dp_mon_filter_set_status_cmn(mon_pdev, rx_tlv_filter);
dp_mon_filter_show_filter(mon_pdev, mode, rx_tlv_filter);
@@ -1434,6 +1435,7 @@ void dp_mon_filter_setup_rx_pkt_log_full_2_0(struct dp_pdev *pdev)
/* Enabled the filter */
filter.rx_tlv_filter.valid = true;
rx_tlv_filter->rx_mon_global_en = 1;
dp_mon_filter_set_status_cmn(&mon_pdev_be->mon_pdev,
&filter.rx_tlv_filter);
@@ -1484,6 +1486,7 @@ void dp_mon_filter_setup_rx_pkt_log_lite_2_0(struct dp_pdev *pdev)
/* Enabled the filter */
filter.rx_tlv_filter.valid = true;
filter.rx_tlv_filter.tlv_filter.rx_mon_global_en = 1;
dp_mon_filter_set_status_cmn(&mon_pdev_be->mon_pdev,
&filter.rx_tlv_filter);
@@ -1714,6 +1717,7 @@ dp_rx_mon_filter_h2t_setup(struct dp_soc *soc, struct dp_pdev *pdev,
continue;
filter->valid = true;
tlv_filter->rx_mon_global_en = 1;
/*
* Set the super bit fields