[ARM] 3433/1: ARM: OMAP: 8/8 Update board files
[deliverable/linux.git] / arch / arm / mach-omap1 / devices.c
index ecbc47514adc6b4f51f148750d44d6d4778618a7..876c38da14f75c2d9e6023b9d5bbd05c5357d066 100644 (file)
@@ -99,6 +99,45 @@ static void omap_init_rtc(void)
 static inline void omap_init_rtc(void) {}
 #endif
 
+#if defined(CONFIG_OMAP_STI)
+
+#define OMAP1_STI_BASE         IO_ADDRESS(0xfffea000)
+#define OMAP1_STI_CHANNEL_BASE (OMAP1_STI_BASE + 0x400)
+
+static struct resource sti_resources[] = {
+       {
+               .start          = OMAP1_STI_BASE,
+               .end            = OMAP1_STI_BASE + SZ_1K - 1,
+               .flags          = IORESOURCE_MEM,
+       },
+       {
+               .start          = OMAP1_STI_CHANNEL_BASE,
+               .end            = OMAP1_STI_CHANNEL_BASE + SZ_1K - 1,
+               .flags          = IORESOURCE_MEM,
+       },
+       {
+               .start          = INT_1610_STI,
+               .flags          = IORESOURCE_IRQ,
+       }
+};
+
+static struct platform_device sti_device = {
+       .name           = "sti",
+       .id             = -1,
+       .dev = {
+               .release        = omap_nop_release,
+       },
+       .num_resources  = ARRAY_SIZE(sti_resources),
+       .resource       = sti_resources,
+};
+
+static inline void omap_init_sti(void)
+{
+       platform_device_register(&sti_device);
+}
+#else
+static inline void omap_init_sti(void) {}
+#endif
 
 /*-------------------------------------------------------------------------*/
 
@@ -129,6 +168,7 @@ static int __init omap1_init_devices(void)
         */
        omap_init_irda();
        omap_init_rtc();
+       omap_init_sti();
 
        return 0;
 }
This page took 0.026378 seconds and 5 git commands to generate.