Subject: Re: Using DMA interrupt on MPC8313

From: Scott Wood <[email-masked]>
Date: Mon, 16 Jun 2008 12:32:58 -0500

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