All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATHv11 00/43] net/lwip: add lwip library for the network stack
@ 2023-11-27 12:56 Maxim Uvarov
  2023-11-27 12:56 ` [PATHv11 01/43] submodule: add lwIP as git submodule Maxim Uvarov
                   ` (48 more replies)
  0 siblings, 49 replies; 117+ messages in thread
From: Maxim Uvarov @ 2023-11-27 12:56 UTC (permalink / raw)
  To: u-boot; +Cc: pbrobinson, ilias.apalodimas, trini, goldsimon, Maxim Uvarov

Hello,

Please find updated version of lwip patches. Changes are in the
changelog bellow.

Thank you,
Maxim. 

changelog:
	v11: - v11 is mosly respin of v10 patches with CI error fixes.
                Gitlab CI: 
                https://source.denx.de/u-boot/custodians/u-boot-tpm/-/pipelines/18368
                Azure CI:
                https://dev.azure.com/u-boot/u-boot/_build/results?buildId=7366&view=results
                (Azure CI, which is connected to github. Sometime I can see
                 tftp timeout after some part of download there, but that can not be
                 reproduced locally. While Gitblab CI is stable. Because of num tries in
                 CI I suspect this CI was not always reliable.)
                Azure and Gitlab also have different toolchains and I 
                would say Gitlab generates bigger code then Azure CI.
                
                Also many boards have a binary limit size of 800k (even
                qemu has limits). And increased limits to fit all the code. Specially did it
                patch by board config to show which boards are failing to build. There I have
                a question if we really want to support new functionality for old boards (mips,
                arm32 and etc...). I hope board owners can help me if
                it's valid to increase these limits.

		In this version I used git submodules and friend CI with
		submodules. But I don't mind if you decide to maintain it in a different
		way.


	v10: - fix ping with following tftp command issue with incorrect
		ping timeout clear.
	     - Makefile on make will init submodules and if needed will
	       do git clone.
	     - wget - some minor code style changes.
	v9: - added first patch describing git submodule for lwip. So
	      the build procedure is:
		git submodule init
		git submodule update
		make
	    - reworked a little bit dhcp cmd state polling
	    - fixed review comments for v8
	v8: - comments for previous review
	    - removed lwip timeout callback pointer
	    - made lwip timeouts works, that also allowed to remove
	      static vars.
	    - setenv for filesize tftp and wget has to be in hex.
	    - Makefile changes always compile it tftp,dns,wget,ping due
	      to it can be used not only by CONFIG_CMD_.
	    - Kconfig changes - simplify lwIP settings and support only
	      one configuration.
	    - tested with mini debian.iso load over http or tftp, mount
	      and boot it (qemu, arm64).
	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).
	v5: - fixed Iliases comments and split big patch on the small
		ones.
	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 (43):
  submodule: add lwIP as git submodule
  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
  test_efi_loader.py: use $filesize var
  test_net: print out net list
  net: sandbox: fix NULL pointer derefences
  net/smc911x: fix return from smc911x_send
  sandbox: eth-raw-os: successful return code is 0
  driver/net/rtl8139: remove debug print
  mach-socfpga: do not overlap defines with lwip
  bcm_ns3: fix overlap define with lwip
  rcar3_salvator-x_defconfig: increase binary size limit
  lwip: omap3: rename mem_init
  configs/turris_omnia_defconfig set limit to 0xf6000
  configs/tbs2910_defconfig inc limit
  configs/socfpga_secu1_defconfig: enable LTO
  configs/turris_omnia_defconfig: enable LTO
  configs/am335x_boneblack_vboot_defconfig: enable LTO and increase SPL
    size
  configs/sheevaplug_defconfig: enable LTO and inc size
  configs/lschlv2_defconfig: enable LTO and inc size
  configs/lsxhl_defconfig: LTO + size
  configs/am335x_evm_defconfig: inc SPL size
  configs/bk4r1_defconfig: inc size
  configs/linkit-smart-7688_defconfig: increse size
  configs/gardena-smart-gateway-mt7688_defconfig: increase size
  configs/rcar3_ulcb_defconfig: increase size
  configs/qemu-x86_64_defconfig: increase ROM size
  Makefile: add dtbs to clean
  .azure-pipelines: init submodules
  mach-mtmips: inc SPL size limit
  configs/linkit-smart-7688_defconfig: increase board limit
  .gitlab-ci.yml: change ownership of the git files

 .azure-pipelines.yml                          |  10 +-
 .gitlab-ci.yml                                |  15 +-
 .gitmodules                                   |   4 +
 Makefile                                      |  12 +-
 arch/arm/include/asm/arch-omap3/mem.h         |   2 +-
 arch/arm/mach-omap2/omap3/board.c             |   2 +-
 arch/arm/mach-omap2/omap3/emif4.c             |   4 +-
 arch/arm/mach-omap2/omap3/sdrc.c              |   6 +-
 .../mach-socfpga/include/mach/handoff_soc64.h |   6 -
 arch/arm/mach-socfpga/wrap_handoff_soc64.c    |   9 +
 arch/mips/mach-mtmips/Kconfig                 |   2 +-
 arch/sandbox/cpu/eth-raw-os.c                 |   2 +-
 boot/bootmeth_efi.c                           |  18 +-
 boot/bootmeth_pxe.c                           |  21 +-
 cmd/Makefile                                  |   1 +
 cmd/net-lwip.c                                | 307 ++++++++++++++++
 cmd/net.c                                     |  86 +----
 cmd/pxe.c                                     |  19 +-
 configs/am335x_boneblack_vboot_defconfig      |   3 +
 configs/am335x_evm_defconfig                  |   1 +
 configs/bk4r1_defconfig                       |   2 +-
 .../gardena-smart-gateway-mt7688_defconfig    |   2 +-
 configs/linkit-smart-7688_defconfig           |   2 +-
 configs/lschlv2_defconfig                     |   3 +-
 configs/lsxhl_defconfig                       |   3 +-
 configs/qemu-x86_64_defconfig                 |   5 +-
 configs/rcar3_salvator-x_defconfig            |   3 +-
 configs/rcar3_ulcb_defconfig                  |   1 +
 configs/sheevaplug_defconfig                  |   3 +-
 configs/socfpga_secu1_defconfig               |   1 +
 configs/tbs2910_defconfig                     |   2 +-
 configs/turris_omnia_defconfig                |   3 +-
 doc/develop/index.rst                         |   1 +
 doc/develop/net_lwip.rst                      |  75 ++++
 drivers/net/rtl8139.c                         |   1 -
 drivers/net/sandbox.c                         |   5 +
 drivers/net/smc911x.c                         |   2 +-
 include/configs/bcm_ns3.h                     |   6 +-
 include/net.h                                 | 197 +----------
 include/net/arp.h                             |   9 +
 include/net/eth.h                             | 194 +++++++++++
 include/net/lwip.h                            |  73 ++++
 include/net/ulwip.h                           |  67 ++++
 lib/Kconfig                                   |   2 +-
 net/Kconfig                                   |   3 +
 net/Makefile                                  |   1 +
 net/eth-uclass.c                              |  37 +-
 net/lwip/.gitignore                           |   8 +
 net/lwip/Kconfig                              |  34 ++
 net/lwip/Makefile                             |  70 ++++
 net/lwip/apps/dhcp/lwip-dhcp.c                |  86 +++++
 net/lwip/apps/dns/lwip-dns.c                  |  63 ++++
 net/lwip/apps/http/Makefile                   |   6 +
 net/lwip/apps/http/lwip-wget.c                | 105 ++++++
 net/lwip/apps/ping/Makefile                   |  12 +
 net/lwip/apps/ping/lwip_ping.c                |  39 +++
 net/lwip/apps/ping/lwip_ping.h                |  15 +
 net/lwip/apps/ping/ping.h                     |  28 ++
 net/lwip/apps/tftp/Makefile                   |   7 +
 net/lwip/apps/tftp/lwip-tftp.c                | 132 +++++++
 net/lwip/lwip-external                        |   1 +
 net/lwip/lwipopts.h                           | 178 ++++++++++
 net/lwip/port/if.c                            | 327 ++++++++++++++++++
 net/lwip/port/include/arch/cc.h               |  44 +++
 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                                     |  44 ++-
 test/py/tests/test_efi_loader.py              |   4 +-
 test/py/tests/test_net.py                     |   2 +
 70 files changed, 2113 insertions(+), 348 deletions(-)
 create mode 100644 .gitmodules
 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
 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 160000 net/lwip/lwip-external
 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

-- 
2.30.2


^ permalink raw reply	[flat|nested] 117+ messages in thread

end of thread, other threads:[~2024-01-08 11:39 UTC | newest]

Thread overview: 117+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-27 12:56 [PATHv11 00/43] net/lwip: add lwip library for the network stack Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 01/43] submodule: add lwIP as git submodule Maxim Uvarov
2023-11-27 18:16   ` Tom Rini
2023-11-30  2:45     ` Simon Glass
2023-11-30 11:43       ` Michal Suchánek
2023-11-27 12:56 ` [PATHv11 02/43] net/lwip: add doc/develop/net_lwip.rst Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 03/43] net/lwip: integrate lwIP library Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 04/43] net/lwip: implement dns cmd Maxim Uvarov
2023-11-27 18:27   ` Tom Rini
2023-11-27 12:56 ` [PATHv11 05/43] net/lwip: implement dhcp cmd Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 06/43] net/lwip: implement tftp cmd Maxim Uvarov
2023-11-28 16:34   ` neil.armstrong
2023-11-28 19:09     ` Maxim Uvarov
2023-11-29  9:24   ` neil.armstrong
2023-11-27 12:56 ` [PATHv11 07/43] net/lwip: implement wget cmd Maxim Uvarov
2023-11-28 11:32   ` Fabio Estevam
2023-11-28 19:07     ` Maxim Uvarov
2023-11-28 19:12       ` Fabio Estevam
2023-11-28 20:41         ` Tim Harvey
2023-11-28 20:43           ` Tom Rini
2023-11-29  7:18             ` Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 08/43] net/lwip: implement ping cmd Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 09/43] net/lwip: add lwIP configuration Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 10/43] net/lwip: implement lwIP port to U-Boot Maxim Uvarov
2023-11-27 18:31   ` Tom Rini
2023-11-27 12:56 ` [PATHv11 11/43] net/lwip: update .gitignore with lwIP Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 12/43] net/lwip: connection between cmd and lwip apps Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 13/43] net/lwip: replace original net commands with lwip Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 14/43] net/lwip: split net.h to net.h, arp.h and eth.h Maxim Uvarov
2023-11-27 12:56 ` [PATHv11 15/43] test_efi_loader.py: use $filesize var Maxim Uvarov
2023-11-27 18:18   ` Tom Rini
2023-11-28 11:05     ` neil.armstrong
2023-11-27 12:56 ` [PATHv11 16/43] test_net: print out net list Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 17/43] net: sandbox: fix NULL pointer derefences Maxim Uvarov
2023-11-27 18:19   ` Tom Rini
2023-12-02 18:33     ` Simon Glass
2023-12-02 19:04       ` Tom Rini
2023-11-27 12:57 ` [PATHv11 18/43] net/smc911x: fix return from smc911x_send Maxim Uvarov
2023-11-27 18:20   ` Tom Rini
2023-11-27 12:57 ` [PATHv11 19/43] sandbox: eth-raw-os: successful return code is 0 Maxim Uvarov
2023-11-30  2:45   ` Simon Glass
2023-11-27 12:57 ` [PATHv11 20/43] driver/net/rtl8139: remove debug print Maxim Uvarov
2023-11-27 18:33   ` Tom Rini
2023-11-27 12:57 ` [PATHv11 21/43] mach-socfpga: do not overlap defines with lwip Maxim Uvarov
2023-11-27 18:35   ` Tom Rini
2023-11-27 12:57 ` [PATHv11 22/43] bcm_ns3: fix overlap define " Maxim Uvarov
2023-11-27 18:36   ` Tom Rini
2023-11-27 12:57 ` [PATHv11 23/43] rcar3_salvator-x_defconfig: increase binary size limit Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 24/43] lwip: omap3: rename mem_init Maxim Uvarov
2023-11-27 13:12   ` Tom Rini
2023-11-27 12:57 ` [PATHv11 25/43] configs/turris_omnia_defconfig set limit to 0xf6000 Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 26/43] configs/tbs2910_defconfig inc limit Maxim Uvarov
2023-11-27 13:11   ` Tom Rini
2023-11-27 21:20     ` Soeren Moch
2023-11-28  7:09       ` Maxim Uvarov
2023-12-05 13:15         ` Maxim Uvarov
2023-12-05 15:49           ` Soeren Moch
2023-12-05 16:25             ` Maxim Uvarov
2023-12-05 18:25               ` Soeren Moch
2023-12-05 20:00                 ` Maxim Uvarov
2023-12-06  7:06                   ` Soeren Moch
2023-12-06 10:40                     ` Maxim Uvarov
2023-12-07 11:10                       ` Sören Moch
2023-12-09 20:32                 ` Tom Rini
2023-12-09 20:21             ` Tom Rini
2023-11-27 12:57 ` [PATHv11 27/43] configs/socfpga_secu1_defconfig: enable LTO Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 28/43] configs/turris_omnia_defconfig: " Maxim Uvarov
2023-11-27 15:59   ` marek.behun
2023-12-19  9:38   ` Marek Behún
2023-12-19 14:37     ` Marek Behún
2023-11-27 12:57 ` [PATHv11 29/43] configs/am335x_boneblack_vboot_defconfig: enable LTO and increase SPL size Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 30/43] configs/sheevaplug_defconfig: enable LTO and inc size Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 31/43] configs/lschlv2_defconfig: " Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 32/43] configs/lsxhl_defconfig: LTO + size Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 33/43] configs/am335x_evm_defconfig: inc SPL size Maxim Uvarov
2023-11-27 13:08   ` Tom Rini
2023-11-27 14:06     ` Maxim Uvarov
2023-11-27 14:08       ` Tom Rini
2023-11-27 15:31         ` Maxim Uvarov
2023-11-27 15:33           ` Tom Rini
2023-11-27 15:52           ` Peter Robinson
2023-11-27 16:31             ` Tom Rini
2023-11-28  9:35               ` Maxim Uvarov
2023-11-28 15:07                 ` Tom Rini
2023-11-27 14:06     ` Peter Robinson
2023-11-27 12:57 ` [PATHv11 34/43] configs/bk4r1_defconfig: inc size Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 35/43] configs/linkit-smart-7688_defconfig: increse size Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 36/43] configs/gardena-smart-gateway-mt7688_defconfig: increase size Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 37/43] configs/rcar3_ulcb_defconfig: " Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 38/43] configs/qemu-x86_64_defconfig: increase ROM size Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 39/43] Makefile: add dtbs to clean Maxim Uvarov
2023-11-27 18:17   ` Tom Rini
2023-11-27 12:57 ` [PATHv11 40/43] .azure-pipelines: init submodules Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 41/43] mach-mtmips: inc SPL size limit Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 42/43] configs/linkit-smart-7688_defconfig: increase board limit Maxim Uvarov
2023-11-27 12:57 ` [PATHv11 43/43] .gitlab-ci.yml: change ownership of the git files Maxim Uvarov
2023-11-27 18:37 ` [PATHv11 00/43] net/lwip: add lwip library for the network stack Tom Rini
2023-11-27 18:59 ` Tom Rini
2023-11-28 10:37 ` neil.armstrong
2023-11-28 19:13   ` Maxim Uvarov
2023-11-28 23:05 ` Tim Harvey
2023-11-28 23:21   ` Fabio Estevam
2023-11-29  0:10     ` Tim Harvey
2023-11-29  0:16       ` Fabio Estevam
2023-11-30  8:39         ` Maxim Uvarov
2023-11-30 13:00           ` Fabio Estevam
2023-11-30 13:14             ` Maxim Uvarov
2023-11-30 13:18               ` Fabio Estevam
2023-11-30 11:09 ` Peter Robinson
2023-11-30 13:05   ` Maxim Uvarov
2023-12-19 10:12 ` Alexander Dahl
2024-01-02 17:30   ` Maxim Uvarov
2024-01-03 14:30     ` Fabio Estevam
2024-01-04 15:02       ` Maxim Uvarov
2024-01-04 20:45         ` Fabio Estevam
2024-01-08  8:41           ` Maxim Uvarov
2024-01-08 11:39             ` Fabio Estevam

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.