We still have no maintainer for e1000.
Anyone to double-check this short patch?

2015-05-28 17:46, Yury Kylulin:
> Add support to enable and disable reception of all multicast packets by the 
> VF using standard API
> rte_eth_allmulticast_enable()/rte_eth_allmulticast_disable().
> 
> Signed-off-by: Yury Kylulin <yury.kylulin at intel.com>
[...]
> +static void
> +igbvf_allmulticast_enable(struct rte_eth_dev *dev)
> +{
> +     struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
> +
> +     e1000_promisc_set_vf(hw, e1000_promisc_multicast);
> +}
> +
> +static void
> +igbvf_allmulticast_disable(struct rte_eth_dev *dev)
> +{
> +     struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
> +
> +     e1000_promisc_set_vf(hw, e1000_promisc_disabled);
> +}

The values come from this enum:
enum e1000_promisc_type {
        e1000_promisc_disabled = 0,   /* all promisc modes disabled */
        e1000_promisc_unicast = 1,    /* unicast promiscuous enabled */
        e1000_promisc_multicast = 2,  /* multicast promiscuous enabled */
        e1000_promisc_enabled = 3,    /* both uni and multicast promisc */

Reply via email to