Questions on interrupt vector assignment on MPC8641D

Anderson, Trevor tanderson at
Wed Sep 22 07:37:15 EST 2010

IRQ assignments for MPC8641D are "virtual", meaning "made up" and quite difficult to determine by looking through code.
But I believe the plan goes something like this:

    0           No interrupt
  1 - 15        External interrupts (only 1..12 would be used)
 16 - 127       Internal interrupts - see Table 9-2 of 8641D ref man,
            Add 15 to the numbers shown
128 - 255       Yours, or your BSP's, to do with as you like
256 - 511       Message Signaled Interrupts

If you look in the sample device trees for 8641 cards you'll see that
the interrupt values cited there for various devices match the 16..127
group above.

> -----Original Message-----
> From: at [mailto:linuxppc-dev-
> at] On Behalf Of david.hagood at
> Sent: Tuesday, September 21, 2010 7:12 AM
> To: linuxppc-dev at
> Subject: Questions on interrupt vector assignment on MPC8641D
> I'm new to developing on the PPC (most of my experience is on x86), and I
> have a couple of questions about mapping of interrupts on the PPC,
> specifically on the Freescale 8641D embedded CPU.
> 1) How does one allocate interrupt vectors for the embedded devices, such
> as the MPIC? All the kernel how-tos are really targeting the x86 and PCI,
> so I've been unable to find a good document on "that which is not an X86".
> 2) Are there any good guides to programming the PPC generally, and the
> MPC8641 specifically, that I can go read to answer my other questions?
> I'm trying to write a driver to map the 8641D's PCIe controllers *as
> endpoints* into something frobablbe from user space - to allow setting the
> BARs and outbound address translation units via sysfs files, and to allow
> mapping of inbound interrupts to sysfs "doorbell"-style files. If I can
> get it worked out I want to submit it back to the kernel for general
> distribution.
> If anybody has any insights, I'd greatly appreciate it if you'd copy my
> work email (david.hagood at as well (I am using my personal
> email as work insisted upon adding a one paragraph "wart" to all outbound
> email that isn't acceptable for a list like this.)
> Also, if anybody out there has experience with the 8641D PEX's in endpoint
> mode and wouldn't mind answering a couple of questions about programming
> the OWBARs, I'd be greatly obliged.
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev at

This e-mail and any files transmitted with it are proprietary and intended solely for the use of the individual or entity to whom they are addressed. If you have reason to believe that you have received this e-mail in error, please notify the sender and destroy this email and any attached files. Please note that any views or opinions presented in this e-mail are solely those of the author and do not necessarily represent those of the Curtiss-Wright Corporation or any of its subsidiaries.  Documents attached hereto may contain technology subject to government export regulations. Recipient is solely responsible for ensuring that any re-export, transfer or disclosure of this information is in accordance with applicable government export regulations.  The recipient should check this e-mail and any attachments for the presence of viruses. Curtiss-Wright Corporation and its subsidiaries accept no liability for any damage caused by any virus transmitted by this e-mail.

More information about the Linuxppc-dev mailing list