[PATCH 3/6] net: lwip: tftp: add support for setting blocksize at runtime

Jerome Forissier jerome.forissier at linaro.org
Fri May 30 09:48:36 CEST 2025


On 5/29/25 23:49, Tim Harvey wrote:
> 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 <tharvey at gateworks.com>
> ---
>  net/lwip/tftp.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/net/lwip/tftp.c b/net/lwip/tftp.c
> index fae701bad2eb..6cdb0642536c 100644
> --- a/net/lwip/tftp.c
> +++ b/net/lwip/tftp.c
> @@ -156,8 +156,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)
> @@ -186,7 +188,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);

Reviewed-by: Jerome Forissier <jerome.forissier at linaro.org>

Thanks,
-- 
Jerome


More information about the U-Boot mailing list