net/cnxk: enable VLAN processing in vector Tx
[dpdk.git] / drivers / net / fm10k / fm10k_ethdev.c
index dc2979b..3236290 100644 (file)
@@ -2,14 +2,15 @@
  * Copyright(c) 2013-2016 Intel Corporation
  */
 
-#include <rte_ethdev_driver.h>
-#include <rte_ethdev_pci.h>
+#include <ethdev_driver.h>
+#include <ethdev_pci.h>
 #include <rte_malloc.h>
 #include <rte_memzone.h>
 #include <rte_string_fns.h>
 #include <rte_dev.h>
 #include <rte_spinlock.h>
 #include <rte_kvargs.h>
+#include <rte_vect.h>
 
 #include "fm10k.h"
 #include "base/fm10k_api.h"
@@ -2939,7 +2940,8 @@ fm10k_set_tx_function(struct rte_eth_dev *dev)
        if (rte_eal_process_type() != RTE_PROC_PRIMARY) {
                /* primary process has set the ftag flag and offloads */
                txq = dev->data->tx_queues[0];
-               if (fm10k_tx_vec_condition_check(txq)) {
+               if (fm10k_tx_vec_condition_check(txq) ||
+                               rte_vect_get_max_simd_bitwidth() < RTE_VECT_SIMD_128) {
                        dev->tx_pkt_burst = fm10k_xmit_pkts;
                        dev->tx_pkt_prepare = fm10k_prep_pkts;
                        PMD_INIT_LOG(DEBUG, "Use regular Tx func");
@@ -2958,7 +2960,8 @@ fm10k_set_tx_function(struct rte_eth_dev *dev)
                txq = dev->data->tx_queues[i];
                txq->tx_ftag_en = tx_ftag_en;
                /* Check if Vector Tx is satisfied */
-               if (fm10k_tx_vec_condition_check(txq))
+               if (fm10k_tx_vec_condition_check(txq) ||
+                               rte_vect_get_max_simd_bitwidth() < RTE_VECT_SIMD_128)
                        use_sse = 0;
        }
 
@@ -2992,7 +2995,8 @@ fm10k_set_rx_function(struct rte_eth_dev *dev)
         * conditions to be met.
         */
        if (!fm10k_rx_vec_condition_check(dev) &&
-                       dev_info->rx_vec_allowed && !rx_ftag_en) {
+                       dev_info->rx_vec_allowed && !rx_ftag_en &&
+                       rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_128) {
                if (dev->data->scattered_rx)
                        dev->rx_pkt_burst = fm10k_recv_scattered_pkts_vec;
                else
@@ -3281,14 +3285,11 @@ static struct rte_pci_driver rte_pmd_fm10k = {
 RTE_PMD_REGISTER_PCI(net_fm10k, rte_pmd_fm10k);
 RTE_PMD_REGISTER_PCI_TABLE(net_fm10k, pci_id_fm10k_map);
 RTE_PMD_REGISTER_KMOD_DEP(net_fm10k, "* igb_uio | uio_pci_generic | vfio-pci");
-RTE_LOG_REGISTER(fm10k_logtype_init, pmd.net.fm10k.init, NOTICE);
-RTE_LOG_REGISTER(fm10k_logtype_driver, pmd.net.fm10k.driver, NOTICE);
-#ifdef RTE_LIBRTE_FM10K_DEBUG_RX
-RTE_LOG_REGISTER(fm10k_logtype_rx, pmd.net.fm10k.rx, DEBUG);
+RTE_LOG_REGISTER_SUFFIX(fm10k_logtype_init, init, NOTICE);
+RTE_LOG_REGISTER_SUFFIX(fm10k_logtype_driver, driver, NOTICE);
+#ifdef RTE_ETHDEV_DEBUG_RX
+RTE_LOG_REGISTER_SUFFIX(fm10k_logtype_rx, rx, DEBUG);
 #endif
-#ifdef RTE_LIBRTE_FM10K_DEBUG_TX
-RTE_LOG_REGISTER(fm10k_logtype_tx, pmd.net.fm10k.tx, DEBUG);
-#endif
-#ifdef RTE_LIBRTE_FM10K_DEBUG_TX_FREE
-RTE_LOG_REGISTER(fm10k_logtype_tx_free, pmd.net.fm10k.tx_free, DEBUG);
+#ifdef RTE_ETHDEV_DEBUG_TX
+RTE_LOG_REGISTER_SUFFIX(fm10k_logtype_tx, tx, DEBUG);
 #endif