diff --git a/arch/arm/mach-msm/board-dream.c b/arch/arm/mach-msm/board-dream.c
index 931a79649463b73e880dc48b5defe74ff99f2e14..21afa85131687d2577860713737d69dc63a62273 100644
--- a/arch/arm/mach-msm/board-dream.c
+++ b/arch/arm/mach-msm/board-dream.c
@@ -21,6 +21,7 @@
 #include <asm/mach-types.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/map.h>
+#include <asm/setup.h>
 
 #include <mach/board.h>
 #include <mach/hardware.h>
@@ -44,6 +45,15 @@ static void __init trout_init_irq(void)
 	msm_init_irq();
 }
 
+static void __init trout_fixup(struct machine_desc *desc, struct tag *tags,
+				char **cmdline, struct meminfo *mi)
+{
+	mi->nr_banks = 1;
+	mi->bank[0].start = PHYS_OFFSET;
+	mi->bank[0].node = PHYS_TO_NID(PHYS_OFFSET);
+	mi->bank[0].size = (101*1024*1024);
+}
+
 static void __init trout_init(void)
 {
 	platform_add_devices(devices, ARRAY_SIZE(devices));
@@ -75,6 +85,7 @@ MACHINE_START(TROUT, "HTC Dream")
 	.phys_io	= MSM_DEBUG_UART_PHYS,
 	.io_pg_offst	= ((MSM_DEBUG_UART_BASE) >> 18) & 0xfffc,
 	.boot_params	= 0x10000100,
+	.fixup		= trout_fixup,
 	.map_io		= trout_map_io,
 	.init_irq	= trout_init_irq,
 	.init_machine	= trout_init,