X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Focteontx2%2Fotx2_ethdev_ops.c;h=faecf216c1341d828cb24ef1e8ed18313873d153;hb=9c99878aa1b16de26fcce82c112b401766dd910e;hp=8f1635dbabae6fbb31929f0b3a20e31dd11a9797;hpb=35867a370f5dedf24b4efc13fdd01474b80e8721;p=dpdk.git diff --git a/drivers/net/octeontx2/otx2_ethdev_ops.c b/drivers/net/octeontx2/otx2_ethdev_ops.c index 8f1635dbab..faecf216c1 100644 --- a/drivers/net/octeontx2/otx2_ethdev_ops.c +++ b/drivers/net/octeontx2/otx2_ethdev_ops.c @@ -148,8 +148,10 @@ otx2_nix_promisc_enable(struct rte_eth_dev *eth_dev) int otx2_nix_promisc_disable(struct rte_eth_dev *eth_dev) { - otx2_nix_promisc_config(eth_dev, 0); + struct otx2_eth_dev *dev = otx2_eth_pmd_priv(eth_dev); + otx2_nix_promisc_config(eth_dev, dev->dmac_filter_enable); nix_cgx_promisc_config(eth_dev, 0); + dev->dmac_filter_enable = false; return 0; } @@ -610,9 +612,17 @@ otx2_nix_info_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *devinfo) /* Auto negotiation disabled */ devinfo->speed_capa = ETH_LINK_SPEED_FIXED; - devinfo->speed_capa |= ETH_LINK_SPEED_1G | ETH_LINK_SPEED_10G | - ETH_LINK_SPEED_25G | ETH_LINK_SPEED_40G | - ETH_LINK_SPEED_50G | ETH_LINK_SPEED_100G; + if (!otx2_dev_is_vf_or_sdp(dev) && !otx2_dev_is_lbk(dev)) { + devinfo->speed_capa |= ETH_LINK_SPEED_1G | ETH_LINK_SPEED_10G | + ETH_LINK_SPEED_25G | ETH_LINK_SPEED_40G; + + /* 50G and 100G to be supported for board version C0 + * and above. + */ + if (!otx2_dev_is_Ax(dev)) + devinfo->speed_capa |= ETH_LINK_SPEED_50G | + ETH_LINK_SPEED_100G; + } devinfo->dev_capa = RTE_ETH_DEV_CAPA_RUNTIME_RX_QUEUE_SETUP | RTE_ETH_DEV_CAPA_RUNTIME_TX_QUEUE_SETUP;