Merge to Fedora kernel-2.6.18-1.2224_FC5 patched with stable patch-2.6.18.1-vs2.0...
[linux-2.6.git] / arch / mips / au1000 / common / au1xxx_irqmap.c
index 8a0f39f..7acfe9b 100644 (file)
@@ -25,7 +25,6 @@
  *  with this program; if not, write  to the Free Software Foundation, Inc.,
  *  675 Mass Ave, Cambridge, MA 02139, USA.
  */
-#include <linux/config.h>
 #include <linux/errno.h>
 #include <linux/init.h>
 #include <linux/irq.h>
@@ -55,7 +54,7 @@
  * Careful if you change match 2 request!
  * The interrupt handler is called directly from the low level dispatch code.
  */
-au1xxx_irq_map_t au1xxx_ic0_map[] = {
+au1xxx_irq_map_t __initdata au1xxx_ic0_map[] = {
 
 #if defined(CONFIG_SOC_AU1000)
        { AU1000_UART0_INT, INTC_INT_HIGH_LEVEL, 0},
@@ -173,14 +172,14 @@ au1xxx_irq_map_t au1xxx_ic0_map[] = {
        { AU1550_PSC1_INT, INTC_INT_HIGH_LEVEL, 0},
        { AU1550_PSC2_INT, INTC_INT_HIGH_LEVEL, 0},
        { AU1550_PSC3_INT, INTC_INT_HIGH_LEVEL, 0},
-       { AU1550_TOY_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1550_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1550_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1550_TOY_MATCH2_INT, INTC_INT_RISE_EDGE, 1 },
-       { AU1550_RTC_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1550_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1550_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1550_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_TOY_MATCH2_INT, INTC_INT_RISE_EDGE, 1 },
+       { AU1000_RTC_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 },
        { AU1550_NAND_INT, INTC_INT_RISE_EDGE, 0},
        { AU1550_USB_DEV_REQ_INT, INTC_INT_HIGH_LEVEL, 0 },
        { AU1550_USB_DEV_SUS_INT, INTC_INT_RISE_EDGE, 0 },
@@ -201,14 +200,14 @@ au1xxx_irq_map_t au1xxx_ic0_map[] = {
        { AU1200_PSC1_INT, INTC_INT_HIGH_LEVEL, 0},
        { AU1200_AES_INT, INTC_INT_HIGH_LEVEL, 0},
        { AU1200_CAMERA_INT, INTC_INT_HIGH_LEVEL, 0},
-       { AU1200_TOY_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1200_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1200_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1200_TOY_MATCH2_INT, INTC_INT_RISE_EDGE, 1 },
-       { AU1200_RTC_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1200_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1200_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
-       { AU1200_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_TOY_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_TOY_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_TOY_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_TOY_MATCH2_INT, INTC_INT_RISE_EDGE, 1 },
+       { AU1000_RTC_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_RTC_MATCH0_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_RTC_MATCH1_INT, INTC_INT_RISE_EDGE, 0 },
+       { AU1000_RTC_MATCH2_INT, INTC_INT_RISE_EDGE, 0 },
        { AU1200_NAND_INT, INTC_INT_RISE_EDGE, 0},
        { AU1200_USB_INT, INTC_INT_HIGH_LEVEL, 0 },
        { AU1200_LCD_INT, INTC_INT_HIGH_LEVEL, 0},
@@ -220,5 +219,5 @@ au1xxx_irq_map_t au1xxx_ic0_map[] = {
 
 };
 
-int au1xxx_ic0_nr_irqs = sizeof(au1xxx_ic0_map)/sizeof(au1xxx_irq_map_t);
+int __initdata au1xxx_ic0_nr_irqs = ARRAY_SIZE(au1xxx_ic0_map);