ARM: msm: use machine specific hook for late init
[sfrench/cifs-2.6.git] / arch / arm / mach-msm / board-trout.c
index 6b9b227c87c59e25108d5570b72a0ebbe1227d66..bbe13f12fa0197f54d8b63f7ad420fbdd4b8c7c9 100644 (file)
@@ -19,6 +19,7 @@
 #include <linux/platform_device.h>
 #include <linux/clkdev.h>
 
+#include <asm/system_info.h>
 #include <asm/mach-types.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/map.h>
@@ -43,6 +44,11 @@ static struct platform_device *devices[] __initdata = {
 
 extern struct sys_timer msm_timer;
 
+static void __init trout_init_early(void)
+{
+       arch_ioremap_caller = __msm_ioremap_caller;
+}
+
 static void __init trout_init_irq(void)
 {
        msm_init_irq();
@@ -92,11 +98,18 @@ static void __init trout_map_io(void)
        msm_clock_init(msm_clocks_7x01a, msm_num_clocks_7x01a);
 }
 
+static void __init trout_init_late(void)
+{
+       smd_debugfs_init();
+}
+
 MACHINE_START(TROUT, "HTC Dream")
        .atag_offset    = 0x100,
        .fixup          = trout_fixup,
        .map_io         = trout_map_io,
+       .init_early     = trout_init_early,
        .init_irq       = trout_init_irq,
        .init_machine   = trout_init,
+       .init_late      = trout_init_late,
        .timer          = &msm_timer,
 MACHINE_END