msm: io: MSM8X60 io support
authorSteve Muckle <smuckle@codeaurora.org>
Wed, 6 Jan 2010 22:55:24 +0000 (14:55 -0800)
committerDaniel Walker <dwalker@codeaurora.org>
Fri, 8 Oct 2010 22:12:33 +0000 (15:12 -0700)
MSM8X60 has different IO mappings than previous MSMs.

Signed-off-by: Steve Muckle <smuckle@codeaurora.org>
Signed-off-by: Daniel Walker <dwalker@codeaurora.org>
arch/arm/mach-msm/include/mach/io.h
arch/arm/mach-msm/include/mach/msm_iomap-8x60.h
arch/arm/mach-msm/include/mach/msm_iomap.h
arch/arm/mach-msm/io.c

index c35b29f9ac0fb615180344f7edb0bb3440bc1b7b..7386e732baad9d380914fd923404cb7a5e2e1931 100644 (file)
@@ -28,6 +28,7 @@ void __iomem *__msm_ioremap(unsigned long phys_addr, size_t size, unsigned int m
 
 void msm_map_qsd8x50_io(void);
 void msm_map_msm7x30_io(void);
+void msm_map_msm8x60_io(void);
 
 extern unsigned int msm_shared_ram_phys;
 
index 17209f78d4a8126a3838aeaaa2079913e93c824c..c9aa52d6350b02402fa747028c2d21d899bddecb 100644 (file)
  *
  */
 
+#define MSM_QGIC_DIST_BASE     IOMEM(0xF0000000)
+#define MSM_QGIC_DIST_PHYS     0x02080000
+#define MSM_QGIC_DIST_SIZE     SZ_4K
+
+#define MSM_QGIC_CPU_BASE      IOMEM(0xF0001000)
+#define MSM_QGIC_CPU_PHYS      0x02081000
+#define MSM_QGIC_CPU_SIZE      SZ_4K
+
+#define MSM_ACC_BASE           IOMEM(0xF0002000)
+#define MSM_ACC_PHYS           0x02001000
+#define MSM_ACC_SIZE           SZ_4K
+
+#define MSM_GCC_BASE           IOMEM(0xF0003000)
+#define MSM_GCC_PHYS           0x02082000
+#define MSM_GCC_SIZE           SZ_4K
+
 #define MSM_TLMM_BASE          IOMEM(0xF0004000)
 #define MSM_TLMM_PHYS          0x00800000
 #define MSM_TLMM_SIZE          SZ_16K
 
+#define MSM_SHARED_RAM_BASE    IOMEM(0xF0100000)
+#define MSM_SHARED_RAM_SIZE    SZ_1M
+
 #endif
index 39c8fbcf33e7c64ee99761ac3ed9480055d301ea..8e24dd8121397871de5bc3f8ee4a5d5769bca8f6 100644 (file)
@@ -53,4 +53,6 @@
 #include "msm_iomap-7x00.h"
 #endif
 
+
+
 #endif
index 1c05060b5f3b40545dce99453d97f55500c69f6d..d36b61074146eb35aa862f9c0ff46c619840c9bf 100644 (file)
@@ -100,6 +100,21 @@ void __init msm_map_qsd8x50_io(void)
 }
 #endif /* CONFIG_ARCH_QSD8X50 */
 
+#ifdef CONFIG_ARCH_MSM8X60
+static struct map_desc msm8x60_io_desc[] __initdata = {
+       MSM_DEVICE(QGIC_DIST),
+       MSM_DEVICE(QGIC_CPU),
+       MSM_DEVICE(TMR),
+       MSM_DEVICE(ACC),
+       MSM_DEVICE(GCC),
+};
+
+void __init msm_map_msm8x60_io(void)
+{
+       iotable_init(msm8x60_io_desc, ARRAY_SIZE(msm8x60_io_desc));
+}
+#endif /* CONFIG_ARCH_MSM8X60 */
+
 #ifdef CONFIG_ARCH_MSM7X30
 static struct map_desc msm7x30_io_desc[] __initdata = {
        MSM_DEVICE(VIC),