[PATCH v4 00/17] IPv6 support
Vyacheslav Mitrofanov V
v.v.mitrofanov at yadro.com
Sun Sep 11 08:04:35 CEST 2022
On Thu, 2022-09-08 at 14:58 +0300, Viacheslav Mitrofanov wrote:
> This patch set adds basic IPv6 support to U-boot.
> It is based on Chris's Packham patches
> (https://lists.denx.de/pipermail/u-boot/2017-January/279366.html)
> Chris's patches were taken as base. There were efforts to launch it
> on
> HiFive SiFive Unmatched board but the board didn't work well. The
> code was
> refactored, fixed some bugs as CRC for little-endian, some parts were
> implemented in
> our own way, something was taken from Linux. Finally we did manual
> tests and the
> board worked well.
>
> Testing was done on HiFive SiFive Unmatched board (RISC-V)
>
> Signed-off-by: Viacheslav Mitrofanov <v.v.mitrofanov at yadro.com>
>
> ---
> Changes in v2:
> - Split big patches into smaller
> - If an address in tftpboot is IPv6 than use IPv6 to boot
> - Add tests
>
> Changes in v3:
> - Added functions and structures description in whole patch-series
> - Removed memory allocation in on_ip6addr()
> - Some functions got return code from errno.h
> - Add to string_to_ip6() length parameter to avoid obligatory null
> termination
> - Add a lot of small decorative cnages
>
> Changes in v4:
> - Fixed funcs and structures style description
> - Added omitted tags
>
> Viacheslav Mitrofanov (17):
> net: ipv6: Add IPv6 basic primitives
> net: ipv6: Add IPv6 build options
> net: ipv6: Add callbacks declarations to get access to IPv6
> variables
> net: ipv6: Add Neighbor Discovery Protocol (NDP)
> net: ipv6: Add string_to_ip6 converter
> net: ipv6: Enable IPv6 typeconversion specifier
> net: ipv6: Add ip6addr, gatewayip6, serverip6 variables callbacks
> net: ipv6: Add implementation of main IPv6 functions
> net: ipv6: Incorporate IPv6 support into u-boot net subsystem
> net: tftp: Add IPv6 support for tftpboot
> net: ping6: Add ping6 command
> test: dm: eth: Add string_to_ip6 test
> test: dm: eth: Add csum_ipv6_magic test
> test: dm: eth: Add ip6_addr_in_subnet test
> test: dm: eth: Add ip6_make_snma test
> test: dm: eth: Add ip6_make_lladdr test
> test/py: add a ping6 test
>
> cmd/Kconfig | 7 +
> cmd/net.c | 61 ++++++
> include/env_callback.h | 10 +
> include/env_flags.h | 10 +
> include/ndisc.h | 102 +++++++++
> include/net.h | 4 +-
> include/net6.h | 432 ++++++++++++++++++++++++++++++++++++
> lib/net_utils.c | 109 ++++++++++
> lib/vsprintf.c | 7 +-
> net/Kconfig | 10 +
> net/Makefile | 3 +
> net/ndisc.c | 289 +++++++++++++++++++++++++
> net/net.c | 53 ++++-
> net/net6.c | 445
> ++++++++++++++++++++++++++++++++++++++
> net/ping6.c | 118 ++++++++++
> net/tftp.c | 63 +++++-
> test/dm/eth.c | 146 +++++++++++++
> test/py/tests/test_net.py | 15 ++
> 18 files changed, 1865 insertions(+), 19 deletions(-)
> create mode 100644 include/ndisc.h
> create mode 100644 include/net6.h
> create mode 100644 net/ndisc.c
> create mode 100644 net/net6.c
> create mode 100644 net/ping6.c
>
Many thanks, Simon, for your reviewing!
A really appreciate this!
Thanks, Viacheslav.
More information about the U-Boot
mailing list