[PATCH] ARM: Remove machine description macros
[deliverable/linux.git] / arch / arm / mach-pxa / mainstone.c
index 6823ae28ae6a2c9de157c15637198ae0b5eb77be..5d2f76b6df0eb4db90f834ccbfac46a8562a9cef 100644 (file)
@@ -15,6 +15,7 @@
 
 #include <linux/init.h>
 #include <linux/device.h>
+#include <linux/sysdev.h>
 #include <linux/interrupt.h>
 #include <linux/sched.h>
 #include <linux/bitops.h>
@@ -62,7 +63,6 @@ static struct irqchip mainstone_irq_chip = {
        .unmask         = mainstone_unmask_irq,
 };
 
-
 static void mainstone_irq_handler(unsigned int irq, struct irqdesc *desc,
                                  struct pt_regs *regs)
 {
@@ -100,6 +100,35 @@ static void __init mainstone_init_irq(void)
        set_irq_type(IRQ_GPIO(0), IRQT_FALLING);
 }
 
+#ifdef CONFIG_PM
+
+static int mainstone_irq_resume(struct sys_device *dev)
+{
+       MST_INTMSKENA = mainstone_irq_enabled;
+       return 0;
+}
+
+static struct sysdev_class mainstone_irq_sysclass = {
+       set_kset_name("cpld_irq"),
+       .resume = mainstone_irq_resume,
+};
+
+static struct sys_device mainstone_irq_device = {
+       .cls = &mainstone_irq_sysclass,
+};
+
+static int __init mainstone_irq_device_init(void)
+{
+       int ret = sysdev_class_register(&mainstone_irq_sysclass);
+       if (ret == 0)
+               ret = sysdev_register(&mainstone_irq_device);
+       return ret;
+}
+
+device_initcall(mainstone_irq_device_init);
+
+#endif
+
 
 static struct resource smc91x_resources[] = {
        [0] = {
@@ -316,10 +345,12 @@ static void __init mainstone_map_io(void)
 }
 
 MACHINE_START(MAINSTONE, "Intel HCDDBBVA0 Development Platform (aka Mainstone)")
-       MAINTAINER("MontaVista Software Inc.")
-       BOOT_MEM(0xa0000000, 0x40000000, io_p2v(0x40000000))
-       MAPIO(mainstone_map_io)
-       INITIRQ(mainstone_init_irq)
+       /* Maintainer: MontaVista Software Inc. */
+       .phys_ram       = 0xa0000000,
+       .phys_io        = 0x40000000,
+       .io_pg_offst    = ((io_p2v(0x40000000) >> 18) & 0xfffc,)
+       .map_io         = mainstone_map_io,
+       .init_irq       = mainstone_init_irq,
        .timer          = &pxa_timer,
-       INIT_MACHINE(mainstone_init)
+       .init_machine   = mainstone_init,
 MACHINE_END
This page took 0.024421 seconds and 5 git commands to generate.