From mboxrd@z Thu Jan 1 00:00:00 1970 From: Larry Johnson Date: Sun, 22 Feb 2009 11:05:45 -0500 Subject: [U-Boot] [PATCH] bootm: Reduce the unnecessary memmove In-Reply-To: <499B50E0.8040501@samsung.com> References: <499B50E0.8040501@samsung.com> Message-ID: <49A177D8.1050702@acm.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 > --- > 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