[U-Boot] [PATCH 2/2] colibri_imx7: prime get_ram_size() using imx_ddr_size()

Stefan Agner stefan.agner at toradex.com
Wed Sep 19 15:48:20 UTC 2018


Hi,

On 9/19/18 4:01 AM, Marcel Ziswiler wrote:
> From: Fabio Estevam <festevam at gmail.com>
> 
> Rather than passing a hardcoded maxsize to the generic get_ram_size()
> function use the i.MX 7 specific imx_ddr_size() function, which extracts
> the memory size at runtime by reading the DDR controller registers.
> 
> This is a purely cosmetic change as the generic get_ram_size() function
> already took care of properly automatically detecting 256MB, 512MB or 1GB
> modules.
> 
> Signed-off-by: Fabio Estevam <festevam at gmail.com>
> Signed-off-by: Marcel Ziswiler <marcel.ziswiler at toradex.com>

Hm, with that we take the MMDC register information as the upper bound, and use regular U-Boot get_ram_size() to determine size by poking memory addresses. Seems sensible.

Acked-by: Stefan Agner <stefan.agner at toradex.com>

Fabio, I guess other boards use SPL to use different MMDC configuration for different memory size? Is there a downside doing this size over-provisioning? 

--
Stefan

> 
> ---
> 
>  board/toradex/colibri_imx7/colibri_imx7.c | 2 +-
>  include/configs/colibri_imx7.h            | 1 -
>  2 files changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/board/toradex/colibri_imx7/colibri_imx7.c b/board/toradex/colibri_imx7/colibri_imx7.c
> index 2b7591eb00..a4c99626b4 100644
> --- a/board/toradex/colibri_imx7/colibri_imx7.c
> +++ b/board/toradex/colibri_imx7/colibri_imx7.c
> @@ -52,7 +52,7 @@ DECLARE_GLOBAL_DATA_PTR;
>  
>  int dram_init(void)
>  {
> -	gd->ram_size = get_ram_size((void *)PHYS_SDRAM, PHYS_SDRAM_SIZE);
> +	gd->ram_size = get_ram_size((void *)PHYS_SDRAM, imx_ddr_size());
>  
>  	return 0;
>  }
> diff --git a/include/configs/colibri_imx7.h b/include/configs/colibri_imx7.h
> index ff6bd678cf..02849ba35f 100644
> --- a/include/configs/colibri_imx7.h
> +++ b/include/configs/colibri_imx7.h
> @@ -14,7 +14,6 @@
>  #include "mx7_common.h"
>  
>  /*#define CONFIG_DBG_MONITOR*/
> -#define PHYS_SDRAM_SIZE			SZ_1G
>  
>  /* Size of malloc() pool */
>  #define CONFIG_SYS_MALLOC_LEN		(32 * SZ_1M)
> 


More information about the U-Boot mailing list