[U-Boot] [PATCH] bootm: Reduce the unnecessary memmove
Larry Johnson
lrj at acm.org
Sun Feb 22 17:05:45 CET 2009
Minkyu Kang wrote:
> Although load address and image start address are same address,
> bootm command always does memmove.
> That is unnecessary memmove and can be taken few milliseconds
> (about 500 msec to 1000 msec).
> If skip this memmove, we can reduce the boot time.
>
> Signed-off-by: Minkyu Kang <mk7.kang at samsung.com>
> ---
> common/cmd_bootm.c | 6 ++++--
> 1 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
> index 07f6c6b..6fdeef4 100644
> --- a/common/cmd_bootm.c
> +++ b/common/cmd_bootm.c
> @@ -340,8 +340,10 @@ static int bootm_load_os(image_info_t os, ulong *load_end, int boot_progress)
> } else {
> printf (" Loading %s ... ", type_name);
>
> - memmove_wd ((void *)load,
> - (void *)image_start, image_len, CHUNKSZ);
> + if (load != image_start) {
> + memmove_wd ((void *)load,
> + (void *)image_start, image_len, CHUNKSZ);
> + }
> }
> *load_end = load + image_len;
> puts("OK\n");
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>
Sorry for the late reply, but would it be better to put the test of
source == destination into the memmove_wd() function?
Best regards,
Larry
More information about the U-Boot
mailing list