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

Function idpf_rx_queue_start

dpdk/drivers/net/idpf/idpf_rxtx.c:576–609  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

574}
575
576int
577idpf_rx_queue_start(struct rte_eth_dev *dev, uint16_t rx_queue_id)
578{
579 struct idpf_vport *vport = dev->data->dev_private;
580 struct idpf_rx_queue *rxq =
581 dev->data->rx_queues[rx_queue_id];
582 int err = 0;
583
584 err = idpf_vc_rxq_config(vport, rxq);
585 if (err != 0) {
586 PMD_DRV_LOG(ERR, "Fail to configure Rx queue %u", rx_queue_id);
587 return err;
588 }
589
590 err = idpf_rx_queue_init(dev, rx_queue_id);
591 if (err != 0) {
592 PMD_DRV_LOG(ERR, "Failed to init RX queue %u",
593 rx_queue_id);
594 return err;
595 }
596
597 /* Ready to switch the queue on */
598 err = idpf_vc_queue_switch(vport, rx_queue_id, true, true);
599 if (err != 0) {
600 PMD_DRV_LOG(ERR, "Failed to switch RX queue %u on",
601 rx_queue_id);
602 } else {
603 rxq->q_started = true;
604 dev->data->rx_queue_state[rx_queue_id] =
605 RTE_ETH_QUEUE_STATE_STARTED;
606 }
607
608 return err;
609}
610
611int
612idpf_tx_queue_init(struct rte_eth_dev *dev, uint16_t tx_queue_id)

Callers 1

idpf_start_queuesFunction · 0.85

Calls 3

idpf_vc_rxq_configFunction · 0.85
idpf_rx_queue_initFunction · 0.85
idpf_vc_queue_switchFunction · 0.85

Tested by

no test coverage detected