diff --git a/arch/arm/dts/at91sam9g20-taurus.dts b/arch/arm/dts/at91sam9g20-taurus.dts
index f27d77279f32783778e24d3c4ac4ceffec029856..7931c0af7b49c8295aedcf8a95f0bb581af7f6fa 100644
--- a/arch/arm/dts/at91sam9g20-taurus.dts
+++ b/arch/arm/dts/at91sam9g20-taurus.dts
@@ -18,6 +18,7 @@
 	compatible = "atmel,at91sam9g20ek", "atmel,at91sam9g20", "atmel,at91sam9";
 
 	chosen {
+		u-boot,dm-pre-reloc;
 		stdout-path = &dbgu;
 	};
 
@@ -48,6 +49,7 @@
 			};
 
 			dbgu: serial@fffff200 {
+				u-boot,dm-pre-reloc;
 				status = "okay";
 			};
 
diff --git a/board/siemens/taurus/taurus.c b/board/siemens/taurus/taurus.c
index 8da24be56838a23e064055fe3bfbea3eb78fb321..4aa8d6486904cf37c0006414acb630cb52beefc2 100644
--- a/board/siemens/taurus/taurus.c
+++ b/board/siemens/taurus/taurus.c
@@ -448,12 +448,3 @@ U_BOOT_CMD(
 );
 #endif
 #endif
-
-static struct atmel_serial_platdata at91sam9260_serial_plat = {
-	.base_addr = ATMEL_BASE_DBGU,
-};
-
-U_BOOT_DEVICE(at91sam9260_serial) = {
-	.name   = "serial_atmel",
-	.platdata = &at91sam9260_serial_plat,
-};
diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig
index 2de9cad6887d2eb6460a4e384c00585accf71120..70d44a760b458f3127af0066bf9190ec6e8038b3 100644
--- a/configs/taurus_defconfig
+++ b/configs/taurus_defconfig
@@ -7,6 +7,7 @@ CONFIG_TARGET_TAURUS=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_SYS_MALLOC_F_LEN=0x1000
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_NAND_SUPPORT=y
 CONFIG_SPL_SPI_FLASH_SUPPORT=y
@@ -36,6 +37,8 @@ CONFIG_CMD_PING=y
 # CONFIG_DOS_PARTITION is not set
 CONFIG_OF_CONTROL=y
 CONFIG_OF_EMBED=y
+CONFIG_CLK=y
+CONFIG_CLK_AT91=y
 CONFIG_DFU_NAND=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y