From: Alejandro Lucero Date: Wed, 2 Jan 2019 15:21:49 +0000 (+0000) Subject: net/nfp: fix device start/stop for VFs X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=4d2c0cb5a3aa81b3692d28c1d908cf7451e69f7d;p=dpdk.git net/nfp: fix device start/stop for VFs Previous commit adding multiprocess support broke VF support. When VFs, the PMD does not set the link up or down. Fixes: ef28aa96e53b ("net/nfp: support multiprocess") Signed-off-by: Alejandro Lucero --- diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c index ffef97d80e..05a44a2a9e 100644 --- a/drivers/net/nfp/nfp_net.c +++ b/drivers/net/nfp/nfp_net.c @@ -766,12 +766,14 @@ nfp_net_start(struct rte_eth_dev *dev) goto error; } - if (hw->is_pf && rte_eal_process_type() == RTE_PROC_PRIMARY) - /* Configure the physical port up */ - nfp_eth_set_configured(hw->cpp, hw->pf_port_idx, 1); - else - nfp_eth_set_configured(dev->process_private, - hw->pf_port_idx, 1); + if (hw->is_pf) { + if (rte_eal_process_type() == RTE_PROC_PRIMARY) + /* Configure the physical port up */ + nfp_eth_set_configured(hw->cpp, hw->pf_port_idx, 1); + else + nfp_eth_set_configured(dev->process_private, + hw->pf_port_idx, 1); + } hw->ctrl = new_ctrl; @@ -820,12 +822,14 @@ nfp_net_stop(struct rte_eth_dev *dev) (struct nfp_net_rxq *)dev->data->rx_queues[i]); } - if (hw->is_pf && rte_eal_process_type() == RTE_PROC_PRIMARY) - /* Configure the physical port down */ - nfp_eth_set_configured(hw->cpp, hw->pf_port_idx, 0); - else - nfp_eth_set_configured(dev->process_private, - hw->pf_port_idx, 0); + if (hw->is_pf) { + if (rte_eal_process_type() == RTE_PROC_PRIMARY) + /* Configure the physical port down */ + nfp_eth_set_configured(hw->cpp, hw->pf_port_idx, 0); + else + nfp_eth_set_configured(dev->process_private, + hw->pf_port_idx, 0); + } } /* Reset and stop device. The device can not be restarted. */