diff mbox

[U-Boot] MIPS: bootm: Add fixup of '/memory' node.

Message ID 1460984498-26479-1-git-send-email-purna.mandal@microchip.com
State Accepted
Commit fdff5b0598c73767c2cad097c66a82a705463452
Delegated to: Daniel Schwierzeck
Headers show

Commit Message

Purna Chandra Mandal April 18, 2016, 1:01 p.m. UTC
MIPS arch do not update 'reg' property of /memory node.
As a result Linux bootup will not work unless board.dts
file contains right /memory offset-size information or
board implements required memory fixup.
Fixing by renaming (unused) _arch_fixup_memory_node_ to 
_arch_fixup_fdt_ in arch/mips/lib/bootm.c inline with ARM arch.

Signed-off-by: Purna Chandra Mandal <purna.mandal@microchip.com>
Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
---

 arch/mips/lib/bootm.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Comments

Daniel Schwierzeck April 18, 2016, 1:41 p.m. UTC | #1
2016-04-18 15:01 GMT+02:00 Purna Chandra Mandal <purna.mandal@microchip.com>:
> MIPS arch do not update 'reg' property of /memory node.
> As a result Linux bootup will not work unless board.dts
> file contains right /memory offset-size information or
> board implements required memory fixup.
> Fixing by renaming (unused) _arch_fixup_memory_node_ to
> _arch_fixup_fdt_ in arch/mips/lib/bootm.c inline with ARM arch.
>
> Signed-off-by: Purna Chandra Mandal <purna.mandal@microchip.com>
> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
> ---
>
>  arch/mips/lib/bootm.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/arch/mips/lib/bootm.c b/arch/mips/lib/bootm.c
> index eed159c..aa0475a 100644
> --- a/arch/mips/lib/bootm.c
> +++ b/arch/mips/lib/bootm.c
> @@ -9,6 +9,7 @@
>  #include <image.h>
>  #include <fdt_support.h>
>  #include <asm/addrspace.h>
> +#include <asm/io.h>
>
>  DECLARE_GLOBAL_DATA_PTR;
>
> @@ -252,10 +253,10 @@ static int boot_reloc_fdt(bootm_headers_t *images)
>  #endif
>  }
>
> -int arch_fixup_memory_node(void *blob)
> +int arch_fixup_fdt(void *blob)
>  {
>  #if CONFIG_IS_ENABLED(MIPS_BOOT_FDT) && CONFIG_IS_ENABLED(OF_LIBFDT)
> -       u64 mem_start = 0;
> +       u64 mem_start = virt_to_phys((void *)gd->bd->bi_memstart);
>         u64 mem_size = gd->ram_size;
>
>         return fdt_fixup_memory_banks(blob, &mem_start, &mem_size, 1);
> --
> 1.8.3.1
>

thanks for catching. I've missed commit
e29607ed972056723e4bf0ac90767421cf0f0b78 at the time I merged this
patch set.
diff mbox

Patch

diff --git a/arch/mips/lib/bootm.c b/arch/mips/lib/bootm.c
index eed159c..aa0475a 100644
--- a/arch/mips/lib/bootm.c
+++ b/arch/mips/lib/bootm.c
@@ -9,6 +9,7 @@ 
 #include <image.h>
 #include <fdt_support.h>
 #include <asm/addrspace.h>
+#include <asm/io.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -252,10 +253,10 @@  static int boot_reloc_fdt(bootm_headers_t *images)
 #endif
 }
 
-int arch_fixup_memory_node(void *blob)
+int arch_fixup_fdt(void *blob)
 {
 #if CONFIG_IS_ENABLED(MIPS_BOOT_FDT) && CONFIG_IS_ENABLED(OF_LIBFDT)
-	u64 mem_start = 0;
+	u64 mem_start = virt_to_phys((void *)gd->bd->bi_memstart);
 	u64 mem_size = gd->ram_size;
 
 	return fdt_fixup_memory_banks(blob, &mem_start, &mem_size, 1);