Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions | Variables
irq.c File Reference
#include <linux/kernel.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/kernel_stat.h>
#include <linux/proc_fs.h>
#include <linux/mm.h>
#include <linux/random.h>
#include <linux/sched.h>
#include <linux/seq_file.h>
#include <linux/kallsyms.h>
#include <linux/kgdb.h>
#include <linux/ftrace.h>
#include <linux/atomic.h>
#include <asm/uaccess.h>

Go to the source code of this file.

Functions

int allocate_irqno (void)
 
void __init alloc_legacy_irqno (void)
 
void free_irqno (unsigned int irq)
 
void ack_bad_irq (unsigned int irq)
 
int arch_show_interrupts (struct seq_file *p, int prec)
 
asmlinkage void spurious_interrupt (void)
 
void __init init_IRQ (void)
 
void __irq_entry do_IRQ (unsigned int irq)
 

Variables

atomic_t irq_err_count
 

Function Documentation

void ack_bad_irq ( unsigned int  irq)

Definition at line 74 of file irq.c.

void __init alloc_legacy_irqno ( void  )

Definition at line 55 of file irq.c.

int allocate_irqno ( void  )

Definition at line 34 of file irq.c.

int arch_show_interrupts ( struct seq_file p,
int  prec 
)

Definition at line 82 of file irq.c.

void __irq_entry do_IRQ ( unsigned int  irq)

Definition at line 141 of file irq.c.

void free_irqno ( unsigned int  irq)

Definition at line 63 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 93 of file irq.c.

asmlinkage void spurious_interrupt ( void  )

Definition at line 88 of file irq.c.

Variable Documentation

atomic_t irq_err_count

Definition at line 80 of file irq.c.