soc/mediatek/mt8195: Get DRAM size from DRAM calibration result

Signed-off-by: Ryan Chuang <ryan.chuang@mediatek.corp-partner.google.com>
Change-Id: Ic34f29d1692b94284b2cf6c5d91d323df736c76f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/56204
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Ryan Chuang 2021-07-09 16:26:50 +08:00 committed by Hung-Te Lin
parent 1ff60178a9
commit 2e3d1db7ec
1 changed files with 18 additions and 1 deletions

View File

@ -1,8 +1,25 @@
/* SPDX-License-Identifier: GPL-2.0-only */ /* SPDX-License-Identifier: GPL-2.0-only */
#include <console/console.h>
#include <emi.h>
#include <soc/emi.h> #include <soc/emi.h>
size_t sdram_size(void) size_t sdram_size(void)
{ {
return (size_t)4 * GiB; int rank_num;
u64 rank_size[RANK_MAX];
static size_t dram_size = 0;
if (dram_size)
return dram_size;
get_rank_size_by_emi(rank_size);
rank_num = get_rank_nr_by_emi();
for (int i = 0; i < rank_num; i++)
dram_size += rank_size[i];
printk(BIOS_INFO, "dram size = %#lx\n", dram_size);
return dram_size;
} }