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

Function bnxt_alloc_rx_ring

dpdk/drivers/net/bnxt/bnxt_ring.c:522–548  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

520}
521
522static int bnxt_alloc_rx_ring(struct bnxt *bp, int queue_index)
523{
524 struct bnxt_rx_queue *rxq = bp->rx_queues[queue_index];
525 struct bnxt_cp_ring_info *cpr = rxq->cp_ring;
526 struct bnxt_ring *cp_ring = cpr->cp_ring_struct;
527 struct bnxt_rx_ring_info *rxr = rxq->rx_ring;
528 struct bnxt_ring *ring = rxr->rx_ring_struct;
529 uint8_t ring_type;
530 int rc = 0;
531
532 ring_type = HWRM_RING_ALLOC_INPUT_RING_TYPE_RX;
533
534 rc = bnxt_hwrm_ring_alloc(bp, ring, ring_type,
535 queue_index, cpr->hw_stats_ctx_id,
536 cp_ring->fw_ring_id, 0);
537 if (rc)
538 return rc;
539
540 rxr->rx_raw_prod = 0;
541 if (BNXT_HAS_RING_GRPS(bp))
542 bp->grp_info[queue_index].rx_fw_ring_id = ring->fw_ring_id;
543 bnxt_set_db(bp, &rxr->rx_db, ring_type, queue_index, ring->fw_ring_id,
544 ring->ring_mask);
545 bnxt_db_write(&rxr->rx_db, rxr->rx_raw_prod);
546
547 return 0;
548}
549
550static int bnxt_alloc_rx_agg_ring(struct bnxt *bp, int queue_index)
551{

Callers 1

bnxt_alloc_hwrm_rx_ringFunction · 0.85

Calls 3

bnxt_hwrm_ring_allocFunction · 0.85
bnxt_set_dbFunction · 0.85
bnxt_db_writeFunction · 0.85

Tested by

no test coverage detected