aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMagnus Damm <damm@opensource.se>2010-02-15 11:40:25 +0000
committerPaul Mundt <lethal@linux-sh.org>2010-02-16 13:38:56 +0900
commitd85429a31790361b9e952be3817134c23b3b758a (patch)
treeb5a5fa7e81345e92c518bf5ff3a81ae8d032df7d
parentvideo: sh_mobile_lcdcfb: Fix panning. (diff)
downloadlinux-dev-d85429a31790361b9e952be3817134c23b3b758a.tar.xz
linux-dev-d85429a31790361b9e952be3817134c23b3b758a.zip
sh: extend INTC with force_disable
Extend the shared INTC code with force_disable support to allow keeping mask bits statically disabled. Needed for SDHI support to mask out unsupported interrupt sources. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
-rw-r--r--drivers/sh/intc.c3
-rw-r--r--include/linux/sh_intc.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/drivers/sh/intc.c b/drivers/sh/intc.c
index 66594eb4477d..1da1edef2221 100644
--- a/drivers/sh/intc.c
+++ b/drivers/sh/intc.c
@@ -851,6 +851,9 @@ void __init register_intc_controller(struct intc_desc *desc)
d->chip.mask_ack = intc_mask_ack;
}
+ /* disable bits matching force_disable before registering irqs */
+ if (desc->force_disable)
+ intc_enable_disable_enum(desc, d, desc->force_disable, 0);
/* disable bits matching force_enable before registering irqs */
if (desc->force_enable)
diff --git a/include/linux/sh_intc.h b/include/linux/sh_intc.h
index 66b4b0c45e71..51d288d8ac88 100644
--- a/include/linux/sh_intc.h
+++ b/include/linux/sh_intc.h
@@ -72,6 +72,7 @@ struct intc_hw_desc {
struct intc_desc {
char *name;
intc_enum force_enable;
+ intc_enum force_disable;
struct intc_hw_desc hw;
};