msm: MSM8X60 RUMI3 board support
authorSteve Muckle <smuckle@codeaurora.org>
Thu, 7 Jan 2010 20:43:24 +0000 (12:43 -0800)
committerDaniel Walker <dwalker@codeaurora.org>
Fri, 8 Oct 2010 22:12:37 +0000 (15:12 -0700)
Board configuration for MSM8X60 emulation on RUMI3.

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 [new file with mode: 0644]
arch/arm/mach-msm/include/mach/board.h

index bad12f30192bbf7698ea5b67597561156d5892ed..bb3a68bbc1e079547364bb7fddf96ab0ea820863 100644 (file)
@@ -79,6 +79,12 @@ config MACH_QSD8X50A_ST1_5
        help
          Support for the Qualcomm ST1.5.
 
+config MACH_MSM8X60_RUMI3
+       depends on ARCH_MSM8X60
+       bool "MSM8x60 RUMI3"
+       help
+         Support for the Qualcomm MSM8x60 RUMI3 emulator.
+
 endmenu
 
 config MSM_DEBUG_UART
diff --git a/arch/arm/mach-msm/board-msm8x60.c b/arch/arm/mach-msm/board-msm8x60.c
new file mode 100644 (file)
index 0000000..d30ead1
--- /dev/null
@@ -0,0 +1,58 @@
+/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 and
+ * only version 2 as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301, USA.
+ *
+ */
+
+#include <linux/kernel.h>
+#include <linux/platform_device.h>
+#include <linux/io.h>
+
+#include <asm/mach-types.h>
+#include <asm/mach/arch.h>
+#include <asm/hardware/gic.h>
+
+#include <mach/board.h>
+#include <mach/msm_iomap.h>
+
+void __iomem *gic_cpu_base_addr;
+
+unsigned long clk_get_max_axi_khz(void)
+{
+       return 0;
+}
+
+static void __init msm8x60_map_io(void)
+{
+       msm_map_msm8x60_io();
+}
+
+static void __init msm8x60_init_irq(void)
+{
+       gic_dist_init(0, MSM_QGIC_DIST_BASE, 1);
+       gic_cpu_base_addr = (void *)MSM_QGIC_CPU_BASE;
+       gic_cpu_init(0, MSM_QGIC_CPU_BASE);
+}
+
+static void __init msm8x60_init(void)
+{
+}
+
+MACHINE_START(MSM8X60_RUMI3, "QCT MSM8X60 RUMI3")
+       .map_io = msm8x60_map_io,
+       .init_irq = msm8x60_init_irq,
+       .init_machine = msm8x60_init,
+       .timer = &msm_timer,
+MACHINE_END
index 5a79bcf5041367894d876ece1a86f20f5948bb97..6abf4a6eadc19be578b7888c21bfd3ec534291f6 100644 (file)
@@ -33,6 +33,8 @@ struct msm_acpu_clock_platform_data
 
 struct clk;
 
+extern struct sys_timer msm_timer;
+
 /* common init routines for use by arch/arm/mach-msm/board-*.c */
 
 void __init msm_add_devices(void);