MCPcopy Create free account
hub / github.com/F-Stack/f-stack / tx_on_dpaa_pool

Function tx_on_dpaa_pool

dpdk/drivers/net/dpaa/dpaa_rxtx.c:962–989  ·  view source on GitHub ↗

Handle all mbufs on dpaa BMAN managed pool */

Source from the content-addressed store, hash-verified

960
961/* Handle all mbufs on dpaa BMAN managed pool */
962static inline uint16_t
963tx_on_dpaa_pool(struct rte_mbuf *mbuf,
964 struct dpaa_bp_info *bp_info,
965 struct qm_fd *fd_arr,
966 struct dpaa_sw_buf_free *buf_to_free,
967 uint32_t *free_count,
968 uint32_t pkt_id)
969{
970 DPAA_DP_LOG(DEBUG, "BMAN offloaded buffer, mbuf: %p", mbuf);
971
972 if (mbuf->nb_segs == 1) {
973 /* Case for non-segmented buffers */
974 tx_on_dpaa_pool_unsegmented(mbuf, bp_info, fd_arr,
975 buf_to_free, free_count, pkt_id);
976 } else if (mbuf->nb_segs > 1 &&
977 mbuf->nb_segs <= DPAA_SGT_MAX_ENTRIES) {
978 if (dpaa_eth_mbuf_to_sg_fd(mbuf, fd_arr, buf_to_free,
979 free_count, pkt_id)) {
980 DPAA_PMD_DEBUG("Unable to create Scatter Gather FD");
981 return 1;
982 }
983 } else {
984 DPAA_PMD_DEBUG("Number of Segments not supported");
985 return 1;
986 }
987
988 return 0;
989}
990
991/* Handle all mbufs on an external pool (non-dpaa) */
992static inline struct rte_mbuf *

Callers 1

dpaa_eth_queue_txFunction · 0.85

Calls 2

dpaa_eth_mbuf_to_sg_fdFunction · 0.85

Tested by

no test coverage detected