[U-Boot] [RFC PATCH v3 10/11] net: e1000 enable multicast reception

Joe Hershberger joe.hershberger at gmail.com
Thu Feb 2 18:31:49 UTC 2017


On Wed, Jan 25, 2017 at 3:56 AM, Chris Packham <judge.packham at gmail.com> wrote:
> IPv6 neighbor discovery uses various multicast addresses to send the
> request and receive the response. For neighbor discovery to work
> properly in U-boot the Ethernet device needs to support joining/leaving
> various L2 multicast groups or it needs to support multicast/promiscuous
> mode. For the sake of simplicity the latter approach has been taken. The
> e1000 hardware has slightly finer grained control in that it is possible
> to enable support for multicast-promiscuous mode separately from unicast
> so the extra traffic received is less.
>
> Signed-off-by: Chris Packham <judge.packham at gmail.com>
>
> ---
> Drivers that support multicast reception have it enabled/disabled with
> CONFIG_MCAST_TFTP. It wouldn't be too hard to create a separate
> CONFIG_MCAST that is selected by enabling CONFIG_MCAST_TFTP or
> CONFIG_NET6.

That sounds like the right approach to me.

> Changes in v3: None
> Changes in v2: None
>
>  drivers/net/e1000.c | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/drivers/net/e1000.c b/drivers/net/e1000.c
> index 875682b1b89e..4c26cb4ce68f 100644
> --- a/drivers/net/e1000.c
> +++ b/drivers/net/e1000.c
> @@ -5067,6 +5067,11 @@ e1000_setup_rctl(struct e1000_hw *hw)
>         rctl &= ~(E1000_RCTL_SZ_4096);
>                 rctl |= E1000_RCTL_SZ_2048;
>                 rctl &= ~(E1000_RCTL_BSEX | E1000_RCTL_LPE);
> +
> +#ifdef CONFIG_NET6
> +       rctl |= E1000_RCTL_MPE;
> +#endif
> +
>         E1000_WRITE_REG(hw, RCTL, rctl);
>  }
>
> --
> 2.11.0.24.ge6920cf
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot


More information about the U-Boot mailing list