diff --git a/include/asm-blackfin/config.h b/include/asm-blackfin/config.h
index 25794dd4bf024a8b19834da0c307953b1e978aaa..327843d0b68f9b272773f19e386db8407401f56b 100644
--- a/include/asm-blackfin/config.h
+++ b/include/asm-blackfin/config.h
@@ -18,6 +18,9 @@
 # define CONFIG_BFIN_SCRATCH_REG retn
 #endif
 
+/* Relocation to SDRAM works on all Blackfin boards */
+#define CONFIG_RELOC_FIXUP_WORKS
+
 /* Make sure the structure is properly aligned */
 #if ((CONFIG_SYS_GBL_DATA_ADDR & -4) != CONFIG_SYS_GBL_DATA_ADDR)
 # error CONFIG_SYS_GBL_DATA_ADDR: must be 4 byte aligned
diff --git a/include/asm-blackfin/global_data.h b/include/asm-blackfin/global_data.h
index 3194b72a537105337b8aac7e1b85b760cb71a118..b78b04cd6beb476b1e288fa7940e77860581a2f2 100644
--- a/include/asm-blackfin/global_data.h
+++ b/include/asm-blackfin/global_data.h
@@ -44,7 +44,6 @@ typedef struct global_data {
 	unsigned long baudrate;
 	unsigned long have_console;	/* serial_init() was called */
 	phys_size_t ram_size;		/* RAM size */
-	unsigned long reloc_off;	/* Relocation Offset */
 	unsigned long env_addr;	/* Address  of Environment struct */
 	unsigned long env_valid;	/* Checksum of Environment valid? */
 #if defined(CONFIG_POST) || defined(CONFIG_LOGBUFFER)
diff --git a/lib_blackfin/board.c b/lib_blackfin/board.c
index 3670d2caa404f4ca5bec9ffc8d480c51b6747814..bf943ea7817049d9330f31af7b1af69b9bc57f52 100644
--- a/lib_blackfin/board.c
+++ b/lib_blackfin/board.c
@@ -296,7 +296,6 @@ static void board_net_init_r(bd_t *bd)
 
 void board_init_r(gd_t * id, ulong dest_addr)
 {
-	extern void malloc_bin_reloc(void);
 	char *s;
 	bd_t *bd;
 	gd = id;
@@ -310,7 +309,6 @@ void board_init_r(gd_t * id, ulong dest_addr)
 
 	/* initialize malloc() area */
 	mem_malloc_init(CONFIG_SYS_MALLOC_BASE, CONFIG_SYS_MALLOC_LEN);
-	malloc_bin_reloc();
 
 #if	!defined(CONFIG_SYS_NO_FLASH)
 	/* Initialize the flash and protect u-boot by default */