* [dpdk-dev] [PATCH 1/1] net/nfp: fix set_mac_addr
@ 2019-03-08 15:40 Pablo Cascón
2019-03-10 11:42 ` Alejandro Lucero
0 siblings, 1 reply; 3+ messages in thread
From: Pablo Cascón @ 2019-03-08 15:40 UTC (permalink / raw)
To: dev; +Cc: stable, Pablo Cascón
Some firmwares, mostly for VFs, do not advertise the feature /
capability of changing the MAC address while the interface is up. With
such firmware a request to change the MAC address that at the same
time also tries to enable the not available feature will be denied by
the firmware resulting in an error message like:
nfp_net_reconfig(): Error nfp_net reconfig for ctrl: 80000000 update: 800
Fix set_mac_addr by not trying to enable a feature if it is not
advertised by the firmware.
Fixes: 2fe669f4bcd2 ("net/nfp: support MAC address change")
Signed-off-by: Pablo Cascón <pablo.cascon@netronome.com>
---
drivers/net/nfp/nfp_net.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c
index 54c6da9..278e154 100644
--- a/drivers/net/nfp/nfp_net.c
+++ b/drivers/net/nfp/nfp_net.c
@@ -566,7 +566,10 @@ nfp_set_mac_addr(struct rte_eth_dev *dev, struct ether_addr *mac_addr)
/* Signal the NIC about the change */
update = NFP_NET_CFG_UPDATE_MACADDR;
- ctrl = hw->ctrl | NFP_NET_CFG_CTRL_LIVE_ADDR;
+ ctrl = hw->ctrl;
+ if ((hw->ctrl & NFP_NET_CFG_CTRL_ENABLE) &&
+ (hw->cap & NFP_NET_CFG_CTRL_LIVE_ADDR))
+ ctrl |= NFP_NET_CFG_CTRL_LIVE_ADDR;
if (nfp_net_reconfig(hw, ctrl, update) < 0) {
PMD_INIT_LOG(INFO, "MAC address update failed");
return -EIO;
--
2.7.4
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [dpdk-dev] [PATCH 1/1] net/nfp: fix set_mac_addr
2019-03-08 15:40 [dpdk-dev] [PATCH 1/1] net/nfp: fix set_mac_addr Pablo Cascón
@ 2019-03-10 11:42 ` Alejandro Lucero
2019-03-11 16:52 ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
0 siblings, 1 reply; 3+ messages in thread
From: Alejandro Lucero @ 2019-03-10 11:42 UTC (permalink / raw)
To: Pablo Cascón; +Cc: dev, dpdk stable
On Fri, Mar 8, 2019 at 3:41 PM Pablo Cascón <pablo.cascon@netronome.com>
wrote:
> Some firmwares, mostly for VFs, do not advertise the feature /
> capability of changing the MAC address while the interface is up. With
> such firmware a request to change the MAC address that at the same
> time also tries to enable the not available feature will be denied by
> the firmware resulting in an error message like:
>
> nfp_net_reconfig(): Error nfp_net reconfig for ctrl: 80000000 update: 800
>
> Fix set_mac_addr by not trying to enable a feature if it is not
> advertised by the firmware.
>
> Fixes: 2fe669f4bcd2 ("net/nfp: support MAC address change")
>
> Signed-off-by: Pablo Cascón <pablo.cascon@netronome.com>
> ---
> drivers/net/nfp/nfp_net.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c
> index 54c6da9..278e154 100644
> --- a/drivers/net/nfp/nfp_net.c
> +++ b/drivers/net/nfp/nfp_net.c
> @@ -566,7 +566,10 @@ nfp_set_mac_addr(struct rte_eth_dev *dev, struct
> ether_addr *mac_addr)
>
> /* Signal the NIC about the change */
> update = NFP_NET_CFG_UPDATE_MACADDR;
> - ctrl = hw->ctrl | NFP_NET_CFG_CTRL_LIVE_ADDR;
> + ctrl = hw->ctrl;
> + if ((hw->ctrl & NFP_NET_CFG_CTRL_ENABLE) &&
> + (hw->cap & NFP_NET_CFG_CTRL_LIVE_ADDR))
> + ctrl |= NFP_NET_CFG_CTRL_LIVE_ADDR;
> if (nfp_net_reconfig(hw, ctrl, update) < 0) {
> PMD_INIT_LOG(INFO, "MAC address update failed");
> return -EIO;
> --
> 2.7.4
>
>
Acked-by: Alejandro Lucero <alejandro.lucero@netronome.com>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [dpdk-dev] [dpdk-stable] [PATCH 1/1] net/nfp: fix set_mac_addr
2019-03-10 11:42 ` Alejandro Lucero
@ 2019-03-11 16:52 ` Ferruh Yigit
0 siblings, 0 replies; 3+ messages in thread
From: Ferruh Yigit @ 2019-03-11 16:52 UTC (permalink / raw)
To: Alejandro Lucero, Pablo Cascón; +Cc: dev, dpdk stable
On 3/10/2019 11:42 AM, Alejandro Lucero wrote:
> On Fri, Mar 8, 2019 at 3:41 PM Pablo Cascón <pablo.cascon@netronome.com>
> wrote:
>
>> Some firmwares, mostly for VFs, do not advertise the feature /
>> capability of changing the MAC address while the interface is up. With
>> such firmware a request to change the MAC address that at the same
>> time also tries to enable the not available feature will be denied by
>> the firmware resulting in an error message like:
>>
>> nfp_net_reconfig(): Error nfp_net reconfig for ctrl: 80000000 update: 800
>>
>> Fix set_mac_addr by not trying to enable a feature if it is not
>> advertised by the firmware.
>>
>> Fixes: 2fe669f4bcd2 ("net/nfp: support MAC address change")
>>
>> Signed-off-by: Pablo Cascón <pablo.cascon@netronome.com>
>>
> Acked-by: Alejandro Lucero <alejandro.lucero@netronome.com>
>
Applied to dpdk-next-net/master, thanks.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2019-03-11 16:52 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-08 15:40 [dpdk-dev] [PATCH 1/1] net/nfp: fix set_mac_addr Pablo Cascón
2019-03-10 11:42 ` Alejandro Lucero
2019-03-11 16:52 ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).