Zhe Weng 5aeb15469a netdev/ipv6: Move xxx_ipv6multicast from arch to common code
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>
2023-12-16 05:26:16 -08:00
..
2023-08-03 00:06:24 -07:00
2023-12-14 20:02:52 -08:00
2023-12-09 13:44:46 -08:00
2023-09-22 13:51:00 +08:00
2023-10-17 13:43:43 +08:00
2023-12-11 17:00:10 -03:00
2023-12-14 20:02:52 -08:00
2023-12-11 02:06:51 -08:00
2023-07-08 13:50:48 +08:00
2023-12-04 22:20:50 +08:00
2023-12-11 08:43:26 -08:00