[PATHv11 06/43] net/lwip: implement tftp cmd
Maxim Uvarov
maxim.uvarov at linaro.org
Tue Nov 28 20:09:49 CET 2023
On Tue, 28 Nov 2023 at 22:34, <neil.armstrong at linaro.org> wrote:
> Hi Maxim,
>
> On 27/11/2023 13:56, Maxim Uvarov wrote:
> > U-Boot recently got support for an alternative network stack using LWIP.
> > Replace tftp command with the LWIP variant while keeping the output and
> > error messages identical.
> >
> > Signed-off-by: Maxim Uvarov <maxim.uvarov at linaro.org>
> > ---
> > include/net/lwip.h | 13 ++++
> > net/lwip/Makefile | 1 +
> > net/lwip/apps/tftp/Makefile | 7 ++
> > net/lwip/apps/tftp/lwip-tftp.c | 132 +++++++++++++++++++++++++++++++++
> > 4 files changed, 153 insertions(+)
> > create mode 100644 net/lwip/apps/tftp/Makefile
> > create mode 100644 net/lwip/apps/tftp/lwip-tftp.c
> >
>
> <snip>
>
>
> With:
> =======><==============================================
> diff --git a/net/lwip/apps/tftp/lwip-tftp.c
> b/net/lwip/apps/tftp/lwip-tftp.c
> index 7b384cecf8..1d1b7e8fa5 100644
> --- a/net/lwip/apps/tftp/lwip-tftp.c
> +++ b/net/lwip/apps/tftp/lwip-tftp.c
> @@ -8,6 +8,8 @@
> #include <command.h>
> #include <console.h>
> #include <bootstage.h>
> +#include <efi_loader.h>
> +#include <mapmem.h>
>
> #include "tftp_client.h"
> #include "tftp_server.h"
> @@ -17,6 +19,7 @@
>
> #include <net/ulwip.h>
>
> +static char *filename;
> static ulong daddr;
> static ulong size;
> static unsigned int progress_print;
> @@ -38,6 +41,12 @@ static void tftp_close(void *handle)
> ulwip_exit(-1);
> return;
> }
> +
> + if (IS_ENABLED(CONFIG_CMD_BOOTEFI))
> + efi_set_bootdev("Net", "", filename,
> + map_sysmem(daddr - size, 1),
> + size);
> +
> ulwip_exit(0);
> }
>
> @@ -92,6 +101,7 @@ int ulwip_tftp(ulong addr, char *fname)
>
> size = 0;
> daddr = addr;
> + filename = fname;
> server_ip = env_get("serverip");
> if (!server_ip) {
> log_err("error: serverip variable has to be set\n");
> =================><======================================
>
> Loading EFI works again, and you can drop patch 15.
>
> Neil
>
Thanks.
More information about the U-Boot
mailing list