src/dpdk/drivers/net/e1000/igb_flow.c
static void
igb_clear_all_ethertype_filter(struct rte_eth_dev *dev)
{
	struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
	struct e1000_filter_info *filter_info =
		E1000_DEV_PRIVATE_TO_FILTER_INFO(dev->data->dev_private);
	int i;

	for (i = 0; i < E1000_MAX_ETQF_FILTERS; i++) {
		if (filter_info->ethertype_mask & (1 << i)) {
			(void)igb_ethertype_filter_remove(filter_info,
							    (uint8_t)i);
			E1000_WRITE_REG(hw, E1000_ETQF(i), 0);
			E1000_WRITE_FLUSH(hw);
		}
	}
}
/* remove all the ether type filters */
remove all the ether type filters
remove all the ether type filters
static void
igb_clear_all_ethertype_filter(struct rte_eth_dev *dev)
{
	struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
	struct e1000_filter_info *filter_info =
		E1000_DEV_PRIVATE_TO_FILTER_INFO(dev->data->dev_private);
	int i;
	for (i = 0; i < E1000_MAX_ETQF_FILTERS; i++) {
		if (filter_info->ethertype_mask & (1 << i)) {
			(void)igb_ethertype_filter_remove(filter_info,
							    (uint8_t)i);
			E1000_WRITE_REG(hw, E1000_ETQF(i), 0);
			E1000_WRITE_FLUSH(hw);
		}
	}
}
static void igb_clear_all_ethertype_filter ( struct rte_eth_dev * dev ) { struct e1000_hw * hw = E1000_DEV_PRIVATE_TO_HW ( dev -> data -> dev_private ) ; struct e1000_filter_info * filter_info = E1000_DEV_PRIVATE_TO_FILTER_INFO ( dev -> data -> dev_private ) ; int i ; for ( i = 0 ; i < E1000_MAX_ETQF_FILTERS ; i ++ ) { if ( filter_info -> ethertype_mask & ( 1 << i ) ) { ( void ) igb_ethertype_filter_remove ( filter_info , ( uint8_t ) i ) ; E1000_WRITE_REG ( hw , E1000_ETQF ( i ) , 0 ) ; E1000_WRITE_FLUSH ( hw ) ; } } }
remove all the ether type filters
remove all the ether type filters