diff mbox

[U-Boot,U-BOOT] bootm: replace blob_start with image_start

Message ID 1294651864-6047-1-git-send-email-leiwen@marvell.com
State Changes Requested
Headers show

Commit Message

Lei Wen Jan. 10, 2011, 9:31 a.m. UTC
For uImage always has a 64 bytes header, we couldn't expect to do
the xip from the header but should xip from the image start.

The latter logic in that section is also move the image from image_start
to the load address, so sync this logic to the xip operation.

Signed-off-by: Lei Wen <leiwen@marvell.com>
---
 common/cmd_bootm.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Comments

Mike Frysinger Jan. 10, 2011, 9:45 a.m. UTC | #1
On Mon, Jan 10, 2011 at 4:31 AM, Lei Wen wrote:
>        case IH_COMP_NONE:
> -               if (load == blob_start) {
> +               if (load == image_start) {
>                        printf ("   XIP %s ... ", type_name);

this breaks XIP uImages that are created to work with existing
u-boots.  it'd be annoying to no longer be able to boot uImages that
were working, and update kernel build systems that output those uImage
formats.

so could you add your check as an additional one ?
if (load == blob_start || load == image_start) {
    ...
-mike
Lei Wen Jan. 10, 2011, 10:02 a.m. UTC | #2
On Mon, Jan 10, 2011 at 5:45 PM, Mike Frysinger <vapier@gentoo.org> wrote:
> On Mon, Jan 10, 2011 at 4:31 AM, Lei Wen wrote:
>>        case IH_COMP_NONE:
>> -               if (load == blob_start) {
>> +               if (load == image_start) {
>>                        printf ("   XIP %s ... ", type_name);
>
> this breaks XIP uImages that are created to work with existing
> u-boots.  it'd be annoying to no longer be able to boot uImages that
> were working, and update kernel build systems that output those uImage
> formats.
>
> so could you add your check as an additional one ?
> if (load == blob_start || load == image_start) {
>    ...
> -mike

Understand...
I would submit a updated patch adopt it.

Best regards,
Lei
diff mbox

Patch

diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index 18019d6..81fc4be 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -344,7 +344,7 @@  static int bootm_load_os(image_info_t os, ulong *load_end, int boot_progress)
 
 	switch (comp) {
 	case IH_COMP_NONE:
-		if (load == blob_start) {
+		if (load == image_start) {
 			printf ("   XIP %s ... ", type_name);
 		} else {
 			printf ("   Loading %s ... ", type_name);