From: Gagandeep Singh <[email protected]> Move TX confirmation mode setting from TXQ setup to device initialization because TXQ0 is not always set up by the user.
Signed-off-by: Jun Yang <[email protected]> Signed-off-by: Gagandeep Singh <[email protected]> --- drivers/net/dpaa2/dpaa2_ethdev.c | 40 ++++++++++++-------------------- 1 file changed, 15 insertions(+), 25 deletions(-) diff --git a/drivers/net/dpaa2/dpaa2_ethdev.c b/drivers/net/dpaa2/dpaa2_ethdev.c index f211357919..c95704d4ca 100644 --- a/drivers/net/dpaa2/dpaa2_ethdev.c +++ b/drivers/net/dpaa2/dpaa2_ethdev.c @@ -1153,7 +1153,6 @@ dpaa2_dev_tx_queue_setup(struct rte_eth_dev *dev, struct dpni_queue tx_conf_cfg; struct dpni_queue tx_flow_cfg; uint8_t options = 0, flow_id; - uint8_t ceetm_ch_idx; uint16_t channel_id; struct dpni_queue_id qid; uint32_t tc_id; @@ -1174,30 +1173,6 @@ dpaa2_dev_tx_queue_setup(struct rte_eth_dev *dev, memset(&tx_conf_cfg, 0, sizeof(struct dpni_queue)); memset(&tx_flow_cfg, 0, sizeof(struct dpni_queue)); - if (!tx_queue_id) { - for (ceetm_ch_idx = 0; - ceetm_ch_idx <= (priv->num_channels - 1); - ceetm_ch_idx++) { - /*Set tx-conf and error configuration*/ - if (priv->flags & DPAA2_TX_CONF_ENABLE) { - ret = dpni_set_tx_confirmation_mode(dpni, - CMD_PRI_LOW, priv->token, - ceetm_ch_idx, - DPNI_CONF_AFFINE); - } else { - ret = dpni_set_tx_confirmation_mode(dpni, - CMD_PRI_LOW, priv->token, - ceetm_ch_idx, - DPNI_CONF_DISABLE); - } - if (ret) { - DPAA2_PMD_ERR("Error(%d) in tx conf setting", - ret); - return ret; - } - } - } - tc_id = tx_queue_id % priv->num_tx_tc; channel_id = (uint8_t)(tx_queue_id / priv->num_tx_tc) % priv->num_channels; flow_id = 0; @@ -3624,6 +3599,21 @@ dpaa2_dev_init(struct rte_eth_dev *eth_dev) goto init_err; } + for (i = 0; i < priv->num_channels; i++) { + /*Set tx-conf and error configuration*/ + if (priv->flags & DPAA2_TX_CONF_ENABLE) { + ret = dpni_set_tx_confirmation_mode(dpni_dev, + CMD_PRI_LOW, priv->token, i, DPNI_CONF_AFFINE); + } else { + ret = dpni_set_tx_confirmation_mode(dpni_dev, + CMD_PRI_LOW, priv->token, i, DPNI_CONF_DISABLE); + } + if (ret) { + DPAA2_PMD_ERR("Error(%d) in tx conf setting", ret); + goto init_err; + } + } + /* Allocate memory for storing MAC addresses. * Table of mac_filter_entries size is allocated so that RTE ether lib * can add MAC entries when rte_eth_dev_mac_addr_add is called. -- 2.43.0

