[U-Boot] [PATCH] Kirkwood: bugfix: DRAM size initialization

Tanmay Upadhyay tanmay.upadhyay at einfochips.com
Fri Oct 15 13:58:28 CEST 2010


Hi All,

I was a bit hasty in providing the patch. Given patch solves u-boot 
stuff, but Linux kernel still has some trouble. I am providing second 
version of this patch which takes care of start address also. This fixes 
Linux kernel issue.

Please ignore this version.

Sorry,

Tanmay

On 10/14/2010 06:17 PM, Tanmay Upadhyay wrote:
> If start of any DRAM bank is greater than total DDR size, remaining
> DDR bank sizes were left un-initialized in dram_init function. This
> could break other functions who uses array 'gd->bd->bi_dram'.Kirkwood
> network driver is one example.
>
> Signed-off-by: Tanmay Upadhyay<tanmay.upadhyay at einfochips.com>
> ---
>   arch/arm/cpu/arm926ejs/kirkwood/dram.c |    7 +++++++
>   1 files changed, 7 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arm/cpu/arm926ejs/kirkwood/dram.c b/arch/arm/cpu/arm926ejs/kirkwood/dram.c
> index 7439c87..cb396d1 100644
> --- a/arch/arm/cpu/arm926ejs/kirkwood/dram.c
> +++ b/arch/arm/cpu/arm926ejs/kirkwood/dram.c
> @@ -81,6 +81,13 @@ int dram_init(void)
>   		gd->ram_size += gd->bd->bi_dram[i].size;
>
>   	}
> +
> +	for (; i<  CONFIG_NR_DRAM_BANKS; i++) {
> +		/* If above loop terminated prematurely, we need to set
> +		 * remaining bank sizes as 0 */
> +		gd->bd->bi_dram[i].size = 0;
> +	}
> +
>   	return 0;
>   }
>
>    


More information about the U-Boot mailing list