1
0

qcacld-3.0: Get wlan op mode from vdev for pktlog

To avoid using qcacld code in cmn, when getting
wlan op mode, using op mode info from vdev rather
adapter.

Change-Id: If8432aae12800884e3a4567d99319afcdfa9d1f5
CRs-Fixed: 2412315
Este cometimento está contido em:
Jingxiang Ge
2019-03-13 14:58:52 +08:00
cometido por nshrivas
ascendente 92c030908e
cometimento bd540b1cd0
4 ficheiros modificados com 56 adições e 30 eliminações

Ver ficheiro

@@ -1541,9 +1541,9 @@ void ol_rx_pkt_dump_call(
ol_txrx_pdev_handle pdev;
struct ol_txrx_peer_t *peer = NULL;
ol_txrx_pktdump_cb packetdump_cb;
void *soc = cds_get_context(QDF_MODULE_ID_SOC);
pdev = cds_get_context(QDF_MODULE_ID_TXRX);
if (!pdev) {
ol_txrx_err("pdev is NULL");
return;
@@ -1556,8 +1556,10 @@ void ol_rx_pkt_dump_call(
}
packetdump_cb = pdev->ol_rx_packetdump_cb;
if (packetdump_cb)
packetdump_cb(msdu, status, peer->vdev->vdev_id, RX_DATA_PKT);
if (packetdump_cb &&
wlan_op_mode_sta == peer->vdev->opmode)
packetdump_cb(soc, (struct cdp_vdev *)peer->vdev,
msdu, status, RX_DATA_PKT);
}
#endif

Ver ficheiro

@@ -759,7 +759,10 @@ ol_tx_completion_handler(ol_txrx_pdev_handle pdev,
struct ol_tx_desc_t *tx_desc;
uint32_t byte_cnt = 0;
qdf_nbuf_t netbuf;
#if !defined(REMOVE_PKT_LOG)
ol_txrx_pktdump_cb packetdump_cb;
void *soc = cds_get_context(QDF_MODULE_ID_SOC);
#endif
uint32_t is_tx_desc_freed = 0;
struct htt_tx_compl_ind_append_tx_tstamp *txtstamp_list = NULL;
u_int32_t *msg_word = (u_int32_t *)msg;
@@ -810,12 +813,15 @@ ol_tx_completion_handler(ol_txrx_pdev_handle pdev,
status);
ol_tx_update_ack_count(tx_desc, status);
#if !defined(REMOVE_PKT_LOG)
if (tx_desc->pkt_type != OL_TX_FRM_TSO) {
packetdump_cb = pdev->ol_tx_packetdump_cb;
if (packetdump_cb)
packetdump_cb(netbuf, status,
tx_desc->vdev_id, TX_DATA_PKT);
packetdump_cb(soc,
(struct cdp_vdev *)tx_desc->vdev,
netbuf, status, TX_DATA_PKT);
}
#endif
DPTRACE(qdf_dp_trace_ptr(netbuf,
QDF_DP_TRACE_FREE_PACKET_PTR_RECORD,
@@ -1032,7 +1038,10 @@ ol_tx_single_completion_handler(ol_txrx_pdev_handle pdev,
{
struct ol_tx_desc_t *tx_desc;
qdf_nbuf_t netbuf;
#if !defined(REMOVE_PKT_LOG)
ol_txrx_pktdump_cb packetdump_cb;
void *soc = cds_get_context(QDF_MODULE_ID_SOC);
#endif
tx_desc = ol_tx_desc_find_check(pdev, tx_desc_id);
if (tx_desc == NULL) {
@@ -1047,10 +1056,12 @@ ol_tx_single_completion_handler(ol_txrx_pdev_handle pdev,
/* Do one shot statistics */
TXRX_STATS_UPDATE_TX_STATS(pdev, status, 1, qdf_nbuf_len(netbuf));
#if !defined(REMOVE_PKT_LOG)
packetdump_cb = pdev->ol_tx_packetdump_cb;
if (packetdump_cb)
packetdump_cb(netbuf, status,
tx_desc->vdev->vdev_id, TX_MGMT_PKT);
packetdump_cb(soc, (struct cdp_vdev *)tx_desc->vdev,
netbuf, status, TX_MGMT_PKT);
#endif
if (OL_TX_DESC_NO_REFS(tx_desc)) {
ol_tx_desc_frame_free_nonstd(pdev, tx_desc,

Ver ficheiro

@@ -425,8 +425,6 @@
typedef void (*txFailIndCallback)(uint8_t *peer_mac, uint8_t seqNo);
typedef void (*tp_wma_packetdump_cb)(qdf_nbuf_t netbuf,
uint8_t status, uint8_t vdev_id, uint8_t type);
/**
* enum wma_rx_exec_ctx - wma rx execution context
@@ -1212,8 +1210,8 @@ typedef struct {
bool fw_timeout_crash;
bool sub_20_support;
bool is_dfs_offloaded;
tp_wma_packetdump_cb wma_mgmt_tx_packetdump_cb;
tp_wma_packetdump_cb wma_mgmt_rx_packetdump_cb;
ol_txrx_pktdump_cb wma_mgmt_tx_packetdump_cb;
ol_txrx_pktdump_cb wma_mgmt_rx_packetdump_cb;
bool rcpi_enabled;
tSirLLStatsResults *link_stats_results;
uint64_t tx_fail_cnt;
@@ -1958,8 +1956,8 @@ QDF_STATUS wma_start_oem_data_req(tp_wma_handle wma_handle,
QDF_STATUS wma_enable_disable_caevent_ind(tp_wma_handle wma_handle,
uint8_t val);
void wma_register_packetdump_callback(
tp_wma_packetdump_cb wma_mgmt_tx_packetdump_cb,
tp_wma_packetdump_cb wma_mgmt_rx_packetdump_cb);
ol_txrx_pktdump_cb wma_mgmt_tx_packetdump_cb,
ol_txrx_pktdump_cb wma_mgmt_rx_packetdump_cb);
void wma_deregister_packetdump_callback(void);
void wma_update_sta_inactivity_timeout(tp_wma_handle wma,
struct sme_sta_inactivity_timeout *sta_inactivity_timer);

Ver ficheiro

@@ -3248,9 +3248,13 @@ static int wma_process_mgmt_tx_completion(tp_wma_handle wma_handle,
{
struct wlan_objmgr_pdev *pdev;
qdf_nbuf_t buf = NULL;
uint8_t vdev_id = 0;
QDF_STATUS ret;
tp_wma_packetdump_cb packetdump_cb;
#if !defined(REMOVE_PKT_LOG)
uint8_t vdev_id = 0;
struct cdp_vdev *txrx_vdev;
ol_txrx_pktdump_cb packetdump_cb;
void *soc = cds_get_context(QDF_MODULE_ID_SOC);
#endif
if (wma_handle == NULL) {
WMA_LOGE("%s: wma handle is NULL", __func__);
@@ -3267,15 +3271,19 @@ static int wma_process_mgmt_tx_completion(tp_wma_handle wma_handle,
}
buf = mgmt_txrx_get_nbuf(pdev, desc_id);
vdev_id = mgmt_txrx_get_vdev_id(pdev, desc_id);
if (buf)
wma_mgmt_unmap_buf(wma_handle, buf);
#if !defined(REMOVE_PKT_LOG)
vdev_id = mgmt_txrx_get_vdev_id(pdev, desc_id);
txrx_vdev = wma_find_vdev_by_id(wma_handle, vdev_id);
packetdump_cb = wma_handle->wma_mgmt_tx_packetdump_cb;
if (packetdump_cb)
packetdump_cb(buf, QDF_STATUS_SUCCESS,
vdev_id, TX_MGMT_PKT);
packetdump_cb(soc, txrx_vdev,
buf, QDF_STATUS_SUCCESS, TX_MGMT_PKT);
#endif
ret = mgmt_txrx_tx_completion_handler(pdev, desc_id, status, NULL);
@@ -4028,7 +4036,11 @@ int wma_form_rx_packet(qdf_nbuf_t buf,
int status;
tp_wma_handle wma_handle = (tp_wma_handle)
cds_get_context(QDF_MODULE_ID_WMA);
tp_wma_packetdump_cb packetdump_cb;
#if !defined(REMOVE_PKT_LOG)
ol_txrx_pktdump_cb packetdump_cb;
void *soc = cds_get_context(QDF_MODULE_ID_SOC);
struct cdp_vdev *txrx_vdev;
#endif
static uint8_t limit_prints_invalid_len = RATE_LIMIT - 1;
static uint8_t limit_prints_load_unload = RATE_LIMIT - 1;
static uint8_t limit_prints_recovery = RATE_LIMIT - 1;
@@ -4199,13 +4211,16 @@ int wma_form_rx_packet(qdf_nbuf_t buf,
return -EINVAL;
}
#if !defined(REMOVE_PKT_LOG)
packetdump_cb = wma_handle->wma_mgmt_rx_packetdump_cb;
txrx_vdev = wma_find_vdev_by_id(wma_handle,
rx_pkt->pkt_meta.session_id);
if ((mgt_type == IEEE80211_FC0_TYPE_MGT &&
mgt_subtype != MGMT_SUBTYPE_BEACON) &&
packetdump_cb)
packetdump_cb(rx_pkt->pkt_buf, QDF_STATUS_SUCCESS,
rx_pkt->pkt_meta.session_id, RX_MGMT_PKT);
mgt_subtype != MGMT_SUBTYPE_BEACON) &&
packetdump_cb)
packetdump_cb(soc, txrx_vdev, rx_pkt->pkt_buf,
QDF_STATUS_SUCCESS, RX_MGMT_PKT);
#endif
return 0;
}
@@ -4453,8 +4468,8 @@ QDF_STATUS wma_register_mgmt_frm_client(void)
/**
* wma_register_packetdump_callback() - stores tx and rx mgmt packet dump
* callback handler
* @wma_mgmt_tx_packetdump_cb: tx mgmt packetdump cb
* @wma_mgmt_rx_packetdump_cb: rx mgmt packetdump cb
* @tx_cb: tx mgmt packetdump cb
* @rx_cb: rx mgmt packetdump cb
*
* This function is used to store tx and rx mgmt. packet dump callback
*
@@ -4462,8 +4477,8 @@ QDF_STATUS wma_register_mgmt_frm_client(void)
*
*/
void wma_register_packetdump_callback(
tp_wma_packetdump_cb wma_mgmt_tx_packetdump_cb,
tp_wma_packetdump_cb wma_mgmt_rx_packetdump_cb)
ol_txrx_pktdump_cb tx_cb,
ol_txrx_pktdump_cb rx_cb)
{
tp_wma_handle wma_handle = cds_get_context(QDF_MODULE_ID_WMA);
@@ -4472,8 +4487,8 @@ void wma_register_packetdump_callback(
return;
}
wma_handle->wma_mgmt_tx_packetdump_cb = wma_mgmt_tx_packetdump_cb;
wma_handle->wma_mgmt_rx_packetdump_cb = wma_mgmt_rx_packetdump_cb;
wma_handle->wma_mgmt_tx_packetdump_cb = tx_cb;
wma_handle->wma_mgmt_rx_packetdump_cb = rx_cb;
}
/**