{
struct mvneta_priv *priv = dev->data->dev_private;
+ dev->data->dev_started = 0;
+
if (!priv->ppio)
return;
* @param dev
* Pointer to Ethernet device structure.
*/
-static void
+static int
mvneta_dev_close(struct rte_eth_dev *dev)
{
struct mvneta_priv *priv = dev->data->dev_private;
int i;
+ if (rte_eal_process_type() != RTE_PROC_PRIMARY)
+ return 0;
+
if (priv->ppio)
mvneta_dev_stop(dev);
mvneta_neta_deinit();
rte_mvep_deinit(MVEP_MOD_T_NETA);
}
+
+ return 0;
}
/**
mvneta_set_tx_function(eth_dev);
eth_dev->dev_ops = &mvneta_ops;
- /* Flag to call rte_eth_dev_release_port() in rte_eth_dev_close(). */
- eth_dev->data->dev_flags |= RTE_ETH_DEV_CLOSE_REMOVE;
-
rte_eth_dev_probing_finish(eth_dev);
return 0;
out_free: