From 9af131e3550bdc18b823c093b6a32346a7909569 Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Thu, 9 Mar 2017 17:17:51 -0800 Subject: [PATCH] colibri_imx7/colibri_imx6/apalis_imx6: limit bootm memory Limit memory used for relocation of FDT or initrd. This is required to make sure that relocated artifacts are within lowmem. If fdt_high or initrd_high are not set, U-Boot automatically relocates artifacts to the end of memory. But this area won't be part of lowmem and hence will not be accessible by the kernel during early boot. With VM split set to 2G/2G (i.MX default), only the 2GB Apalis iMX6 is affected by that issue. With VM split set to 3G/1G (ARM default) also modules with 1GB of memory are affected. With the latter the amount of lowmem will be 760MiB. The value must also not exceed available memory! Use a safe value of 512MiB for Apalis and 256MiB for Colibri. Signed-off-by: Stefan Agner Acked-by: Marcel Ziswiler --- include/configs/apalis_imx6.h | 1 + include/configs/colibri_imx6.h | 1 + include/configs/colibri_imx7.h | 1 + 3 files changed, 3 insertions(+) diff --git a/include/configs/apalis_imx6.h b/include/configs/apalis_imx6.h index 9c899e40b0..c5db7f2b6b 100644 --- a/include/configs/apalis_imx6.h +++ b/include/configs/apalis_imx6.h @@ -197,6 +197,7 @@ "${fdt_file} && setenv dtbparam \" - ${fdt_addr_r}\" && true\0" #define MEM_LAYOUT_ENV_SETTINGS \ + "bootm_size=0x20000000\0" \ "fdt_addr_r=0x12000000\0" \ "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ diff --git a/include/configs/colibri_imx6.h b/include/configs/colibri_imx6.h index 2fbadf2522..924b40fea5 100644 --- a/include/configs/colibri_imx6.h +++ b/include/configs/colibri_imx6.h @@ -172,6 +172,7 @@ "${fdt_file} && setenv dtbparam \" - ${fdt_addr_r}\" && true\0" #define MEM_LAYOUT_ENV_SETTINGS \ + "bootm_size=0x10000000\0" \ "fdt_addr_r=0x12000000\0" \ "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ diff --git a/include/configs/colibri_imx7.h b/include/configs/colibri_imx7.h index 3da4211e9b..80eeae46c2 100644 --- a/include/configs/colibri_imx7.h +++ b/include/configs/colibri_imx7.h @@ -61,6 +61,7 @@ #define CONFIG_SERVERIP 192.168.10.1 #define MEM_LAYOUT_ENV_SETTINGS \ + "bootm_size=0x10000000\0" \ "fdt_addr_r=0x82000000\0" \ "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \