From: Tim Harvey Date: Fri, 30 May 2025 15:38:24 +0000 (-0700) Subject: net: lwip: tftp: add support for setting blocksize at runtime X-Git-Tag: v2025.10-rc1~132^2~15 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e4e97f70526dd9f367f54a38f38115726336cd6a;p=thirdparty%2Fu-boot.git net: lwip: tftp: add support for setting blocksize at runtime Add support for setting the blocksize at runtime via the tftpblocksize env variable as such is done with the legacy stack (CONFIG_NET). Signed-off-by: Tim Harvey Reviewed-by: Jerome Forissier --- diff --git a/net/lwip/tftp.c b/net/lwip/tftp.c index 27914522722..94bacf63075 100644 --- a/net/lwip/tftp.c +++ b/net/lwip/tftp.c @@ -157,8 +157,10 @@ static void no_response(void *arg) static int tftp_loop(struct udevice *udev, ulong addr, char *fname, ip_addr_t srvip, uint16_t srvport) { + int blksize = CONFIG_TFTP_BLOCKSIZE; struct netif *netif; struct tftp_ctx ctx; + const char *ep; err_t err; if (!fname || addr == 0) @@ -187,7 +189,10 @@ static int tftp_loop(struct udevice *udev, ulong addr, char *fname, if (!(err == ERR_OK || err == ERR_USE)) log_err("tftp_init_client err: %d\n", err); - tftp_client_set_blksize(CONFIG_TFTP_BLOCKSIZE); + ep = env_get("tftpblocksize"); + if (ep) + blksize = simple_strtol(ep, NULL, 10); + tftp_client_set_blksize(blksize); ctx.start_time = get_timer(0); err = tftp_get(&ctx, &srvip, srvport, fname, TFTP_MODE_OCTET);