This paper describes the API Linux uses to interact with a host platform’s interrupt controller hardware. This knowledge is essential when porting Linux to a custom platform: without a thorough understanding of how interrupts are incorporated into the Linux kernel, a functional embedded Linux system is not possible.

To make the descriptions clearer, this article includes source code taken from the Linux kernel that runs on the Sega Dreamcast gaming console. This platform utilizes a Hitachi SH-4 microprocessor, which is well documented, embedded-friendly, and considerably less complicated than other chips commonly associated with Linux. The author is a member of the Linux Dreamcast development team, and has published several papers related to embedded Linux on that and other platforms.