[PATCH] irq: bcm2835: Re-implement the hardware IRQ handler.

Simon Arlott simon at fire.lp0.eu
Wed Sep 25 04:33:12 PDT 2013

On Sat, September 21, 2013 09:14, Craig McGeachie wrote:
>  * Restore the flow of control that re-reads the base pending register
>    after handling any interrupt. The current version handles all
>    interrupts found in a GPU pending register before re-reading the
>    base pending register. In the original Broadcom assembly code, there
>    appear to be defect tracking numbers next to code inserted to create
>    this behaviour.

This was by design so that continuous interrupts in a bank did not impact
progress of interrupts in other bank. If there are defects with this
strategy, then check that they do not exist in your interrupt handlers
instead of the interrupt controller itself. Unless there is a real bug
in the interrupt controller, you're decreasing the performance by
re-reading the base pending register every time.

Simon Arlott

More information about the linux-rpi-kernel mailing list