On 1/5/2018 5:38 PM, Thomas Monjalon wrote: > There are 3 kind of link data in ethdev: > - capabilities (rte_eth_dev_info) > - configuration (rte_eth_conf) > - status (rte_eth_link) > > A bit-field is used for capabilities (rte_eth_dev_info.speed_capa) and > configuration (rte_eth_conf.link_speeds). > Bits are defined in ETH_LINK_SPEED_*. > > Some numerical (ETH_SPEED_NUM_*) and boolean (ETH_LINK_*) values > are used for the link status (rte_eth_link.*). > > There was a mistake in the comment of rte_eth_link.link_autoneg, > suggesting ETH_LINK_SPEED_[AUTONEG/FIXED] which are 0/1, > instead of ETH_LINK_[AUTONEG/FIXED] which are 1/0. > > The drivers are fixed to use ETH_LINK_[AUTONEG/FIXED]. > > Fixes: 82113036e4e5 ("ethdev: redesign link speed config") > > Suggested-by: Andrew Rybchenko <arybche...@solarflare.com> > Signed-off-by: Thomas Monjalon <tho...@monjalon.net>
<...> > diff --git a/drivers/net/pcap/rte_eth_pcap.c b/drivers/net/pcap/rte_eth_pcap.c > index 5a86752f9..3efb451a2 100644 > --- a/drivers/net/pcap/rte_eth_pcap.c > +++ b/drivers/net/pcap/rte_eth_pcap.c > @@ -124,7 +124,7 @@ static struct rte_eth_link pmd_link = { > .link_speed = ETH_SPEED_NUM_10G, > .link_duplex = ETH_LINK_FULL_DUPLEX, > .link_status = ETH_LINK_DOWN, > - .link_autoneg = ETH_LINK_SPEED_FIXED, > + .link_autoneg = ETH_LINK_AUTONEG, > }; > > static int <...> > diff --git a/drivers/net/softnic/rte_eth_softnic.c > b/drivers/net/softnic/rte_eth_softnic.c > index c21c29e79..5c5464c8d 100644 > --- a/drivers/net/softnic/rte_eth_softnic.c > +++ b/drivers/net/softnic/rte_eth_softnic.c > @@ -522,7 +522,7 @@ pmd_ethdev_register(struct rte_vdev_device *vdev, > soft_dev->data->dev_private = dev_private; > soft_dev->data->dev_link.link_speed = hard_speed; > soft_dev->data->dev_link.link_duplex = ETH_LINK_FULL_DUPLEX; > - soft_dev->data->dev_link.link_autoneg = ETH_LINK_SPEED_FIXED; > + soft_dev->data->dev_link.link_autoneg = ETH_LINK_AUTONEG; > soft_dev->data->dev_link.link_status = ETH_LINK_DOWN; > soft_dev->data->mac_addrs = ð_addr; > soft_dev->data->promiscuous = 1; > static void <...> > diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c > b/drivers/net/vmxnet3/vmxnet3_ethdev.c > index b988d1b41..fa1206c26 100644 > --- a/drivers/net/vmxnet3/vmxnet3_ethdev.c > +++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c > @@ -1143,7 +1143,7 @@ __vmxnet3_dev_link_update(struct rte_eth_dev *dev, > link.link_status = ETH_LINK_UP; > link.link_duplex = ETH_LINK_FULL_DUPLEX; > link.link_speed = ETH_SPEED_NUM_10G; > - link.link_autoneg = ETH_LINK_SPEED_FIXED; > + link.link_autoneg = ETH_LINK_AUTONEG; > } > > vmxnet3_dev_atomic_write_link_status(dev, &link); These three drivers changes from "fixed" to "autoneg", intentional?