[v2,3/8] net/enetc: save deferred start configuratin for queues
Checks
Commit Message
This patch adds new fields to 'struct enetc_bdr' to save the
configuratin of Rx and Tx deferred start.
Signed-off-by: Jie Hai <haijie1@huawei.com>
---
drivers/net/enetc/enetc.h | 2 ++
drivers/net/enetc/enetc_ethdev.c | 4 ++++
2 files changed, 6 insertions(+)
@@ -74,6 +74,8 @@ struct enetc_bdr {
};
struct rte_mempool *mb_pool; /* mbuf pool to populate RX ring. */
struct rte_eth_dev *ndev;
+ bool rx_deferred_start;
+ bool tx_deferred_start;
};
/*
@@ -326,9 +326,11 @@ enetc_tx_queue_setup(struct rte_eth_dev *dev,
ENETC_TBMR, ENETC_TBMR_EN);
dev->data->tx_queue_state[tx_ring->index] =
RTE_ETH_QUEUE_STATE_STARTED;
+ tx_ring->tx_deferred_start = false;
} else {
dev->data->tx_queue_state[tx_ring->index] =
RTE_ETH_QUEUE_STATE_STOPPED;
+ tx_ring->tx_deferred_start = true;
}
return 0;
@@ -473,9 +475,11 @@ enetc_rx_queue_setup(struct rte_eth_dev *dev,
ENETC_RBMR_EN);
dev->data->rx_queue_state[rx_ring->index] =
RTE_ETH_QUEUE_STATE_STARTED;
+ rx_ring->rx_deferred_start = false;
} else {
dev->data->rx_queue_state[rx_ring->index] =
RTE_ETH_QUEUE_STATE_STOPPED;
+ rx_ring->rx_deferred_start = true;
}
rx_ring->crc_len = (uint8_t)((rx_offloads & RTE_ETH_RX_OFFLOAD_KEEP_CRC) ?