From fca0cecff73db99d99ad094cca7980472b8a11b5 Mon Sep 17 00:00:00 2001
From: Minkyu Kang <mk7.kang@samsung.com>
Date: Wed, 18 Feb 2009 09:05:52 +0900
Subject: [PATCH] bootm: Reduce the unnecessary memmove

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@samsung.com>
---
 common/cmd_bootm.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index 07f6c6bca2..6fdeef49a3 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");
-- 
2.39.5