ixgbe: configure CRC stripping behaviour of PF
authorIntel <intel.com>
Wed, 19 Dec 2012 23:00:00 +0000 (00:00 +0100)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Thu, 25 Jul 2013 13:48:45 +0000 (15:48 +0200)
Signed-off-by: Intel
config/defconfig_i686-default-linuxapp-gcc
config/defconfig_i686-default-linuxapp-icc
config/defconfig_x86_64-default-linuxapp-gcc
config/defconfig_x86_64-default-linuxapp-icc
lib/librte_pmd_ixgbe/ixgbe_ethdev.c

index 247231f..013dde1 100644 (file)
@@ -150,6 +150,7 @@ CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_DRIVER=n
+CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
 CONFIG_RTE_LIBRTE_IXGBE_RX_ALLOW_BULK_ALLOC=y
 
 #
index 522a9e9..eaea48a 100644 (file)
@@ -150,6 +150,7 @@ CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_DRIVER=n
+CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
 CONFIG_RTE_LIBRTE_IXGBE_RX_ALLOW_BULK_ALLOC=y
 
 #
index c2138db..95e2513 100644 (file)
@@ -150,6 +150,7 @@ CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_DRIVER=n
+CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
 CONFIG_RTE_LIBRTE_IXGBE_RX_ALLOW_BULK_ALLOC=y
 
 #
index e336120..cd8ed79 100644 (file)
@@ -150,6 +150,7 @@ CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
 CONFIG_RTE_LIBRTE_IXGBE_DEBUG_DRIVER=n
+CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
 CONFIG_RTE_LIBRTE_IXGBE_RX_ALLOW_BULK_ALLOC=y
 
 #
index d53b2b2..b0fc67b 100644 (file)
@@ -2130,14 +2130,21 @@ ixgbevf_dev_configure(struct rte_eth_dev *dev)
        struct rte_eth_conf* conf = &dev->data->dev_conf;
 
 
-       if (!conf->rxmode.hw_strip_crc) {
                /*
                 * VF has no ability to enable/disable HW CRC
                 * Keep the persistent behavior the same as Host PF
                 */
+#ifndef RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC
+       if (!conf->rxmode.hw_strip_crc) {
                PMD_INIT_LOG(INFO, "VF can't disable HW CRC Strip\n");
                conf->rxmode.hw_strip_crc = 1;
        }
+#else
+       if (conf->rxmode.hw_strip_crc) {
+               PMD_INIT_LOG(INFO, "VF can't enable HW CRC Strip\n");
+               conf->rxmode.hw_strip_crc = 0;
+       }
+#endif
 
        return 0;
 }