Signed-off-by: Jianfeng Tan <jianfeng.tan at intel.com> --- drivers/net/cxgbe/cxgbe_ethdev.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+)
diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_ethdev.c index 97ef152..f17d5d5 100644 --- a/drivers/net/cxgbe/cxgbe_ethdev.c +++ b/drivers/net/cxgbe/cxgbe_ethdev.c @@ -767,6 +767,22 @@ static int cxgbe_flow_ctrl_set(struct rte_eth_dev *eth_dev, &pi->link_cfg); } +static int cxgbe_dev_ptype_info_get(struct rte_eth_dev *eth_dev __rte_unused, + uint32_t ptype_mask, uint32_t ptypes[]) +{ + int num = 0; + + if (eth_dev->rx_pkt_burst == cxgbe_recv_pkts) { + if ((ptype_mask & RTE_PTYPE_L3_MASK) == RTE_PTYPE_L3_MASK) { + ptypes[num++] = RTE_PTYPE_L3_IPV4; + ptypes[num++] = RTE_PTYPE_L3_IPV6; + } + } else + num = -ENOTSUP; + + return num; +} + static struct eth_dev_ops cxgbe_eth_dev_ops = { .dev_start = cxgbe_dev_start, .dev_stop = cxgbe_dev_stop, @@ -777,6 +793,7 @@ static struct eth_dev_ops cxgbe_eth_dev_ops = { .allmulticast_disable = cxgbe_dev_allmulticast_disable, .dev_configure = cxgbe_dev_configure, .dev_infos_get = cxgbe_dev_info_get, + .dev_ptype_info_get = cxgbe_dev_ptype_info_get, .link_update = cxgbe_dev_link_update, .mtu_set = cxgbe_dev_mtu_set, .tx_queue_setup = cxgbe_dev_tx_queue_setup, -- 2.1.4