qcacmn: Debug prints for monitor mode
Add some debug prints for monitor mode
Change-Id: Ie12279c832647cac9e1f152c98fa0205dd9d495e
CRs-Fixed: 2173407
diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c
index 16cfc41..dbe96a1 100644
--- a/dp/wifi3.0/dp_main.c
+++ b/dp/wifi3.0/dp_main.c
@@ -938,13 +938,13 @@
if (!(soc->wlan_cfg_ctx->napi_enabled) ||
con_mode_monitor == QDF_GLOBAL_MONITOR_MODE) {
- QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_DEBUG,
- "%s: Poll mode", __func__);
+ 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,
- "%s: Interrupt mode", __func__);
+ QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO,
+ "%s: Interrupt mode", __func__);
return dp_soc_interrupt_attach(txrx_soc);
}
}
diff --git a/dp/wifi3.0/dp_rx.c b/dp/wifi3.0/dp_rx.c
index 2a723a5..cfee4c0 100644
--- a/dp/wifi3.0/dp_rx.c
+++ b/dp/wifi3.0/dp_rx.c
@@ -97,8 +97,8 @@
rxdma_srng = dp_rxdma_srng->hal_srng;
if (!rxdma_srng) {
- QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR,
- "rxdma srng not initialized");
+ 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 @@
(*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);
diff --git a/dp/wifi3.0/dp_rx_mon_dest.c b/dp/wifi3.0/dp_rx_mon_dest.c
index 1edf340..cba0793 100644
--- a/dp/wifi3.0/dp_rx_mon_dest.c
+++ b/dp/wifi3.0/dp_rx_mon_dest.c
@@ -141,7 +141,7 @@
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 @@
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);
@@ -191,9 +191,9 @@
}
QDF_TRACE(QDF_MODULE_ID_DP,
- QDF_TRACE_LEVEL_DEBUG,
- "[%s][%d] i=%d, ppdu_id=%x, msdu_ppdu_id=%x\n",
- __func__, __LINE__, i, *ppdu_id, msdu_ppdu_id);
+ QDF_TRACE_LEVEL_DEBUG,
+ "[%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)
QDF_TRACE(QDF_MODULE_ID_DP,
@@ -233,6 +233,10 @@
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();
/*
@@ -245,7 +249,7 @@
hal_rx_msdu_end_l3_hdr_padding_get(data);
rx_buf_size = rx_pkt_offset + l2_hdr_offset
- + frag_len;
+ + frag_len;
qdf_nbuf_set_pktlen(msdu, rx_buf_size);
@@ -258,12 +262,12 @@
if (!hal_rx_attn_msdu_done_get(rx_desc_tlv)) {
QDF_TRACE(QDF_MODULE_ID_DP,
- QDF_TRACE_LEVEL_DEBUG,
- "%s:%d: Pkt Desc\n",
- __func__, __LINE__);
+ 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);
@@ -272,14 +276,11 @@
rx_bufs_used++;
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,
- msdu_list.msdu_info[i].msdu_len,
- qdf_nbuf_data(msdu));
+ QDF_TRACE_LEVEL_DEBUG,
+ "%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_len(msdu));
if (*head_msdu == NULL)
*head_msdu = msdu;
@@ -321,7 +322,6 @@
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 @@
/* 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 @@
/* 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 @@
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 @@
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 @@
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 @@
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 @@
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,8 +794,8 @@
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"
- , __func__, pdev_id, rxdma_entries*3);
+ "%s: Mon RX Desc Pool[%d] allocation size=%d"
+ , __func__, pdev_id, rxdma_entries*3);
status = dp_rx_desc_pool_alloc(soc, pdev_id,
rxdma_entries*3, rx_desc_pool);
@@ -787,8 +806,8 @@
}
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO_LOW,
- "%s: Mon RX Buffers Replenish pdev_id=%d\n",
- __func__, pdev_id);
+ "%s: Mon RX Buffers Replenish pdev_id=%d",
+ __func__, pdev_id);
status = dp_rx_buffers_replenish(soc, pdev_id, rxdma_srng, rx_desc_pool,
rxdma_entries, &desc_list, &tail,
diff --git a/dp/wifi3.0/dp_rx_mon_status.c b/dp/wifi3.0/dp_rx_mon_status.c
index b0977fa..68fad1a 100644
--- a/dp/wifi3.0/dp_rx_mon_status.c
+++ b/dp/wifi3.0/dp_rx_mon_status.c
@@ -403,7 +403,7 @@
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;
}
diff --git a/hal/wifi3.0/hal_api_mon.h b/hal/wifi3.0/hal_api_mon.h
index a654326..4fceaaf 100644
--- a/hal/wifi3.0/hal_api_mon.h
+++ b/hal/wifi3.0/hal_api_mon.h
@@ -486,8 +486,8 @@
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,9 +505,9 @@
break;
case WIFIRX_PPDU_END_E:
- QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO,
- "[%s][%d] ppdu_end_e len=%d\n",
- __func__, __LINE__, tlv_len);
+ 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 */
ppdu_info->rx_status.duration =
@@ -988,9 +988,9 @@
break;
}
- QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO,
- "%s TLV type: %d, TLV len:%d\n",
- __func__, tlv_tag, tlv_len);
+ 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;
}