static int enicpmd_dev_filter_ctrl(struct rte_eth_dev *dev, enum rte_filter_type filter_type, enum rte_filter_op filter_op, void *arg) { int ret = 0; ENICPMD_FUNC_TRACE(); switch (filter_type) { case RTE_ETH_FILTER_GENERIC: if (filter_op != RTE_ETH_FILTER_GET) return -EINVAL; *(const void **)arg = &enic_flow_ops; break; case RTE_ETH_FILTER_FDIR: ret = enicpmd_fdir_ctrl_func(dev, filter_op, arg); break; default: dev_warning(enic, "Filter type (%d) not supported", filter_type); ret = -EINVAL; break; } return ret; }
static int enicpmd_dev_filter_ctrl(struct rte_eth_dev *dev, enum rte_filter_type filter_type, enum rte_filter_op filter_op, void *arg) { int ret = -EINVAL; if (RTE_ETH_FILTER_FDIR == filter_type) ret = enicpmd_fdir_ctrl_func(dev, filter_op, arg); else dev_warning(enic, "Filter type (%d) not supported", filter_type); return ret; }