net/thunderx: query supported packet types
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> Signed-off-by: Maciej Czekaj <maciej.czekaj@caviumnetworks.com> Signed-off-by: Kamil Rytarowski <kamil.rytarowski@caviumnetworks.com> Signed-off-by: Zyta Szpak <zyta.szpak@semihalf.com> Signed-off-by: Slawomir Rosek <slawomir.rosek@semihalf.com> Signed-off-by: Radoslaw Biernacki <rad@semihalf.com>
This commit is contained in:
parent
e2d7fc9f0a
commit
1c80e4fd49
@ -260,6 +260,45 @@ nicvf_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
|
||||
stats->oerrors = port_stats.tx_drops;
|
||||
}
|
||||
|
||||
static const uint32_t *
|
||||
nicvf_dev_supported_ptypes_get(struct rte_eth_dev *dev)
|
||||
{
|
||||
size_t copied;
|
||||
static uint32_t ptypes[32];
|
||||
struct nicvf *nic = nicvf_pmd_priv(dev);
|
||||
static const uint32_t ptypes_pass1[] = {
|
||||
RTE_PTYPE_L3_IPV4,
|
||||
RTE_PTYPE_L3_IPV4_EXT,
|
||||
RTE_PTYPE_L3_IPV6,
|
||||
RTE_PTYPE_L3_IPV6_EXT,
|
||||
RTE_PTYPE_L4_TCP,
|
||||
RTE_PTYPE_L4_UDP,
|
||||
RTE_PTYPE_L4_FRAG,
|
||||
};
|
||||
static const uint32_t ptypes_pass2[] = {
|
||||
RTE_PTYPE_TUNNEL_GRE,
|
||||
RTE_PTYPE_TUNNEL_GENEVE,
|
||||
RTE_PTYPE_TUNNEL_VXLAN,
|
||||
RTE_PTYPE_TUNNEL_NVGRE,
|
||||
};
|
||||
static const uint32_t ptypes_end = RTE_PTYPE_UNKNOWN;
|
||||
|
||||
copied = sizeof(ptypes_pass1);
|
||||
memcpy(ptypes, ptypes_pass1, copied);
|
||||
if (nicvf_hw_version(nic) == NICVF_PASS2) {
|
||||
memcpy((char *)ptypes + copied, ptypes_pass2,
|
||||
sizeof(ptypes_pass2));
|
||||
copied += sizeof(ptypes_pass2);
|
||||
}
|
||||
|
||||
memcpy((char *)ptypes + copied, &ptypes_end, sizeof(ptypes_end));
|
||||
if (dev->rx_pkt_burst == nicvf_recv_pkts ||
|
||||
dev->rx_pkt_burst == nicvf_recv_pkts_multiseg)
|
||||
return ptypes;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
nicvf_dev_stats_reset(struct rte_eth_dev *dev)
|
||||
{
|
||||
@ -888,6 +927,7 @@ static const struct eth_dev_ops nicvf_eth_dev_ops = {
|
||||
.stats_reset = nicvf_dev_stats_reset,
|
||||
.promiscuous_enable = nicvf_dev_promisc_enable,
|
||||
.dev_infos_get = nicvf_dev_info_get,
|
||||
.dev_supported_ptypes_get = nicvf_dev_supported_ptypes_get,
|
||||
.mtu_set = nicvf_dev_set_mtu,
|
||||
.reta_update = nicvf_dev_reta_update,
|
||||
.reta_query = nicvf_dev_reta_query,
|
||||
|
Loading…
x
Reference in New Issue
Block a user