QUERY: How to handle sharing of interrupt between different peripherals.

Shiraz HASHIM shiraz.hashim at st.com
Mon Mar 15 09:53:18 EDT 2010


On 3/15/2010 4:41 PM, Russell King - ARM Linux wrote:
> We do have a system for having a multi-level approach to interrupt decoding.
> Since you have a register which allows you to identify the source of the
> interrupt, I'd recommend for maximum system performance that you use it.
> 
> Shared interrupts have the disadvantage that you need to run each handler
> every time a device on the shared interrupt signals, which can be very
> wasteful both in terms of instruction cache lines and IO accesses.
> 
> Search arch/arm/ for set_irq_chained_handler to find examples of who to
> deal with multi-level handling of IRQs.

OK. So we need to create virtual irqs (defined by s/w), for shared irqs
which are mapped on to the real irq (defined by the H/W) through
set_irq_chained_handler, right?
thanks for your help.

regards
Shiraz



More information about the linux-arm-kernel mailing list