qcacmn: Debug prints for monitor mode
Add some debug prints for monitor mode Change-Id: Ie12279c832647cac9e1f152c98fa0205dd9d495e CRs-Fixed: 2173407
This commit is contained in:
@@ -938,12 +938,12 @@ static QDF_STATUS dp_soc_interrupt_attach_wrapper(void *txrx_soc)
|
||||
|
||||
if (!(soc->wlan_cfg_ctx->napi_enabled) ||
|
||||
con_mode_monitor == QDF_GLOBAL_MONITOR_MODE) {
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO,
|
||||
"%s: Poll mode", __func__);
|
||||
return dp_soc_interrupt_attach_poll(txrx_soc);
|
||||
} else {
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO,
|
||||
"%s: Interrupt mode", __func__);
|
||||
return dp_soc_interrupt_attach(txrx_soc);
|
||||
}
|
||||
|
@@ -97,7 +97,7 @@ QDF_STATUS dp_rx_buffers_replenish(struct dp_soc *dp_soc, uint32_t mac_id,
|
||||
rxdma_srng = dp_rxdma_srng->hal_srng;
|
||||
|
||||
if (!rxdma_srng) {
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR,
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"rxdma srng not initialized");
|
||||
DP_STATS_INC(dp_pdev, replenish.rxdma_err, num_req_buffers);
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
@@ -201,7 +201,7 @@ QDF_STATUS dp_rx_buffers_replenish(struct dp_soc *dp_soc, uint32_t mac_id,
|
||||
(*desc_list)->rx_desc.in_use = 1;
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"rx_netbuf=%pK, buf=%pK, paddr=0x%llx, cookie=%d\n",
|
||||
"rx_netbuf=%pK, buf=%pK, paddr=0x%llx, cookie=%d",
|
||||
rx_netbuf, qdf_nbuf_data(rx_netbuf),
|
||||
(unsigned long long)paddr, (*desc_list)->rx_desc.cookie);
|
||||
|
||||
|
@@ -141,7 +141,7 @@ dp_rx_mon_mpdu_pop(struct dp_soc *soc, uint32_t mac_id,
|
||||
uint32_t msdu_ppdu_id, msdu_cnt, last_ppdu_id;
|
||||
uint8_t *data;
|
||||
uint32_t i;
|
||||
uint32_t total_frag_len, frag_len;
|
||||
uint32_t total_frag_len = 0, frag_len = 0;
|
||||
bool is_frag, is_first_msdu;
|
||||
|
||||
msdu = 0;
|
||||
@@ -179,7 +179,7 @@ dp_rx_mon_mpdu_pop(struct dp_soc *soc, uint32_t mac_id,
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP,
|
||||
QDF_TRACE_LEVEL_DEBUG,
|
||||
"[%s][%d] msdu_nbuf=%pK, data=%pK\n",
|
||||
"[%s][%d] msdu_nbuf=%pK, data=%pK",
|
||||
__func__, __LINE__, msdu, data);
|
||||
|
||||
rx_desc_tlv = HAL_RX_MON_DEST_GET_DESC(data);
|
||||
@@ -192,7 +192,7 @@ dp_rx_mon_mpdu_pop(struct dp_soc *soc, uint32_t mac_id,
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP,
|
||||
QDF_TRACE_LEVEL_DEBUG,
|
||||
"[%s][%d] i=%d, ppdu_id=%x, msdu_ppdu_id=%x\n",
|
||||
"[%s][%d] i=%d, ppdu_id=%x, msdu_ppdu_id=%x",
|
||||
__func__, __LINE__, i, *ppdu_id, msdu_ppdu_id);
|
||||
|
||||
if (*ppdu_id > msdu_ppdu_id)
|
||||
@@ -233,6 +233,10 @@ dp_rx_mon_mpdu_pop(struct dp_soc *soc, uint32_t mac_id,
|
||||
is_frag = false;
|
||||
msdu_cnt--;
|
||||
}
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"%s total_len %u frag_len %u flags %u",
|
||||
__func__, total_frag_len, frag_len,
|
||||
msdu_list.msdu_info[i].msdu_flags);
|
||||
|
||||
rx_pkt_offset = HAL_RX_MON_HW_RX_DESC_SIZE();
|
||||
/*
|
||||
@@ -258,12 +262,12 @@ dp_rx_mon_mpdu_pop(struct dp_soc *soc, uint32_t mac_id,
|
||||
if (!hal_rx_attn_msdu_done_get(rx_desc_tlv)) {
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP,
|
||||
QDF_TRACE_LEVEL_DEBUG,
|
||||
QDF_TRACE_LEVEL_ERROR,
|
||||
"%s:%d: Pkt Desc\n",
|
||||
__func__, __LINE__);
|
||||
|
||||
QDF_TRACE_HEX_DUMP(QDF_MODULE_ID_DP,
|
||||
QDF_TRACE_LEVEL_DEBUG,
|
||||
QDF_TRACE_LEVEL_ERROR,
|
||||
rx_desc_tlv, 128);
|
||||
|
||||
qdf_assert_always(0);
|
||||
@@ -273,13 +277,10 @@ dp_rx_mon_mpdu_pop(struct dp_soc *soc, uint32_t mac_id,
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP,
|
||||
QDF_TRACE_LEVEL_DEBUG,
|
||||
"rx_pkt_offset=%d, \
|
||||
l2_hdr_offset=%d, msdu_len=%d, \
|
||||
addr=%pK\n",
|
||||
rx_pkt_offset,
|
||||
l2_hdr_offset,
|
||||
"%s: rx_pkt_offset=%d, l2_hdr_offset=%d, msdu_len=%d, addr=%p skb->len %lu",
|
||||
__func__, rx_pkt_offset, l2_hdr_offset,
|
||||
msdu_list.msdu_info[i].msdu_len,
|
||||
qdf_nbuf_data(msdu));
|
||||
qdf_nbuf_data(msdu), qdf_nbuf_len(msdu));
|
||||
|
||||
if (*head_msdu == NULL)
|
||||
*head_msdu = msdu;
|
||||
@@ -321,7 +322,6 @@ void dp_rx_msdus_set_payload(qdf_nbuf_t msdu)
|
||||
rx_pkt_offset = HAL_RX_MON_HW_RX_DESC_SIZE();
|
||||
l2_hdr_offset = hal_rx_msdu_end_l3_hdr_padding_get(data);
|
||||
qdf_nbuf_pull_head(msdu, rx_pkt_offset + l2_hdr_offset);
|
||||
|
||||
}
|
||||
|
||||
static inline
|
||||
@@ -344,6 +344,7 @@ qdf_nbuf_t dp_rx_mon_restitch_mpdu_from_msdus(struct dp_soc *soc,
|
||||
/* The nbuf has been pulled just beyond the status and points to the
|
||||
* payload
|
||||
*/
|
||||
|
||||
msdu_orig = head_msdu;
|
||||
|
||||
rx_desc = qdf_nbuf_data(msdu_orig);
|
||||
@@ -374,11 +375,14 @@ qdf_nbuf_t dp_rx_mon_restitch_mpdu_from_msdus(struct dp_soc *soc,
|
||||
/* Note that this path might suffer from headroom unavailabilty
|
||||
* - but the RX status is usually enough
|
||||
*/
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"[%s][%d] decap format raw\n", __func__, __LINE__);
|
||||
|
||||
dp_rx_msdus_set_payload(head_msdu);
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"[%s][%d] decap format raw head %pK head->next %pK last_msdu %pK last_msdu->next %pK",
|
||||
__func__, __LINE__, head_msdu, head_msdu->next,
|
||||
last_msdu, last_msdu->next);
|
||||
|
||||
mpdu_buf = head_msdu;
|
||||
|
||||
if (!mpdu_buf)
|
||||
@@ -432,7 +436,8 @@ qdf_nbuf_t dp_rx_mon_restitch_mpdu_from_msdus(struct dp_soc *soc,
|
||||
hdr_desc = HAL_RX_DESC_GET_80211_HDR(rx_desc);
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"[%s][%d] decap format not raw\n", __func__, __LINE__);
|
||||
"[%s][%d] decap format not raw",
|
||||
__func__, __LINE__);
|
||||
|
||||
|
||||
/* Base size */
|
||||
@@ -590,16 +595,21 @@ mpdu_stitch_done:
|
||||
rx_status->rs_tstamp.tsf = rx_desc->ppdu_end.tsf_timestamp;
|
||||
|
||||
#endif
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"%s %d mpdu_buf %pK mpdu_buf->len %u",
|
||||
__func__, __LINE__,
|
||||
mpdu_buf, mpdu_buf->len);
|
||||
return mpdu_buf;
|
||||
|
||||
mpdu_stitch_fail:
|
||||
if ((mpdu_buf) && (decap_format != HAL_HW_RX_DECAP_FORMAT_RAW)) {
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR,
|
||||
"%s mpdu_stitch_fail mpdu_buf %pK",
|
||||
__func__, mpdu_buf);
|
||||
/* Free the head buffer */
|
||||
qdf_nbuf_free(mpdu_buf);
|
||||
}
|
||||
return NULL;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -653,6 +663,10 @@ QDF_STATUS dp_rx_mon_deliver(struct dp_soc *soc, uint32_t mac_id,
|
||||
pdev->monitor_vdev->osif_rx_mon(
|
||||
pdev->monitor_vdev->osif_vdev, mon_mpdu, NULL);
|
||||
} else {
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR,
|
||||
"[%s][%d] mon_mpdu=%p pdev->monitor_vdev %p osif_vdev %p",
|
||||
__func__, __LINE__, mon_mpdu, pdev->monitor_vdev,
|
||||
pdev->monitor_vdev->osif_vdev);
|
||||
goto mon_deliver_fail;
|
||||
}
|
||||
|
||||
@@ -663,8 +677,9 @@ mon_deliver_fail:
|
||||
while (mon_skb) {
|
||||
skb_next = qdf_nbuf_next(mon_skb);
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"[%s][%d] mon_skb=%pK\n", __func__, __LINE__, mon_skb);
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR,
|
||||
"[%s][%d] mon_skb=%p len %u", __func__, __LINE__,
|
||||
mon_skb, mon_skb->len);
|
||||
|
||||
qdf_nbuf_free(mon_skb);
|
||||
mon_skb = skb_next;
|
||||
@@ -738,6 +753,10 @@ void dp_rx_mon_dest_process(struct dp_soc *soc, uint32_t mac_id, uint32_t quota)
|
||||
sizeof(pdev->ppdu_info.rx_status));
|
||||
pdev->ppdu_info.com_info.last_ppdu_id =
|
||||
pdev->ppdu_info.com_info.ppdu_id;
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"%s %d ppdu_id %x != ppdu_info.com_info .ppdu_id %x",
|
||||
__func__, __LINE__,
|
||||
ppdu_id, pdev->ppdu_info.com_info.ppdu_id);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -775,7 +794,7 @@ dp_rx_pdev_mon_buf_attach(struct dp_pdev *pdev) {
|
||||
rx_desc_pool = &soc->rx_desc_mon[pdev_id];
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO_LOW,
|
||||
"%s: Mon RX Desc Pool[%d] allocation size=%d\n"
|
||||
"%s: Mon RX Desc Pool[%d] allocation size=%d"
|
||||
, __func__, pdev_id, rxdma_entries*3);
|
||||
|
||||
status = dp_rx_desc_pool_alloc(soc, pdev_id,
|
||||
@@ -787,7 +806,7 @@ dp_rx_pdev_mon_buf_attach(struct dp_pdev *pdev) {
|
||||
}
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO_LOW,
|
||||
"%s: Mon RX Buffers Replenish pdev_id=%d\n",
|
||||
"%s: Mon RX Buffers Replenish pdev_id=%d",
|
||||
__func__, pdev_id);
|
||||
|
||||
status = dp_rx_buffers_replenish(soc, pdev_id, rxdma_srng, rx_desc_pool,
|
||||
|
@@ -403,7 +403,7 @@ dp_rx_mon_status_srng_process(struct dp_soc *soc, uint32_t mac_id,
|
||||
if (!mon_status_srng || !hal_srng_initialized(mon_status_srng)) {
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_TXRX, QDF_TRACE_LEVEL_ERROR,
|
||||
"%s %d : HAL Monitor Destination Ring Init Failed -- %pK\n",
|
||||
"%s %d : HAL Monitor Status Ring Init Failed -- %pK\n",
|
||||
__func__, __LINE__, mon_status_srng);
|
||||
return work_done;
|
||||
}
|
||||
|
@@ -486,8 +486,8 @@ hal_rx_status_get_tlv_info(void *rx_tlv, struct hal_rx_ppdu_info *ppdu_info)
|
||||
switch (tlv_tag) {
|
||||
|
||||
case WIFIRX_PPDU_START_E:
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO,
|
||||
"[%s][%d] ppdu_start_e len=%d\n",
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"[%s][%d] ppdu_start_e len=%d",
|
||||
__func__, __LINE__, tlv_len);
|
||||
ppdu_info->com_info.ppdu_id =
|
||||
HAL_RX_GET(rx_tlv, RX_PPDU_START_0,
|
||||
@@ -505,8 +505,8 @@ hal_rx_status_get_tlv_info(void *rx_tlv, struct hal_rx_ppdu_info *ppdu_info)
|
||||
break;
|
||||
|
||||
case WIFIRX_PPDU_END_E:
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO,
|
||||
"[%s][%d] ppdu_end_e len=%d\n",
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"[%s][%d] ppdu_end_e len=%d",
|
||||
__func__, __LINE__, tlv_len);
|
||||
/* This is followed by sub-TLVs of PPDU_END */
|
||||
|
||||
@@ -988,8 +988,8 @@ hal_rx_status_get_tlv_info(void *rx_tlv, struct hal_rx_ppdu_info *ppdu_info)
|
||||
break;
|
||||
}
|
||||
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO,
|
||||
"%s TLV type: %d, TLV len:%d\n",
|
||||
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
|
||||
"%s TLV type: %d, TLV len:%d",
|
||||
__func__, tlv_tag, tlv_len);
|
||||
|
||||
return HAL_TLV_STATUS_PPDU_NOT_DONE;
|
||||
|
Reference in New Issue
Block a user