Commit dab4d798 authored by Scott Wood's avatar Scott Wood Committed by Paul Mackerras

[POWERPC] U-boot passes the initrd as start/end, not start/size.

The boot wrapper platform init code on 83xx and 85xx using the cuboot
platform type was incorrectly assuming that u-boot supplied the size
of the initrd, whereas it actually supplies the end address.  This
fixes it.
Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 36bd2836
...@@ -57,7 +57,7 @@ void platform_init(unsigned long r3, unsigned long r4, unsigned long r5, ...@@ -57,7 +57,7 @@ void platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
memcpy(&bd, (bd_t *)r3, sizeof(bd)); memcpy(&bd, (bd_t *)r3, sizeof(bd));
loader_info.initrd_addr = r4; loader_info.initrd_addr = r4;
loader_info.initrd_size = r4 ? r5 : 0; loader_info.initrd_size = r4 ? r5 - r4 : 0;
loader_info.cmdline = (char *)r6; loader_info.cmdline = (char *)r6;
loader_info.cmdline_len = r7 - r6; loader_info.cmdline_len = r7 - r6;
......
...@@ -58,7 +58,7 @@ void platform_init(unsigned long r3, unsigned long r4, unsigned long r5, ...@@ -58,7 +58,7 @@ void platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
memcpy(&bd, (bd_t *)r3, sizeof(bd)); memcpy(&bd, (bd_t *)r3, sizeof(bd));
loader_info.initrd_addr = r4; loader_info.initrd_addr = r4;
loader_info.initrd_size = r4 ? r5 : 0; loader_info.initrd_size = r4 ? r5 - r4 : 0;
loader_info.cmdline = (char *)r6; loader_info.cmdline = (char *)r6;
loader_info.cmdline_len = r7 - r6; loader_info.cmdline_len = r7 - r6;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment