#include "sfc_debug.h"
#include "sfc_log.h"
#include "sfc_filter.h"
+#include "sfc_flow_rss.h"
+#include "sfc_flow_tunnel.h"
#include "sfc_sriov.h"
#include "sfc_mae.h"
#include "sfc_dp.h"
#include "sfc_repr_proxy.h"
#include "sfc_service.h"
#include "sfc_ethdev_state.h"
+#include "sfc_nic_dma_dp.h"
#ifdef __cplusplus
extern "C" {
unsigned int tbl[EFX_RSS_TBL_SIZE];
uint8_t key[EFX_RSS_KEY_SIZE];
- uint32_t dummy_rss_context;
+ struct sfc_flow_rss_ctx dummy_ctx;
};
/* Adapter private data shared by primary and secondary processes */
bool counters_rxq_allocated;
unsigned int nb_repr_rxq;
unsigned int nb_repr_txq;
+
+ struct sfc_nic_dma_info nic_dma_info;
};
/* Adapter process private data */
struct sfc_intr intr;
struct sfc_port port;
struct sfc_sw_stats sw_stats;
+ struct sfc_flow_rss flow_rss;
+ /* Registry of tunnel offload contexts */
+ struct sfc_flow_tunnel flow_tunnels[SFC_FT_MAX_NTUNNELS];
struct sfc_filter filter;
struct sfc_mae mae;
struct sfc_repr_proxy repr_proxy;
return rte_get_timer_cycles() * MS_PER_S / rte_get_timer_hz();
}
-int sfc_dma_alloc(const struct sfc_adapter *sa, const char *name, uint16_t id,
- size_t len, int socket_id, efsys_mem_t *esmp);
+int sfc_dma_alloc(struct sfc_adapter *sa, const char *name, uint16_t id,
+ efx_nic_dma_addr_type_t addr_type, size_t len, int socket_id,
+ efsys_mem_t *esmp);
void sfc_dma_free(const struct sfc_adapter *sa, efsys_mem_t *esmp);
uint32_t sfc_register_logtype(const struct rte_pci_addr *pci_addr,