aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-sh
diff options
context:
space:
mode:
authorMagnus Damm <damm@igel.co.jp>2007-08-12 02:26:12 -0400
committerPaul Mundt <lethal@linux-sh.org>2007-09-20 22:57:50 -0400
commit73505b445dbb8ad12df468404c4dd5cde9c40c65 (patch)
treec248710475090f01dc874e2c878efc769b24d2af /include/asm-sh
parent6ef5fb2cfcedaab4a43493c8f2305a67c0ce1af6 (diff)
sh: intc - rework core code
This patch reworks the intc core, implementing the following features: - Support dual priority registers - one set and one clear register - All 8/16/32 bit register combinations are now supported - Both single mask and single enable bitmap register are supported - Add code to set interrupt priority - Speedup sense and priority configuration code - Allocate data using bootmem, allows intc data structures to be __initdata - Save memory - allocated memory footprint is smaller than intc structures Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'include/asm-sh')
-rw-r--r--include/asm-sh/hw_irq.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/asm-sh/hw_irq.h b/include/asm-sh/hw_irq.h
index 6c759b2b8929..0e6a60304974 100644
--- a/include/asm-sh/hw_irq.h
+++ b/include/asm-sh/hw_irq.h
@@ -75,7 +75,7 @@ struct intc_desc {
75 unsigned int nr_prio_regs; 75 unsigned int nr_prio_regs;
76 struct intc_sense_reg *sense_regs; 76 struct intc_sense_reg *sense_regs;
77 unsigned int nr_sense_regs; 77 unsigned int nr_sense_regs;
78 struct irq_chip chip; 78 char *name;
79}; 79};
80 80
81#define _INTC_ARRAY(a) a, sizeof(a)/sizeof(*a) 81#define _INTC_ARRAY(a) a, sizeof(a)/sizeof(*a)
@@ -86,7 +86,7 @@ struct intc_desc symbol = { \
86 _INTC_ARRAY(priorities), \ 86 _INTC_ARRAY(priorities), \
87 _INTC_ARRAY(mask_regs), _INTC_ARRAY(prio_regs), \ 87 _INTC_ARRAY(mask_regs), _INTC_ARRAY(prio_regs), \
88 _INTC_ARRAY(sense_regs), \ 88 _INTC_ARRAY(sense_regs), \
89 .chip.name = chipname, \ 89 chipname, \
90} 90}
91 91
92void __init register_intc_controller(struct intc_desc *desc); 92void __init register_intc_controller(struct intc_desc *desc);