ARM interrupts fixes
sam at errno.com
Thu Sep 4 15:13:04 UTC 2008
Rafal Jaworowski wrote:
> Please review the following changes around interrupts handling in ARM. We
> already started discussing these items with Olivier some time ago:
> 1. http://people.freebsd.org/~raj/patches/arm/intr-fixes.diff
> At the moment nexus_setup_intr() attempts to set up a number of IRQs in one
> take, calling arm_setup_irqhandler() in loop. This is bogus, as there's just
> one cookie given from the caller and it is overwritten in each iteration so
> that only the last handler's cookie value prevails...
> This patch removes such behaviour, however there's one [mis]user of the old
> approach i.e. the IXP425 qmgr, which needs adjustments too, see p.2.
> Apart from style fixes, another problem which is corrected in this patch is
> the unmasking the IRQ source in the PIC after the last handler has been
> removed from list.
> 2. http://people.freebsd.org/~raj/patches/arm/sys-arm-xscale-ixp425.diff
> This splits handling of the two QMGR interrupts so they are explicitly
> managed, as typically done in cases when there are a number of physical IRQs
> used by one driver. I don't have IXP425 hardware and was able to only
> compile-test it, so any help with real h/w testing would be appreciated.
> Let me know your comments.
The qmgr stuff looks fine; don't have time right now to look carefully
at the other patch.
More information about the freebsd-arm