X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fsfc%2Fsfc_ethdev.c;h=f5986b610fff2f3dc412eb8dd36996d5cb48f7bd;hb=2f577f0ea1a3;hp=919569445fde3d63d6951d8595dc6ce61b02991d;hpb=8d7d4fcdcabe7f71ea79e62ac8d23257099623e6;p=dpdk.git diff --git a/drivers/net/sfc/sfc_ethdev.c b/drivers/net/sfc/sfc_ethdev.c index 919569445f..f5986b610f 100644 --- a/drivers/net/sfc/sfc_ethdev.c +++ b/drivers/net/sfc/sfc_ethdev.c @@ -187,7 +187,8 @@ sfc_dev_infos_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info) dev_info->dev_capa = RTE_ETH_DEV_CAPA_RUNTIME_RX_QUEUE_SETUP | RTE_ETH_DEV_CAPA_RUNTIME_TX_QUEUE_SETUP; - if (mae->status == SFC_MAE_STATUS_SUPPORTED) { + if (mae->status == SFC_MAE_STATUS_SUPPORTED || + mae->status == SFC_MAE_STATUS_ADMIN) { dev_info->switch_info.name = dev->device->driver->name; dev_info->switch_info.domain_id = mae->switch_domain_id; dev_info->switch_info.port_id = mae->switch_port_id; @@ -1140,17 +1141,6 @@ sfc_dev_set_mtu(struct rte_eth_dev *dev, uint16_t mtu) } } - /* - * The driver does not use it, but other PMDs update jumbo frame - * flag and max_rx_pkt_len when MTU is set. - */ - if (mtu > RTE_ETHER_MTU) { - struct rte_eth_rxmode *rxmode = &dev->data->dev_conf.rxmode; - rxmode->offloads |= DEV_RX_OFFLOAD_JUMBO_FRAME; - } - - dev->data->dev_conf.rxmode.max_rx_pkt_len = sa->port.pdu; - sfc_adapter_unlock(sa); sfc_log_init(sa, "done"); @@ -2252,7 +2242,7 @@ sfc_representor_info_get(struct rte_eth_dev *dev, sfc_adapter_lock(sa); - if (sa->mae.status != SFC_MAE_STATUS_SUPPORTED) { + if (sa->mae.status != SFC_MAE_STATUS_ADMIN) { sfc_adapter_unlock(sa); return -ENOTSUP; } @@ -2698,7 +2688,7 @@ sfc_parse_switch_mode(struct sfc_adapter *sa, bool has_representors) goto fail_kvargs; if (switch_mode == NULL) { - sa->switchdev = encp->enc_mae_supported && + sa->switchdev = encp->enc_mae_admin && (!encp->enc_datapath_cap_evb || has_representors); } else if (strcasecmp(switch_mode, SFC_KVARG_SWITCH_MODE_LEGACY) == 0) { @@ -2793,7 +2783,6 @@ sfc_eth_dev_init(struct rte_eth_dev *dev, void *init_params) /* Copy PCI device info to the dev->data */ rte_eth_copy_pci_info(dev, pci_dev); - dev->data->dev_flags |= RTE_ETH_DEV_AUTOFILL_QUEUE_XSTATS; dev->data->dev_flags |= RTE_ETH_DEV_FLOW_OPS_THREAD_SAFE; rc = sfc_kvargs_parse(sa); @@ -2834,9 +2823,9 @@ sfc_eth_dev_init(struct rte_eth_dev *dev, void *init_params) if (rc != 0) goto fail_attach; - if (sa->switchdev && sa->mae.status != SFC_MAE_STATUS_SUPPORTED) { + if (sa->switchdev && sa->mae.status != SFC_MAE_STATUS_ADMIN) { sfc_err(sa, - "failed to enable switchdev mode without MAE support"); + "failed to enable switchdev mode without admin MAE privilege"); rc = ENOTSUP; goto fail_switchdev_no_mae; }