CBMEM AMD: Fix calls to set_top_of_ram_once()
We can postpone the call to set_top_of_ram_once() outside the
loops and make just one call instead.
As set_top_of_ram() is now only called once, it is no longer
necessary to check if high_tables_base was already set.
Change-Id: I302d9af52ac40c7fa8c7c7e65f82e00b031cd397
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: http://review.coreboot.org/3895
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
diff --git a/src/arch/x86/boot/cbmem.c b/src/arch/x86/boot/cbmem.c
index 888c1f4..3f738be 100644
--- a/src/arch/x86/boot/cbmem.c
+++ b/src/arch/x86/boot/cbmem.c
@@ -23,12 +23,10 @@
* must implement get_top_of_ram() for both romstage and ramstage to support
* features like CAR_MIGRATION and CBMEM_CONSOLE.
*/
-void set_top_of_ram_once(uint64_t ramtop)
+void set_top_of_ram(uint64_t ramtop)
{
- if (high_tables_base == 0) {
- high_tables_base = ramtop - HIGH_MEMORY_SIZE;
- high_tables_size = HIGH_MEMORY_SIZE;
- }
+ high_tables_base = ramtop - HIGH_MEMORY_SIZE;
+ high_tables_size = HIGH_MEMORY_SIZE;
printk(BIOS_DEBUG, "high_tables_base: %08llx, size %lld\n",
high_tables_base, high_tables_size);
}