vserver 1.9.5.x5
[linux-2.6.git] / arch / arm / mach-epxa10db / arch.c
index ae9f7c8..1b40340 100644 (file)
@@ -20,6 +20,7 @@
  */
 #include <linux/types.h>
 #include <linux/init.h>
+#include <linux/serial_8250.h>
 
 #include <asm/hardware.h>
 #include <asm/setup.h>
 
 #include <asm/mach/arch.h>
 
+static struct plat_serial8250_port serial_platform_data[] = {
+       {
+               .iobase         = 0x3f8,
+               .irq            = IRQ_UARTINT0,
+#error FIXME
+               .uartclk        = 0,
+               .regshift       = 0,
+               .iotype         = UPIO_PORT,
+               .flags          = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST,
+       },
+       {
+               .iobase         = 0x2f8,
+               .irq            = IRQ_UARTINT1,
+#error FIXME
+               .uartclk        = 0,
+               .regshift       = 0,
+               .iotype         = UPIO_PORT,
+               .flags          = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST,
+       },
+       { },
+};
+
+static struct platform_device serial_device = {
+       .name                   = "serial8250",
+       .id                     = 0,
+       .dev                    = {
+               .platform_data  = serial_platform_data,
+       },
+};
+
 extern void epxa10db_map_io(void);
 extern void epxa10db_init_irq(void);
-extern void epxa10db_init_time(void);
+extern struct sys_timer epxa10db_timer;
 
 MACHINE_START(CAMELOT, "Altera Epxa10db")
        MAINTAINER("Altera Corporation")
        BOOT_MEM(0x00000000, 0x7fffc000, 0xffffc000)
        MAPIO(epxa10db_map_io)
        INITIRQ(epxa10db_init_irq)
-       INITTIME(epxa10db_init_time)
+       .timer          = &epxa10db_timer,
 MACHINE_END