#include <linux/irq.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/platform_device.h>
#include <asm/m32r.h>
#include <asm/io.h>
Go to the source code of this file.
#define irq2lanpldirq |
( |
|
x | ) |
((x) - OPSPUT_LAN_PLD_IRQ_BASE) |
#define irq2lcdpldirq |
( |
|
x | ) |
((x) - OPSPUT_LCD_PLD_IRQ_BASE) |
#define irq2pldirq |
( |
|
x | ) |
((x) - OPSPUT_PLD_IRQ_BASE) |
#define lanpldirq2port |
( |
|
x | ) |
|
Value:
(((
x) - 1) *
sizeof(
unsigned short)))
Definition at line 142 of file setup.c.
#define lcdpldirq2port |
( |
|
x | ) |
|
Value:
(((
x) - 1) *
sizeof(
unsigned short)))
Definition at line 202 of file setup.c.
Value:
(((
x) - 1) *
sizeof(
unsigned short)))
Definition at line 78 of file setup.c.
The hexagon core comes with a first-level interrupt controller with 32 total possible interrupts. When the core is embedded into different systems/platforms, it is typically wrapped by macro cells that provide one or more second-level interrupt controllers that are cascaded into one or more of the first-level interrupts handled here. The precise wiring of these other irqs varies from platform to platform, and are set up & configured in the platform-specific files.
The first-level interrupt controller is wrapped by the VM, which virtualizes the interrupt controller for us. It provides a very simple, fast & efficient API, and so the fasteoi handler is appropriate for this case.
Definition at line 257 of file setup.c.