x86: Fix DRAM bank size init with generic board

The intention of the memory init code is that it should work the same with
CONFIG_SYS_GENERIC_BOARD and without. This is tricky because dram_init()
is called prior to relocation with generic board (matching other archs)
and after relocation without generic board.

Adjust the init sequence so that dram_init() is not called in the generic
board case, which seems like the easiest fix for now. Also ensure that
relocation addresses are still calculated.

Signed-off-by: Simon Glass <sjg@chromium.org>
diff --git a/common/board_f.c b/common/board_f.c
index 7698891..32d5215 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -856,8 +856,7 @@
 #endif
 #ifdef CONFIG_X86
 	dram_init_f,		/* configure available RAM banks */
-	/* x86 would prefer that this happens after relocation */
-	dram_init,
+	calculate_relocation_address,
 #endif
 	announce_dram_init,
 	/* TODO: unify all these dram functions? */