qcacmn: DP RX changes for RX buffer pool support

DP RX changes to support RX buffer pool, this is a pre-allocated pool
of buffers which will be utilized during low memory conditions.

Change-Id: I8d89a865f989d4e88c10390861e9d4be72ae0299
CRs-Fixed: 2731517
このコミットが含まれているのは:
Manikanta Pubbisetty
2020-07-20 13:35:43 +05:30
committed by snandini
コミット fa2844b787
8個のファイルの変更106行の追加18行の削除

ファイルの表示

@@ -28,6 +28,7 @@
#include <enet.h> /* LLC_SNAP_HDR_LEN */
#include "dp_rx_defrag.h"
#include "dp_ipa.h"
#include "dp_rx_buffer_pool.h"
const struct dp_rx_defrag_cipher dp_f_ccmp = {
"AES-CCM",
@@ -1434,6 +1435,11 @@ dp_rx_defrag_store_fragment(struct dp_soc *soc,
goto discard_frag;
}
if (dp_rx_buffer_pool_refill(soc, frag, rx_desc->pool_id)) {
/* fragment queued back to the pool, free the link desc */
goto err_free_desc;
}
msdu_len = hal_rx_msdu_start_msdu_len_get(rx_desc->rx_buf_start);
qdf_nbuf_set_pktlen(frag, (msdu_len + RX_PKT_TLVS_LEN));
@@ -1649,6 +1655,7 @@ dp_rx_defrag_store_fragment(struct dp_soc *soc,
discard_frag:
qdf_nbuf_free(frag);
err_free_desc:
dp_rx_add_to_free_desc_list(head, tail, rx_desc);
if (dp_rx_link_desc_return(soc, ring_desc,
HAL_BM_ACTION_PUT_IN_IDLE_LIST) !=