CBMEM ARM: Prefer get_cbmem_table() over cbmem_late_set_table()

Implementing get_cbmem_table() allows initializing CBMEM earlier.

Change-Id: I973f3a84dd9aaa2839959df5dda22909fdb9edeb
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: http://review.coreboot.org/3560
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@google.com>
diff --git a/src/mainboard/google/pit/mainboard.c b/src/mainboard/google/pit/mainboard.c
index 7dd8388..b91040c 100644
--- a/src/mainboard/google/pit/mainboard.c
+++ b/src/mainboard/google/pit/mainboard.c
@@ -221,14 +221,12 @@
 	// gpio_info();
 }
 
-static void setup_cbmem(void)
+void get_cbmem_table(uint64_t *base, uint64_t *size)
 {
-	u64 size = CONFIG_COREBOOT_TABLES_SIZE;
-	u64 base = CONFIG_SYS_SDRAM_BASE +
+	*size = CONFIG_COREBOOT_TABLES_SIZE;
+	*base = CONFIG_SYS_SDRAM_BASE +
 				((unsigned)CONFIG_DRAM_SIZE_MB << 20ULL) -
 				CONFIG_COREBOOT_TABLES_SIZE;
-	cbmem_late_set_table(base, size);
-	cbmem_init(base, size);
 }
 
 static void mainboard_enable(device_t dev)
@@ -236,7 +234,7 @@
 	dev->ops->init = &mainboard_init;
 
 	/* set up coreboot tables */
-	setup_cbmem();
+	cbmem_initialize();
 
 	/* set up dcache and MMU */
 	/* FIXME: this should happen via resource allocator */
diff --git a/src/mainboard/google/snow/mainboard.c b/src/mainboard/google/snow/mainboard.c
index 8805be5..93cc303 100644
--- a/src/mainboard/google/snow/mainboard.c
+++ b/src/mainboard/google/snow/mainboard.c
@@ -262,14 +262,12 @@
 	// gpio_info();
 }
 
-static void setup_cbmem(void)
+void get_cbmem_table(uint64_t *base, uint64_t *size)
 {
-	u64 size = CONFIG_COREBOOT_TABLES_SIZE;
-	u64 base = CONFIG_SYS_SDRAM_BASE +
+	*size = CONFIG_COREBOOT_TABLES_SIZE;
+	*base = CONFIG_SYS_SDRAM_BASE +
 				((unsigned)CONFIG_DRAM_SIZE_MB << 20ULL) -
 				CONFIG_COREBOOT_TABLES_SIZE;
-	cbmem_late_set_table(base, size);
-	cbmem_init(base, size);
 }
 
 static void mainboard_enable(device_t dev)
@@ -277,7 +275,7 @@
 	dev->ops->init = &mainboard_init;
 
 	/* set up coreboot tables */
-	setup_cbmem();
+	cbmem_initialize();
 
 	/* set up dcache and MMU */
 	/* FIXME: this should happen via resource allocator */