I don't see a "dma" node in the mpc8377mds.dts (2.6.25). I found one in mpc8610_hpcd.dts and modeled it after that.
[EMAIL PROTECTED] { #address-cells = <1>; #size-cells = <1>; compatible = "fsl,elo-dma"; cell-index = <0>; reg = <0x82a8 0x4>; /* DMA general status register */ ranges = <0x0 0x8100 0x200>; [EMAIL PROTECTED] { compatible = "fsl,elo-dma-channel"; cell-index = <0>; reg = <0x0 0x80>; interrupt-parent = <&ipic>; interrupts = <71 0x8>; }; [EMAIL PROTECTED] { compatible = "fsl,elo-dma-channel"; cell-index = <1>; reg = <0x80 0x80>; interrupt-parent = <&ipic>; interrupts = <71 0x8>; }; [EMAIL PROTECTED] { compatible = "fsl,elo-dma-channel"; cell-index = <2>; reg = <0x100 0x80>; interrupt-parent = <&ipic>; interrupts = <71 0x8>; }; [EMAIL PROTECTED] { compatible = "fsl,elo-dma-channel"; cell-index = <3>; reg = <0x180 0x80>; interrupt-parent = <&ipic>; interrupts = <71 0x8>; }; }; --- Scott Wood <[EMAIL PROTECTED]> wrote: > 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 > _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev