fixup! mach-snapdragon: generalise board support
diff --git a/arch/arm/mach-snapdragon/board.c b/arch/arm/mach-snapdragon/board.c
index 9bd9bca..2aac250 100644
--- a/arch/arm/mach-snapdragon/board.c
+++ b/arch/arm/mach-snapdragon/board.c
@@ -38,16 +38,13 @@
 
 int dram_init_banksize(void)
 {
-	int ret;
+	int ret, i;
 	phys_addr_t start, size;
 
 	ret = fdtdec_setup_memory_banksize();
 	if (ret < 0)
 		return ret;
 
-	if (WARN(CONFIG_NR_DRAM_BANKS < 2, "CONFIG_NR_DRAM_BANKS should be at least 2"))
-		return 0;
-
 	/* Some bootloaders populate the RAM banks in the wrong order -_- */
 	start = gd->bd->bi_dram[1].start;
 	size = gd->bd->bi_dram[1].size;
@@ -59,6 +56,17 @@
 		gd->bd->bi_dram[0].size = size;
 	}
 
+	for (i = 0; gd->bd->bi_dram[i].size; i++) {
+		size = ALIGN(gd->bd->bi_dram[i].size, SZ_4K);
+		/* 
+		 * If you're filling out the /memory node manually, the size value should
+		 * end in 3 zeros. Better yet, let ABL populate it for you.
+		 */
+		WARN_ONCE(gd->bd->bi_dram[i].size != size,
+			  "\nDRAM bank %d size not aligned to 4K! Patching things up...\n", i);
+		gd->bd->bi_dram[i].size = size;
+	}
+
 	return 0;
 }