Using DMA interrupt on MPC8313

Scott Wood scottwood at freescale.com
Tue Jun 17 03:32:58 EST 2008


Ron Madrid wrote:
> Here's my code.  There are a few other things that happen but they are inconsequential to this
> problem.  I'm sure that the request_irq call is right, especially since it works if the fsldma
> drivers are builtin to the kernel.  Also, the irq number 71 comes from the reference manual for
> them MPC8313.  It is the internal interrupt for the DMA.  I'll do some more testing in a little
> while to try to determine the cause of the error in request_irq.

You cannot pass hardware IRQ numbers directly to request_irq() -- it has 
no idea which IRQ controller you're referring to (even if there happens 
to be only one on your board).

You should get the IRQ from the device tree, using 
irq_of_parse_and_map() on the device node for the DMA channel (see the 
mpc8377mds device tree for an example DMA node).

-Scott



More information about the Linuxppc-dev mailing list