Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
irq.c
Go to the documentation of this file.
1 /*
2  * arch/sh/boards/mach-landisk/irq.c
3  *
4  * I-O DATA Device, Inc. LANDISK Support
5  *
6  * Copyright (C) 2005-2007 kogiidena
7  * Copyright (C) 2011 Nobuhiro Iwamatsu
8  *
9  * Copyright (C) 2001 Ian da Silva, Jeremy Siegel
10  * Based largely on io_se.c.
11  *
12  * This file is subject to the terms and conditions of the GNU General Public
13  * License. See the file "COPYING" in the main directory of this archive
14  * for more details.
15  */
16 
17 #include <linux/init.h>
18 #include <linux/irq.h>
19 #include <linux/interrupt.h>
20 #include <linux/io.h>
22 
23 enum {
24  UNUSED = 0,
25 
26  PCI_INTA, /* PCI int A */
27  PCI_INTB, /* PCI int B */
28  PCI_INTC, /* PCI int C */
29  PCI_INTD, /* PCI int D */
30  ATA, /* ATA */
31  FATA, /* CF */
32  POWER, /* Power swtich */
33  BUTTON, /* Button swtich */
34 };
35 
36 /* Vectors for LANDISK */
37 static struct intc_vect vectors_landisk[] __initdata = {
46 };
47 
48 /* IRLMSK mask register layout for LANDISK */
49 static struct intc_mask_reg mask_registers_landisk[] __initdata = {
50  { PA_IMASK, 0, 8, /* IRLMSK */
51  { BUTTON, POWER, FATA, ATA,
53  }
54  },
55 };
56 
57 static DECLARE_INTC_DESC(intc_desc_landisk, "landisk", vectors_landisk, NULL,
58  mask_registers_landisk, NULL, NULL);
59 /*
60  * Initialize IRQ setting
61  */
63 {
64  register_intc_controller(&intc_desc_landisk);
66 }