[PATCH 2/2] ARM: i.MX: ccxmx51: detect SDRAM size by board id

Jean-Christophe PLAGNIOL-VILLARD plagnioj at jcrosoft.com
Tue May 7 08:39:01 EDT 2013


>  static int ccxmx51_devices_init(void)
>  {
>  	u8 hwid[6];
> @@ -367,6 +380,8 @@ static int ccxmx51_devices_init(void)
>  			break;
>  		}
>  		printf("Module Serial : %c%d\n", manloc, ((hwid[2] & 0x3f) << 24) | (hwid[3] << 16) | (hwid[4] << 8) | hwid[5]);
> +		if ((ccxmx51_id->mem_sz - SZ_128M) > 0)
> +			arm_add_mem_device("ram1", MX51_CSD0_BASE_ADDR + SZ_128M, ccxmx51_id->mem_sz - SZ_128M);
>  	}
>  
>  	imx51_add_uart1();
> diff --git a/arch/arm/boards/ccxmx51/ccxmx51.h b/arch/arm/boards/ccxmx51/ccxmx51.h
> index ef40b7f..3feacac 100644
> --- a/arch/arm/boards/ccxmx51/ccxmx51.h
> +++ b/arch/arm/boards/ccxmx51/ccxmx51.h
> @@ -23,6 +23,7 @@ struct ccxmx51_hwid {
>  
>  struct ccxmx51_ident {
>  	const char	*id_string;
> +	const int	mem_sz;
>  	const char	industrial;
>  	const char	eth0;
>  	const char	eth1;
> diff --git a/arch/arm/boards/ccxmx51/lowlevel.c b/arch/arm/boards/ccxmx51/lowlevel.c
> index 3e6a0ee..9519b77 100644
> --- a/arch/arm/boards/ccxmx51/lowlevel.c
> +++ b/arch/arm/boards/ccxmx51/lowlevel.c
> @@ -1,9 +1,11 @@
>  #include <common.h>
>  #include <mach/esdctl.h>
> +#include <asm/barebox-arm.h>
>  #include <asm/barebox-arm-head.h>
> +#include <mach/imx51-regs.h>
>  
>  void __naked barebox_arm_reset_vector(void)
>  {
>  	arm_cpu_lowlevel_init();
> -	imx51_barebox_entry(0);
> +	barebox_arm_entry(MX51_CSD0_BASE_ADDR, SZ_128M, 0);

can we fix the ddr ctrl here by detecting the hw earlier
>  }
> -- 
> 1.8.2.rc2
> 
> 
> _______________________________________________
> barebox mailing list
> barebox at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox



More information about the barebox mailing list