[PATCH] rockchip: sdram: fix dram_init_banksize

Kever Yang kever.yang at rock-chips.com
Sat Jul 18 05:13:40 CEST 2020


Hi Alex,

Tanks for your fix.

On 2020/7/15 上午7:03, Alex Bee wrote:
> Currently 2.5 GB is calculated as DRAM size for a 1 GB RK322x board
> if CONFIG_SPL_OPTEE is set. This is troublesome when booting a
> linux kernel since this size will be injected in FDT of the kernel.
>
> gd->bd->bi_dram[0].start (which is basically CONFIG_SYS_SDRAM_BASE)
> must not be taken into consideration for calculation of second bank
> size, since this offset is already included in calculation of "top".
>
> After applying this patch 992 MB (1024 MB - 32 MB reserved for
> optee-os) is correctly calculated and has also been verified on
> 2 GB boards.
>
> Signed-off-by: Alex Bee <knaerzche at gmail.com>
Reviewed-by: Kever Yang<kever.yang at rock-chips.com>

Thanks,
- Kever
> ---
>   arch/arm/mach-rockchip/sdram.c | 6 ++----
>   1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/mach-rockchip/sdram.c b/arch/arm/mach-rockchip/sdram.c
> index 24fe6cc8f0..4c637b7767 100644
> --- a/arch/arm/mach-rockchip/sdram.c
> +++ b/arch/arm/mach-rockchip/sdram.c
> @@ -56,16 +56,14 @@ int dram_init_banksize(void)
>   					- CONFIG_SYS_SDRAM_BASE;
>   		gd->bd->bi_dram[1].start = tos_parameter->tee_mem.phy_addr +
>   					tos_parameter->tee_mem.size;
> -		gd->bd->bi_dram[1].size = gd->bd->bi_dram[0].start
> -					+ top - gd->bd->bi_dram[1].start;
> +		gd->bd->bi_dram[1].size = top - gd->bd->bi_dram[1].start;
>   	} else {
>   		gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE;
>   		gd->bd->bi_dram[0].size = 0x8400000;
>   		/* Reserve 32M for OPTEE with TA */
>   		gd->bd->bi_dram[1].start = CONFIG_SYS_SDRAM_BASE
>   					+ gd->bd->bi_dram[0].size + 0x2000000;
> -		gd->bd->bi_dram[1].size = gd->bd->bi_dram[0].start
> -					+ top - gd->bd->bi_dram[1].start;
> +		gd->bd->bi_dram[1].size = top - gd->bd->bi_dram[1].start;
>   	}
>   #else
>   	gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE;




More information about the U-Boot mailing list