1 /*
2 * linux/arch/sh/boards/se/7751/irq.c
3 *
4 * Copyright (C) 2000 Kazumoto Kojima
5 *
6 * Hitachi SolutionEngine Support.
7 *
8 * Modified for 7751 Solution Engine by
9 * Ian da Silva and Jeremy Siegel, 2001.
10 */
11
12 #include <linux/init.h>
13 #include <linux/irq.h>
14 #include <asm/irq.h>
15 #include <mach-se/mach/se7751.h>
16
17 static struct ipr_data ipr_irq_table[] = {
18 { 13, 3, 3, 2 },
19 /* Add additional entries here as drivers are added and tested. */
20 };
21
22 static unsigned long ipr_offsets[] = {
23 BCR_ILCRA,
24 BCR_ILCRB,
25 BCR_ILCRC,
26 BCR_ILCRD,
27 BCR_ILCRE,
28 BCR_ILCRF,
29 BCR_ILCRG,
30 };
31
32 static struct ipr_desc ipr_irq_desc = {
33 .ipr_offsets = ipr_offsets,
34 .nr_offsets = ARRAY_SIZE(ipr_offsets),
35
36 .ipr_data = ipr_irq_table,
37 .nr_irqs = ARRAY_SIZE(ipr_irq_table),
38
39 .chip = {
40 .name = "IPR-se7751",
41 },
42 };
43
44 /*
45 * Initialize IRQ setting
46 */
init_7751se_IRQ(void)47 void __init init_7751se_IRQ(void)
48 {
49 register_ipr_controller(&ipr_irq_desc);
50 }
51