bcm2835: DMA Channels and interrupts

Martin Sperl kernel at martin.sperl.org
Mon Sep 14 07:50:56 PDT 2015

During a discussion with regards to the downstream kernel (and a bug found there)
we came to realize that the the DMA channels 11 to 14 share a common interrupt line.
(See https://github.com/raspberrypi/linux/commit/d0e9b20cb2bb59d573df46bf06bbf84106024fd2)

On top it seems (by looking at the broadcom Graphics driver stack header-files) as if
DMA15 does not even have a shared interrupt - I guess it only triggers with the 
“catch all" DMA irq <1 28>.

So the question is how we want to handle this situation in the upstream kernel?

Should we just use the shared interrupt (<1 28>) and write our mini-interrupt-controller
to get all DMA channels handled correctly?

Or should we use shared IRQs and ignore DMA15 (which is not in the channel-mask anyway)?


More information about the linux-rpi-kernel mailing list