From 5832077a65ea061de8cddd444e67cc7195b0b4b1 Mon Sep 17 00:00:00 2001 From: Visweswara Tanuku Date: Wed, 20 Mar 2019 14:30:26 +0530 Subject: [PATCH 1/2] qcacmn: In Epping, Pass BMI context to bmi_done and bmi_cleanup In epping_enable bmi_done is called with null context due to which bmi finish is incomplete Pass BMI Context before invoking bmi_done and bmi_cleanup Change-Id: Ic7f424a03cb92d6d3218b5fa148ea95d6011cfed CRs-Fixed: 2419720 --- utils/epping/src/epping_main.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/utils/epping/src/epping_main.c b/utils/epping/src/epping_main.c index 1242930164b1..7f8ceb83df65 100644 --- a/utils/epping/src/epping_main.c +++ b/utils/epping/src/epping_main.c @@ -198,13 +198,6 @@ static void epping_update_ol_config(void) static QDF_STATUS epping_bmi_download_fw(struct ol_context *ol_ctx) { - ol_ctx = cds_get_context(QDF_MODULE_ID_BMI); - if (!ol_ctx) { - QDF_TRACE(QDF_MODULE_ID_QDF, QDF_TRACE_LEVEL_FATAL, - "%s: ol_ctx is NULL", __func__); - return QDF_STATUS_E_INVAL; - } - epping_update_ol_config(); /* Initialize BMI and Download firmware */ @@ -280,6 +273,13 @@ int epping_enable(struct device *parent_dev, bool rtnl_held) tgt_info = hif_get_target_info_handle(scn); + ol_ctx = cds_get_context(QDF_MODULE_ID_BMI); + if (!ol_ctx) { + QDF_TRACE(QDF_MODULE_ID_QDF, QDF_TRACE_LEVEL_FATAL, + "%s: ol_ctx is NULL", __func__); + return A_ERROR; + } + if (epping_bmi_download_fw(ol_ctx) != QDF_STATUS_SUCCESS) return A_ERROR; From 86911cd6e078dfaf5d87f40c10eab3f0e298800e Mon Sep 17 00:00:00 2001 From: phadiman Date: Thu, 4 Apr 2019 19:17:41 +0530 Subject: [PATCH 2/2] qcacmn: Filter data packets in m_copy mode Filter out data packets from mon destination ring in m_copy mode as we already receive first 100 bytes of data in mon status ring Change-Id: I09321aa42b850d7b3cdc0bda4c7c51f79a6f850e --- dp/wifi3.0/dp_main.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index a45019040d34..208466253a49 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -5903,13 +5903,16 @@ static QDF_STATUS dp_pdev_configure_monitor_rings(struct dp_pdev *pdev) (pdev->mon_filter_mode & MON_FILTER_OTHER) ? 1 : 0; htt_tlv_filter.fp_mgmt_filter = pdev->fp_mgmt_filter; htt_tlv_filter.fp_ctrl_filter = pdev->fp_ctrl_filter; - if (pdev->mcopy_mode) + + if (pdev->mcopy_mode) { htt_tlv_filter.fp_data_filter = 0; - else + htt_tlv_filter.mo_data_filter = 0; + } else { htt_tlv_filter.fp_data_filter = pdev->fp_data_filter; + htt_tlv_filter.mo_data_filter = pdev->mo_data_filter; + } htt_tlv_filter.mo_mgmt_filter = pdev->mo_mgmt_filter; htt_tlv_filter.mo_ctrl_filter = pdev->mo_ctrl_filter; - htt_tlv_filter.mo_data_filter = pdev->mo_data_filter; htt_tlv_filter.offset_valid = false; for (mac_id = 0; mac_id < NUM_RXDMA_RINGS_PER_PDEV; mac_id++) {