[PATCH] Fix PXA-27x/3xx interrupts when CONFIG_PXA_HAVE_ISA_IRQS=y
Eric Miao
eric.y.miao at gmail.com
Tue Nov 3 22:20:53 EST 2009
On Wed, Nov 4, 2009 at 10:27 AM, Haojian Zhuang
<haojian.zhuang at gmail.com> wrote:
> On Tue, Nov 3, 2009 at 3:04 PM, Marc Zyngier <maz at misterjones.org> wrote:
>>
>> Commit d2c37068429b29d6549cf3486fc84b836689e122 ([ARM] pxa:
>> initialize default interrupt priority and use ICHP for IRQ handling)
>> broke ISA interrupt support on PXA-27x/3xx.
>>
>> In such a case, PXA_IRQ(0) != 0, and the IRQ number computed from
>> ICHP must be offset by PXA_IRQ(0).
>>
>> Tested on an Arcom Zeus (PXA-270).
>>
>> Signed-off-by: Marc Zyngier <maz at misterjones.org>
>> ---
>> arch/arm/mach-pxa/include/mach/entry-macro.S | 3 +++
>> 1 files changed, 3 insertions(+), 0 deletions(-)
>>
>> diff --git a/arch/arm/mach-pxa/include/mach/entry-macro.S b/arch/arm/mach-pxa/include/mach/entry-macro.S
>> index 2418806..f7eb9d8 100644
>> --- a/arch/arm/mach-pxa/include/mach/entry-macro.S
>> +++ b/arch/arm/mach-pxa/include/mach/entry-macro.S
>> @@ -46,5 +46,8 @@
>> beq 1001f
>> bic \irqstat, \irqstat, #0x80000000
>> mov \irqnr, \irqstat, lsr #16
>> +#ifdef CONFIG_PXA_HAVE_ISA_IRQS
>> + add \irqnr, \irqnr, #(PXA_IRQ(0))
>> +#endif
The #ifdef here might not be necessary since PXA_IRQ() has already
encoded the difference, check arch/arm/mach-pxa/include/mach/irqs.h
>> 1001:
>> .endm
>> --
>> 1.6.0.4
> Hi Marc,
>
> I have a question on this. Do you use CONFIG_PXA_HAVE_ISA_IRQS in
> pxa270? In my patch, I only enable interrupt priority in pxa27x and
> pxa3xx since silicon can support this feature. And this feature isn't
> supported by pxa25x.
>
> I also find that CONFIG_PXA_HAVE_ISA_IRQS is only used in pxa25x. Is
> it right? So I think that we needn't add this into pxa27x and pxa3xx.
> What's your opinion?
>
Haojian,
CONFIG_PXA_HAVE_ISA_IRQS is used on some platforms which emulates
ISA expansion slots so some legacy ISA cards can still be used on pxa
platforms, not necessarily related to pxa25x, could be pxa27x and pxa3xx.
We need to take a look into the patch indeed.
More information about the linux-arm-kernel
mailing list