diff --git a/common/spl/spl.c b/common/spl/spl.c
index 50828e6021812909c65aec01c1bc1d868ddf560d..8eea2f937a529d89ec4c991cf2060d725ac333a8 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -322,6 +322,7 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
 	struct spl_image_info spl_image;
 
 	debug(">>spl:board_init_r()\n");
+	gd->bd = &bdata;
 
 #if defined(CONFIG_SYS_SPL_MALLOC_START)
 	mem_malloc_init(CONFIG_SYS_SPL_MALLOC_START,
@@ -385,7 +386,6 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
  */
 void preloader_console_init(void)
 {
-	gd->bd = &bdata;
 	gd->baudrate = CONFIG_BAUDRATE;
 
 	serial_init();		/* serial communications setup */