[PATCH 2/5] drivers: ddr: altera: arria10: Add valid RAM size check
Naresh Kumar Ravulapalli
nareshkumar.ravulapalli at altera.com
Tue May 6 16:12:43 CEST 2025
Add call to get_ram_size() function to check memory range
for valid RAM.
Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli at altera.com>
---
drivers/ddr/altera/sdram_arria10.c | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/drivers/ddr/altera/sdram_arria10.c b/drivers/ddr/altera/sdram_arria10.c
index d75203a1d2a..4a82af0b711 100644
--- a/drivers/ddr/altera/sdram_arria10.c
+++ b/drivers/ddr/altera/sdram_arria10.c
@@ -669,6 +669,22 @@ static int of_sdram_firewall_setup(const void *blob)
return 0;
}
+static void sdram_size_check(void)
+{
+ phys_size_t ram_check = 0;
+
+ debug("DDR: Running SDRAM size sanity check\n");
+
+ ram_check = get_ram_size((long *)gd->bd->bi_dram[0].start,
+ gd->bd->bi_dram[0].size);
+ if (ram_check != gd->bd->bi_dram[0].size) {
+ puts("DDR: SDRAM size check failed!\n");
+ hang();
+ }
+
+ debug("DDR: SDRAM size check passed!\n");
+}
+
int ddr_calibration_sequence(void)
{
schedule();
@@ -722,5 +738,7 @@ int ddr_calibration_sequence(void)
if (sdram_is_ecc_enabled())
sdram_init_ecc_bits(gd->ram_size);
+ sdram_size_check();
+
return 0;
}
--
2.35.3
More information about the U-Boot
mailing list