ethdev: add new offload flag to keep CRC
[dpdk.git] / drivers / net / ixgbe / ixgbe_ethdev.c
index a3ddfe2..997683d 100644 (file)
@@ -3764,6 +3764,14 @@ ixgbe_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
                dev_info->speed_capa |= ETH_LINK_SPEED_2_5G;
                dev_info->speed_capa |= ETH_LINK_SPEED_5G;
        }
+
+       /* Driver-preferred Rx/Tx parameters */
+       dev_info->default_rxportconf.burst_size = 32;
+       dev_info->default_txportconf.burst_size = 32;
+       dev_info->default_rxportconf.nb_queues = 1;
+       dev_info->default_txportconf.nb_queues = 1;
+       dev_info->default_rxportconf.ring_size = 256;
+       dev_info->default_txportconf.ring_size = 256;
 }
 
 static const uint32_t *
@@ -5000,12 +5008,12 @@ ixgbevf_dev_configure(struct rte_eth_dev *dev)
         * Keep the persistent behavior the same as Host PF
         */
 #ifndef RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC
-       if (!(conf->rxmode.offloads & DEV_RX_OFFLOAD_CRC_STRIP)) {
+       if (rte_eth_dev_must_keep_crc(conf->rxmode.offloads)) {
                PMD_INIT_LOG(NOTICE, "VF can't disable HW CRC Strip");
                conf->rxmode.offloads |= DEV_RX_OFFLOAD_CRC_STRIP;
        }
 #else
-       if (conf->rxmode.offloads & DEV_RX_OFFLOAD_CRC_STRIP) {
+       if (!rte_eth_dev_must_keep_crc(conf->rxmode.offloads)) {
                PMD_INIT_LOG(NOTICE, "VF can't enable HW CRC Strip");
                conf->rxmode.offloads &= ~DEV_RX_OFFLOAD_CRC_STRIP;
        }