net/hns3: add runtime config for mailbox limit time
[dpdk.git] / drivers / net / hns3 / hns3_ethdev_vf.c
index e896de5..8e5df05 100644 (file)
@@ -784,8 +784,6 @@ hns3vf_dev_configure(struct rte_eth_dev *dev)
        uint16_t nb_rx_q = dev->data->nb_rx_queues;
        uint16_t nb_tx_q = dev->data->nb_tx_queues;
        struct rte_eth_rss_conf rss_conf;
-       uint32_t max_rx_pkt_len;
-       uint16_t mtu;
        bool gro_en;
        int ret;
 
@@ -825,28 +823,9 @@ hns3vf_dev_configure(struct rte_eth_dev *dev)
                        goto cfg_err;
        }
 
-       /*
-        * If jumbo frames are enabled, MTU needs to be refreshed
-        * according to the maximum RX packet length.
-        */
-       if (conf->rxmode.offloads & DEV_RX_OFFLOAD_JUMBO_FRAME) {
-               max_rx_pkt_len = conf->rxmode.max_rx_pkt_len;
-               if (max_rx_pkt_len > HNS3_MAX_FRAME_LEN ||
-                   max_rx_pkt_len <= HNS3_DEFAULT_FRAME_LEN) {
-                       hns3_err(hw, "maximum Rx packet length must be greater "
-                                "than %u and less than %u when jumbo frame enabled.",
-                                (uint16_t)HNS3_DEFAULT_FRAME_LEN,
-                                (uint16_t)HNS3_MAX_FRAME_LEN);
-                       ret = -EINVAL;
-                       goto cfg_err;
-               }
-
-               mtu = (uint16_t)HNS3_PKTLEN_TO_MTU(max_rx_pkt_len);
-               ret = hns3vf_dev_mtu_set(dev, mtu);
-               if (ret)
-                       goto cfg_err;
-               dev->data->mtu = mtu;
-       }
+       ret = hns3vf_dev_mtu_set(dev, conf->rxmode.mtu);
+       if (ret != 0)
+               goto cfg_err;
 
        ret = hns3vf_dev_configure_vlan(dev);
        if (ret)
@@ -929,13 +908,6 @@ hns3vf_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu)
                rte_spinlock_unlock(&hw->lock);
                return ret;
        }
-       if (mtu > RTE_ETHER_MTU)
-               dev->data->dev_conf.rxmode.offloads |=
-                                               DEV_RX_OFFLOAD_JUMBO_FRAME;
-       else
-               dev->data->dev_conf.rxmode.offloads &=
-                                               ~DEV_RX_OFFLOAD_JUMBO_FRAME;
-       dev->data->dev_conf.rxmode.max_rx_pkt_len = frame_size;
        rte_spinlock_unlock(&hw->lock);
 
        return 0;
@@ -972,7 +944,6 @@ hns3vf_dev_infos_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *info)
                                 DEV_RX_OFFLOAD_SCATTER |
                                 DEV_RX_OFFLOAD_VLAN_STRIP |
                                 DEV_RX_OFFLOAD_VLAN_FILTER |
-                                DEV_RX_OFFLOAD_JUMBO_FRAME |
                                 DEV_RX_OFFLOAD_RSS_HASH |
                                 DEV_RX_OFFLOAD_TCP_LRO);
        info->tx_offload_capa = (DEV_TX_OFFLOAD_OUTER_IPV4_CKSUM |
@@ -3115,4 +3086,5 @@ RTE_PMD_REGISTER_KMOD_DEP(net_hns3_vf, "* igb_uio | vfio-pci");
 RTE_PMD_REGISTER_PARAM_STRING(net_hns3_vf,
                HNS3_DEVARG_RX_FUNC_HINT "=vec|sve|simple|common "
                HNS3_DEVARG_TX_FUNC_HINT "=vec|sve|simple|common "
-               HNS3_DEVARG_DEV_CAPS_MASK "=<1-65535> ");
+               HNS3_DEVARG_DEV_CAPS_MASK "=<1-65535> "
+               HNS3_DEVARG_MBX_TIME_LIMIT_MS "=<uint16_t> ");