X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fsfc%2Fsfc.h;h=51be44037dedb712b572a52d8d1d26ddfaad4221;hb=d7812ffd83588c724d2f291f2030c9994f9d1113;hp=805f211cc1719bc6dcacb0d382e13f30548b0bf2;hpb=5e23c24988f2df5b7797e57eff93fd8af8ceeca7;p=dpdk.git diff --git a/drivers/net/sfc/sfc.h b/drivers/net/sfc/sfc.h index 805f211cc1..51be44037d 100644 --- a/drivers/net/sfc/sfc.h +++ b/drivers/net/sfc/sfc.h @@ -27,9 +27,6 @@ extern "C" { #endif -/** RSS hash offloads mask */ -#define SFC_RSS_OFFLOADS (ETH_RSS_IP | ETH_RSS_TCP) - /* * +---------------+ * | UNINITIALIZED |<-----------+ @@ -154,6 +151,24 @@ struct sfc_port { uint32_t mac_stats_mask[EFX_MAC_STATS_MASK_NPAGES]; }; +struct sfc_rss_hf_rte_to_efx { + uint64_t rte; + efx_rx_hash_type_t efx; +}; + +struct sfc_rss { + unsigned int channels; + efx_rx_scale_context_type_t context_type; + efx_rx_hash_support_t hash_support; + efx_rx_hash_alg_t hash_alg; + unsigned int hf_map_nb_entries; + struct sfc_rss_hf_rte_to_efx *hf_map; + + efx_rx_hash_type_t hash_types; + unsigned int tbl[EFX_RSS_TBL_SIZE]; + uint8_t key[EFX_RSS_KEY_SIZE]; +}; + /* Adapter private data */ struct sfc_adapter { /* @@ -223,13 +238,9 @@ struct sfc_adapter { boolean_t tso; - unsigned int rss_channels; + uint32_t rxd_wait_timeout_ns; - efx_rx_scale_context_type_t rss_support; - efx_rx_hash_support_t hash_support; - efx_rx_hash_type_t rss_hash_types; - unsigned int rss_tbl[EFX_RSS_TBL_SIZE]; - uint8_t rss_key[EFX_RSS_KEY_SIZE]; + struct sfc_rss rss; /* * Shared memory copy of the Rx datapath name to be used by