public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Igor Grinberg <grinberg@compulab.co.il>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] net: Add tftp speed indication
Date: Thu, 11 Oct 2012 13:00:49 +0200	[thread overview]
Message-ID: <5076A6E1.4040104@compulab.co.il> (raw)
In-Reply-To: <1349913791-10564-1-git-send-email-sjg@chromium.org>

On 10/11/12 02:03, Simon Glass wrote:
> This prints a tftp speed indication after the download completes. This
> is the 3.6 MiB/s indicator below.
> 
> To enable this, define CONFIG_TFTP_SPEED in your board config.

This is relatively small (and nice) addition to the tftpboot command.
Do we really need to introduce yet another config option for this?
Can this be just added with no need to specify the config option?

> 
> Tegra2 (SeaBoard) # tftp ...
> Using asx0 device
> TFTP from server 172.22.72.144; our IP address is 172.22.73.81
> Filename '/tftpboot/uImage-user-seaboard-1'.
> Load address: 0x408000
> Loading: #################################################  3.6 MiB/s
> done
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>  README     |    9 +++++++++
>  net/tftp.c |   15 +++++++++++++++
>  2 files changed, 24 insertions(+), 0 deletions(-)
> 
> diff --git a/README b/README
> index 0d17e7d..f754bd5 100644
> --- a/README
> +++ b/README
> @@ -2349,6 +2349,15 @@ The following options need to be configured:
>  		A better solution is to properly configure the firewall,
>  		but sometimes that is not allowed.
>  
> +- TFTP Speed:
> +		CONFIG_TFTP_SPEED
> +
> +		If this is defined, the approximate download speed of the
> +		tftp operation will be displayed after the # progress
> +		markers, like this:
> +
> +		Loading: ########### (more #) ############  3.6 MiB/s
> +
>  - Show boot progress:
>  		CONFIG_SHOW_BOOT_PROGRESS
>  
> diff --git a/net/tftp.c b/net/tftp.c
> index 59a8ebb..59161db 100644
> --- a/net/tftp.c
> +++ b/net/tftp.c
> @@ -41,6 +41,10 @@
>  static ulong TftpTimeoutMSecs = TIMEOUT;
>  static int TftpTimeoutCountMax = TIMEOUT_COUNT;
>  
> +#ifdef CONFIG_TFTP_SPEED
> +static ulong time_start;   /* Record time we started tftp */
> +#endif
> +
>  /*
>   * These globals govern the timeout behavior when attempting a connection to a
>   * TFTP server. TftpRRQTimeoutMSecs specifies the number of milliseconds to
> @@ -299,6 +303,14 @@ static void tftp_complete(void)
>  		TftpNumchars++;
>  	}
>  #endif
> +#ifdef CONFIG_TFTP_SPEED
> +	time_start = get_timer(time_start);
> +	if (time_start > 0) {
> +		puts("  ");
> +		print_size(NetBootFileXferSize /
> +			time_start * 1000, "/s");
> +	}
> +#endif
>  	puts("\ndone\n");
>  	net_set_state(NETLOOP_SUCCESS);
>  }
> @@ -775,6 +787,9 @@ void TftpStart(enum proto_t protocol)
>  		TftpState = STATE_SEND_RRQ;
>  	}
>  
> +#ifdef CONFIG_TFTP_SPEED
> +	time_start = get_timer(0);
> +#endif
>  	TftpTimeoutCountMax = TftpRRQTimeoutCountMax;
>  
>  	NetSetTimeout(TftpTimeoutMSecs, TftpTimeout);

-- 
Regards,
Igor.

  parent reply	other threads:[~2012-10-11 11:00 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-11  0:03 [U-Boot] [PATCH] net: Add tftp speed indication Simon Glass
2012-10-11  7:29 ` Wolfgang Denk
2012-10-11 11:00 ` Igor Grinberg [this message]
2012-10-11 23:57 ` [U-Boot] [PATCH v2] " Simon Glass
2012-10-16 11:22   ` Igor Grinberg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5076A6E1.4040104@compulab.co.il \
    --to=grinberg@compulab.co.il \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox