msm: MSM8X60 simulator board support
Steve Muckle [Thu, 7 Jan 2010 20:51:10 +0000 (12:51 -0800)]
Board configuration for MSM8X60 simulation.

Signed-off-by: Steve Muckle <smuckle@codeaurora.org>
Signed-off-by: Daniel Walker <dwalker@codeaurora.org>

arch/arm/mach-msm/Kconfig
arch/arm/mach-msm/board-msm8x60.c

index e0db899..6cedfef 100644 (file)
@@ -41,7 +41,7 @@ config ARCH_MSM8X60
        select CPU_V7
        select MSM_V2_TLMM
        select MSM_GPIOMUX
-       select MACH_MSM8X60_SURF if (!MACH_MSM8X60_RUMI3)
+       select MACH_MSM8X60_SURF if (!MACH_MSM8X60_RUMI3 && !MACH_MSM8X60_SIM)
 
 endchoice
 
@@ -106,6 +106,12 @@ config MACH_MSM8X60_SURF
        help
          Support for the Qualcomm MSM8x60 SURF eval board.
 
+config MACH_MSM8X60_SIM
+       depends on ARCH_MSM8X60
+       bool "MSM8x60 Simulator"
+       help
+         Support for the Qualcomm MSM8x60 simulator.
+
 endmenu
 
 config MSM_DEBUG_UART
index a8a4d8d..95b0e36 100644 (file)
@@ -54,7 +54,8 @@ static void __init msm8x60_init_irq(void)
        /* RUMI does not adhere to GIC spec by enabling STIs by default.
         * Enable/clear is supposed to be RO for STIs, but is RW on RUMI.
         */
-       writel(0x0000FFFF, MSM_QGIC_DIST_BASE + GIC_DIST_ENABLE_SET);
+       if (!machine_is_msm8x60_sim())
+               writel(0x0000FFFF, MSM_QGIC_DIST_BASE + GIC_DIST_ENABLE_SET);
 
        /* FIXME: Not installing AVS_SVICINT and AVS_SVICINTSWDONE yet
         * as they are configured as level, which does not play nice with
@@ -83,3 +84,10 @@ MACHINE_START(MSM8X60_SURF, "QCT MSM8X60 SURF")
        .init_machine = msm8x60_init,
        .timer = &msm_timer,
 MACHINE_END
+
+MACHINE_START(MSM8X60_SIM, "QCT MSM8X60 SIMULATOR")
+       .map_io = msm8x60_map_io,
+       .init_irq = msm8x60_init_irq,
+       .init_machine = msm8x60_init,
+       .timer = &msm_timer,
+MACHINE_END