5aeb15469a
The `xxx_ipv6multicast` function in each driver is not adapted to multiple IPv6 addresses yet, and they're redundant, so try to take them into common code. Change: 1. Add MAC `g_ipv6_ethallnodes` and `g_ipv6_ethallrouters` in `icmpv6_devinit` and call them in `netdev_register` 2. Add multicast MAC for Neighbor Solicitation when adding any IPv6 address, and remove them when IPv6 address is removed 3. Select `NET_MCASTGROUP` when `NET_ICMPv6` because now we need `d_addmac` when we have ICMPv6 Note: We want modules outside net stack to call functions like `netdev_ipv6_add` and never touch the related MAC address, so these MAC functions are added as internal functions to `net/netdev/netdev.h` Signed-off-by: Zhe Weng <wengzhe@xiaomi.com> |
||
---|---|---|
.. | ||
hw | ||
misoc.h | ||
misoc_flushcache.c | ||
misoc_initialize.c | ||
misoc_lowputs.c | ||
misoc_mdelay.c | ||
misoc_modifyreg8.c | ||
misoc_modifyreg16.c | ||
misoc_modifyreg32.c | ||
misoc_net.c | ||
misoc_puts.c | ||
misoc_serial.c | ||
misoc_timerisr.c | ||
misoc_udelay.c |