Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
irq.c File Reference
#include <linux/interrupt.h>
#include <linux/kernel_stat.h>
#include <linux/seq_file.h>
#include <asm/io.h>

Go to the source code of this file.

Macros

#define SCORE_PIC   ((u32 __iomem __force *)0x95F50000)
 
#define INT_PNDL   0
 
#define INT_PNDH   1
 
#define INT_PRIORITY_M   2
 
#define INT_PRIORITY_SG0   4
 
#define INT_PRIORITY_SG1   5
 
#define INT_PRIORITY_SG2   6
 
#define INT_PRIORITY_SG3   7
 
#define INT_MASKL   8
 
#define INT_MASKH   9
 

Functions

asmlinkage void do_IRQ (int irq)
 
void __init init_IRQ (void)
 

Variables

struct irq_chip score_irq_chip
 

Macro Definition Documentation

#define INT_MASKH   9

Definition at line 43 of file irq.c.

#define INT_MASKL   8

Definition at line 42 of file irq.c.

#define INT_PNDH   1

Definition at line 36 of file irq.c.

#define INT_PNDL   0

Definition at line 35 of file irq.c.

#define INT_PRIORITY_M   2

Definition at line 37 of file irq.c.

#define INT_PRIORITY_SG0   4

Definition at line 38 of file irq.c.

#define INT_PRIORITY_SG1   5

Definition at line 39 of file irq.c.

#define INT_PRIORITY_SG2   6

Definition at line 40 of file irq.c.

#define INT_PRIORITY_SG3   7

Definition at line 41 of file irq.c.

#define SCORE_PIC   ((u32 __iomem __force *)0x95F50000)

Definition at line 33 of file irq.c.

Function Documentation

asmlinkage void do_IRQ ( int  irq)

Definition at line 48 of file irq.c.

void __init init_IRQ ( void  )

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 89 of file irq.c.

Variable Documentation

struct irq_chip score_irq_chip
Initial value:
= {
.name = "Score7-level",
.irq_mask = score_mask,
.irq_mask_ack = score_mask,
.irq_unmask = score_unmask,
}

Definition at line 79 of file irq.c.