aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sh_intc.h
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2010-04-13 01:43:03 -0400
committerPaul Mundt <lethal@linux-sh.org>2010-04-13 01:43:03 -0400
commit43b8774dc409ea5d9369b978e2e7bc79289f0522 (patch)
tree13aa346ff8f30786e8ce3ccfdd8341d182ce4c87 /include/linux/sh_intc.h
parent12129fea50edcd696a9556523b058d6c445f21d8 (diff)
sh: intc: userimask support.
This adds support for hardware-assisted userspace irq masking for special priority levels. Due to the SR.IMASK interactivity, only some platforms implement this in hardware (including but not limited to SH-4A interrupt controllers, and ARM-based SH-Mobile CPUs). Each CPU needs to wire this up on its own, for now only SH7786 is wired up as an example. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'include/linux/sh_intc.h')
-rw-r--r--include/linux/sh_intc.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/sh_intc.h b/include/linux/sh_intc.h
index 01d8168c5a1b..f0e8cca199c7 100644
--- a/include/linux/sh_intc.h
+++ b/include/linux/sh_intc.h
@@ -99,6 +99,15 @@ struct intc_desc symbol __initdata = { \
99int __init register_intc_controller(struct intc_desc *desc); 99int __init register_intc_controller(struct intc_desc *desc);
100int intc_set_priority(unsigned int irq, unsigned int prio); 100int intc_set_priority(unsigned int irq, unsigned int prio);
101 101
102#ifdef CONFIG_INTC_USERIMASK
103int register_intc_userimask(unsigned long addr);
104#else
105static inline int register_intc_userimask(unsigned long addr)
106{
107 return 0;
108}
109#endif
110
102int reserve_irq_vector(unsigned int irq); 111int reserve_irq_vector(unsigned int irq);
103void reserve_irq_legacy(void); 112void reserve_irq_legacy(void);
104 113