[PATCHv7 00/15] net/lwip: add lwip library for the network stack
Maxim Uvarov
maxim.uvarov at linaro.org
Tue Aug 22 11:35:59 CEST 2023
Hello,
I'm sending v7, with all v6 comments getting fixed. The only thing left is a pointer
to timeout callback which 2 applications use. I will rework this timeout
in next v8. I started take a look at it, and want to fix this together
with background applications support in v8.
changelog:
v7: - more review fixes.
- support of multiply eth devices, were "ethact" selects the
active device.
v6: - fixed review comments for v5 (thanks Ilias and Simon).
- lwip is not under /net, so prior applying patch following
commit is needed to create lwIP merge into U-Boot:
git subtree add --prefix net/lwip/lwip-external https://git.savannah.nongnu.org/git/lwip.git master --squash
v5: - fixed Iliases comments and split big patch on the small
ones.
You also need to issue command:
git subtree add --prefix lib/lwip/lwip-external https://git.savannah.nongnu.org/git/lwip.git master --squash
Which will create merge commit of lwip library placing sources
into lib/lwip/lwip-external directory. I do not send it a patch
due to 1. merges are not friendly with git format-patch and 2.
the source code of lwip is 78kb.
v4: - tested with tests/py/ did some minor fixes (out of tree
build, variables set after downloads).
- accounted review comments for documentation.
- implemented dns command
- corrected wget command to not use serverip variable and use just
url string.
v3: - use lwip commands for ping,tftp,wget,dhcp if this patch
applied. Drop CONFIG_LIB_LWIP_REPLACE_<COMMAND> option.
- docs: use rst variant and drop references to RFC.
Maxim Uvarov (15):
net/lwip: add doc/develop/net_lwip.rst
net/lwip: integrate lwIP library
net/lwip: implement dns cmd
net/lwip: implement dhcp cmd
net/lwip: implement tftp cmd
net/lwip: implement wget cmd
net/lwip: implement ping cmd
net/lwip: add lwIP configuration
net/lwip: implement lwIP port to U-Boot
net/lwip: update .gitignore with lwIP
net/lwip: connection between cmd and lwip apps
net/lwip: replace original net commands with lwip
net/lwip: split net.h to net.h, arp.h and eth.h
net/lwip: drop old net/wget
net/lwip/wget add port selection
boot/bootmeth_efi.c | 18 +-
boot/bootmeth_pxe.c | 21 +-
cmd/Makefile | 1 +
cmd/net-lwip.c | 306 ++++++++++++++++++
cmd/net.c | 86 +----
cmd/pxe.c | 19 +-
doc/develop/index.rst | 1 +
doc/develop/net_lwip.rst | 76 +++++
include/net.h | 197 +-----------
include/net/arp.h | 7 +
include/net/eth.h | 190 +++++++++++
include/net/lwip.h | 73 +++++
include/net/ulwip.h | 76 +++++
include/net/wget.h | 22 --
net/Kconfig | 3 +
net/Makefile | 2 +-
net/eth-uclass.c | 8 +
net/lwip/.gitignore | 8 +
net/lwip/Kconfig | 55 ++++
net/lwip/Makefile | 72 +++++
net/lwip/apps/dhcp/lwip-dhcp.c | 62 ++++
net/lwip/apps/dns/lwip-dns.c | 46 +++
net/lwip/apps/http/Makefile | 13 +
net/lwip/apps/http/lwip-wget.c | 134 ++++++++
net/lwip/apps/ping/Makefile | 11 +
net/lwip/apps/ping/lwip_ping.c | 37 +++
net/lwip/apps/ping/lwip_ping.h | 15 +
net/lwip/apps/ping/ping.h | 19 ++
net/lwip/apps/tftp/Makefile | 16 +
net/lwip/apps/tftp/lwip-tftp.c | 124 ++++++++
net/lwip/lwipopts.h | 197 ++++++++++++
net/lwip/port/if.c | 343 ++++++++++++++++++++
net/lwip/port/include/arch/cc.h | 38 +++
net/lwip/port/include/arch/sys_arch.h | 10 +
net/lwip/port/include/limits.h | 0
net/lwip/port/sys-arch.c | 13 +
net/net.c | 26 +-
net/wget.c | 440 --------------------------
38 files changed, 2028 insertions(+), 757 deletions(-)
create mode 100644 cmd/net-lwip.c
create mode 100644 doc/develop/net_lwip.rst
create mode 100644 include/net/arp.h
create mode 100644 include/net/eth.h
create mode 100644 include/net/lwip.h
create mode 100644 include/net/ulwip.h
delete mode 100644 include/net/wget.h
create mode 100644 net/lwip/.gitignore
create mode 100644 net/lwip/Kconfig
create mode 100644 net/lwip/Makefile
create mode 100644 net/lwip/apps/dhcp/lwip-dhcp.c
create mode 100644 net/lwip/apps/dns/lwip-dns.c
create mode 100644 net/lwip/apps/http/Makefile
create mode 100644 net/lwip/apps/http/lwip-wget.c
create mode 100644 net/lwip/apps/ping/Makefile
create mode 100644 net/lwip/apps/ping/lwip_ping.c
create mode 100644 net/lwip/apps/ping/lwip_ping.h
create mode 100644 net/lwip/apps/ping/ping.h
create mode 100644 net/lwip/apps/tftp/Makefile
create mode 100644 net/lwip/apps/tftp/lwip-tftp.c
create mode 100644 net/lwip/lwipopts.h
create mode 100644 net/lwip/port/if.c
create mode 100644 net/lwip/port/include/arch/cc.h
create mode 100644 net/lwip/port/include/arch/sys_arch.h
create mode 100644 net/lwip/port/include/limits.h
create mode 100644 net/lwip/port/sys-arch.c
delete mode 100644 net/wget.c
--
2.30.2
More information about the U-Boot
mailing list