net/txgbe: add Rx and Tx init
[dpdk.git] / drivers / net / sfc / sfc.h
index fa7c79b..ed059e1 100644 (file)
@@ -1,5 +1,5 @@
 /* SPDX-License-Identifier: BSD-3-Clause
- *
+*
  * Copyright(c) 2019-2020 Xilinx, Inc.
  * Copyright(c) 2016-2019 Solarflare Communications Inc.
  *
@@ -26,6 +26,8 @@
 #include "sfc_debug.h"
 #include "sfc_log.h"
 #include "sfc_filter.h"
+#include "sfc_sriov.h"
+#include "sfc_mae.h"
 
 #ifdef __cplusplus
 extern "C" {
@@ -157,6 +159,8 @@ struct sfc_rss {
        efx_rx_hash_type_t              hash_types;
        unsigned int                    tbl[EFX_RSS_TBL_SIZE];
        uint8_t                         key[EFX_RSS_KEY_SIZE];
+
+       uint32_t                        dummy_rss_context;
 };
 
 /* Adapter private data shared by primary and secondary processes */
@@ -218,15 +222,19 @@ struct sfc_adapter {
        struct rte_kvargs               *kvargs;
        int                             socket_id;
        efsys_bar_t                     mem_bar;
+       /* Function control window offset */
+       efsys_dma_addr_t                fcw_offset;
        efx_family_t                    family;
        efx_nic_t                       *nic;
        rte_spinlock_t                  nic_lock;
        rte_atomic32_t                  restart_required;
 
        struct sfc_efx_mcdi             mcdi;
+       struct sfc_sriov                sriov;
        struct sfc_intr                 intr;
        struct sfc_port                 port;
        struct sfc_filter               filter;
+       struct sfc_mae                  mae;
 
        struct sfc_flow_list            flow_list;
 
@@ -395,6 +403,14 @@ int sfc_port_reset_mac_stats(struct sfc_adapter *sa);
 int sfc_set_rx_mode(struct sfc_adapter *sa);
 int sfc_set_rx_mode_unchecked(struct sfc_adapter *sa);
 
+struct sfc_hw_switch_id;
+
+int sfc_hw_switch_id_init(struct sfc_adapter *sa,
+                         struct sfc_hw_switch_id **idp);
+void sfc_hw_switch_id_fini(struct sfc_adapter *sa,
+                          struct sfc_hw_switch_id *idp);
+bool sfc_hw_switch_ids_equal(const struct sfc_hw_switch_id *left,
+                            const struct sfc_hw_switch_id *right);
 
 #ifdef __cplusplus
 }