Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions | Variables
irq_32.c File Reference
#include <linux/kernel_stat.h>
#include <linux/seq_file.h>
#include <linux/export.h>
#include <asm/cacheflush.h>
#include <asm/cpudata.h>
#include <asm/pcic.h>
#include <asm/leon.h>
#include "kernel.h"
#include "irq.h"

Go to the source code of this file.

Functions

unsigned long arch_local_irq_save (void)
 
 EXPORT_SYMBOL (arch_local_irq_save)
 
void arch_local_irq_enable (void)
 
 EXPORT_SYMBOL (arch_local_irq_enable)
 
void arch_local_irq_restore (unsigned long old_psr)
 
 EXPORT_SYMBOL (arch_local_irq_restore)
 
unsigned int irq_alloc (unsigned int real_irq, unsigned int pil)
 
void irq_link (unsigned int irq)
 
void irq_unlink (unsigned int irq)
 
int arch_show_interrupts (struct seq_file *p, int prec)
 
void handler_irq (unsigned int pil, struct pt_regs *regs)
 
void __init init_IRQ (void)
 

Variables

struct sparc_config sparc_config
 
struct irq_bucketirq_map [SUN4D_MAX_IRQ]
 

Function Documentation

void arch_local_irq_enable ( void  )

Definition at line 47 of file irq_32.c.

void arch_local_irq_restore ( unsigned long  old_psr)

Definition at line 62 of file irq_32.c.

unsigned long arch_local_irq_save ( void  )

Definition at line 29 of file irq_32.c.

int arch_show_interrupts ( struct seq_file p,
int  prec 
)

Definition at line 195 of file irq_32.c.

EXPORT_SYMBOL ( arch_local_irq_save  )
EXPORT_SYMBOL ( arch_local_irq_enable  )
EXPORT_SYMBOL ( arch_local_irq_restore  )
void handler_irq ( unsigned int  pil,
struct pt_regs regs 
)

Definition at line 216 of file irq_32.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 337 of file irq_32.c.

unsigned int irq_alloc ( unsigned int  real_irq,
unsigned int  pil 
)

Definition at line 121 of file irq_32.c.

void irq_link ( unsigned int  irq)

Definition at line 155 of file irq_32.c.

void irq_unlink ( unsigned int  irq)

Definition at line 174 of file irq_32.c.

Variable Documentation

Definition at line 116 of file irq_32.c.

Definition at line 27 of file irq_32.c.