diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-07-23 20:36:02 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-07-23 20:36:02 -0400 |
commit | 3645f0cd96fbf72c614673c5f4b1a8675f82a379 (patch) | |
tree | 84539c44e461eb9451cc0320dec70eedc9724796 /arch/arm/kernel | |
parent | f1d2c07d331f717da79a42952be7dc1c0d35f846 (diff) | |
parent | c7b0807b9d4faddd87a75a5acb079e5dbfedd211 (diff) |
Merge tag 'irq' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull arm-soc sparse IRQ conversion from Arnd Bergmann:
"The I.MX platform is getting converted to use sparse IRQs. We are
doing this for all platforms over time, because this is one of the
requirements for building a multiplatform kernel, and generally a good
idea."
* tag 'irq' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
ARM: imx: select USE_OF
ARM: imx: Fix build error due to missing irqs.h include
ARM: imx: enable SPARSE_IRQ for imx platform
ARM: fiq: change FIQ_START to a variable
tty: serial: imx: remove the use of MXC_INTERNAL_IRQS
ARM: imx: remove unneeded mach/irq.h inclusion
i2c: imx: remove unneeded mach/irqs.h inclusion
ARM: imx: add a legacy irqdomain for mx31ads
ARM: imx: add a legacy irqdomain for 3ds_debugboard
ARM: imx: pass gpio than irq number into mxc_expio_init
ARM: imx: leave irq_base of wm8350_platform_data uninitialized
dma: ipu: remove the use of ipu_platform_data
ARM: imx: move irq_domain_add_legacy call into avic driver
ARM: imx: move irq_domain_add_legacy call into tzic driver
gpio/mxc: move irq_domain_add_legacy call into gpio driver
ARM: imx: eliminate macro IRQ_GPIOx()
ARM: imx: eliminate macro IOMUX_TO_IRQ()
ARM: imx: eliminate macro IMX_GPIO_TO_IRQ()
Diffstat (limited to 'arch/arm/kernel')
-rw-r--r-- | arch/arm/kernel/fiq.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/arm/kernel/fiq.c b/arch/arm/kernel/fiq.c index c32f8456aa09..2adda11f712f 100644 --- a/arch/arm/kernel/fiq.c +++ b/arch/arm/kernel/fiq.c | |||
@@ -122,14 +122,16 @@ void release_fiq(struct fiq_handler *f) | |||
122 | while (current_fiq->fiq_op(current_fiq->dev_id, 0)); | 122 | while (current_fiq->fiq_op(current_fiq->dev_id, 0)); |
123 | } | 123 | } |
124 | 124 | ||
125 | static int fiq_start; | ||
126 | |||
125 | void enable_fiq(int fiq) | 127 | void enable_fiq(int fiq) |
126 | { | 128 | { |
127 | enable_irq(fiq + FIQ_START); | 129 | enable_irq(fiq + fiq_start); |
128 | } | 130 | } |
129 | 131 | ||
130 | void disable_fiq(int fiq) | 132 | void disable_fiq(int fiq) |
131 | { | 133 | { |
132 | disable_irq(fiq + FIQ_START); | 134 | disable_irq(fiq + fiq_start); |
133 | } | 135 | } |
134 | 136 | ||
135 | EXPORT_SYMBOL(set_fiq_handler); | 137 | EXPORT_SYMBOL(set_fiq_handler); |
@@ -140,7 +142,8 @@ EXPORT_SYMBOL(release_fiq); | |||
140 | EXPORT_SYMBOL(enable_fiq); | 142 | EXPORT_SYMBOL(enable_fiq); |
141 | EXPORT_SYMBOL(disable_fiq); | 143 | EXPORT_SYMBOL(disable_fiq); |
142 | 144 | ||
143 | void __init init_FIQ(void) | 145 | void __init init_FIQ(int start) |
144 | { | 146 | { |
145 | no_fiq_insn = *(unsigned long *)0xffff001c; | 147 | no_fiq_insn = *(unsigned long *)0xffff001c; |
148 | fiq_start = start; | ||
146 | } | 149 | } |