Hi Ti,
We will use AM6548 SR2.0 to bring up our evm board, and there will be 512MB*2, total is 1GB ddr4 in our evm.
In this case, we have two question want to confirm with you.
1. How to modify the memory region in k3-am654-board-board.dts? The SDK is default for 4G.
memory@80000000 {
device_type = "memory";
/* 4G RAM */
reg = <0x00000000 0x80000000 0x00000000 0x80000000>,
<0x00000008 0x80000000 0x00000000 0x80000000>;
};
2. In evm.c, we modify the ram_size as below, is that correct? I'm not sure if we need gd->bd->bi_dram[1] setting or not.
int dram_init(void)
{
#ifdef CONFIG_PHYS_64BIT
gd->ram_size = 0x40000000;//ERIC*
#else
gd->ram_size = 0x80000000;
#endif
return 0;
}
ulong board_get_usable_ram_top(ulong total_size)
{
#ifdef CONFIG_PHYS_64BIT
/* Limit RAM used by U-Boot to the DDR low region */
if (gd->ram_top > 0x40000000)
return 0x40000000;
#endif
return gd->ram_top;
}
int dram_init_banksize(void)
{
/* Bank 0 declares the memory available in the DDR low region */
gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE;
gd->bd->bi_dram[0].size = 0x40000000;
gd->ram_size = 0x40000000;
#ifdef CONFIG_PHYS_64BIT
/* Bank 1 declares the memory available in the DDR high region */
gd->bd->bi_dram[1].start = CONFIG_SYS_SDRAM_BASE1;
gd->bd->bi_dram[1].size = 0x40000000;//ERIC*
gd->ram_size = 0x40000000;//ERIC*
#endif
return 0;
}
Please help this.
Thanks.