diff --git a/cpu/blackfin/interrupts.c b/cpu/blackfin/interrupts.c
index bf6fb4b4cf38cd19af4f0ee4852fa8f98b12fe01..19456e5c1476f999812e0247e8cb4b05cba9c03b 100644
--- a/cpu/blackfin/interrupts.c
+++ b/cpu/blackfin/interrupts.c
@@ -20,6 +20,7 @@
 
 #include <common.h>
 #include <config.h>
+#include <watchdog.h>
 #include <asm/blackfin.h>
 #include "cpu.h"
 
@@ -70,6 +71,8 @@ void udelay(unsigned long usec)
 	cclk = (CONFIG_CCLK_HZ);
 
 	while (usec > 1) {
+		WATCHDOG_RESET();
+
 		/*
 		 * how many clock ticks to delay?
 		 *  - request(in useconds) * clock_ticks(Hz) / useconds/second
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..6cade7d1102e2d968ab3148732ee33f5ea934e6f 100644
--- a/lib_blackfin/board.c
+++ b/lib_blackfin/board.c
@@ -278,7 +278,6 @@ static void board_net_init_r(bd_t *bd)
 	bb_miiphy_init();
 #endif
 #ifdef CONFIG_CMD_NET
-	uchar enetaddr[6];
 	char *s;
 
 	if ((s = getenv("bootfile")) != NULL)
@@ -288,15 +287,11 @@ static void board_net_init_r(bd_t *bd)
 
 	printf("Net:   ");
 	eth_initialize(gd->bd);
-
-	eth_getenv_enetaddr("ethaddr", enetaddr);
-	printf("MAC:   %pM\n", enetaddr);
 #endif
 }
 
 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 +305,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 */