Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
vic.h File Reference
#include <linux/compiler.h>
#include <linux/types.h>

Go to the source code of this file.

Macros

#define VIC_IRQ_STATUS   0x00
 
#define VIC_FIQ_STATUS   0x04
 
#define VIC_RAW_STATUS   0x08
 
#define VIC_INT_SELECT   0x0c /* 1 = FIQ, 0 = IRQ */
 
#define VIC_INT_ENABLE   0x10 /* 1 = enable, 0 = disable */
 
#define VIC_INT_ENABLE_CLEAR   0x14
 
#define VIC_INT_SOFT   0x18
 
#define VIC_INT_SOFT_CLEAR   0x1c
 
#define VIC_PROTECT   0x20
 
#define VIC_PL190_VECT_ADDR   0x30 /* PL190 only */
 
#define VIC_PL190_DEF_VECT_ADDR   0x34 /* PL190 only */
 
#define VIC_VECT_ADDR0   0x100 /* 0 to 15 (0..31 PL192) */
 
#define VIC_VECT_CNTL0   0x200 /* 0 to 15 (0..31 PL192) */
 
#define VIC_ITCR   0x300 /* VIC test control register */
 
#define VIC_VECT_CNTL_ENABLE   (1 << 5)
 
#define VIC_PL192_VECT_ADDR   0xF00
 

Functions

void __vic_init (void __iomem *base, unsigned int irq_start, u32 vic_sources, u32 resume_sources, struct device_node *node)
 
void vic_init (void __iomem *base, unsigned int irq_start, u32 vic_sources, u32 resume_sources)
 
int vic_of_init (struct device_node *node, struct device_node *parent)
 
void vic_handle_irq (struct pt_regs *regs)
 

Macro Definition Documentation

#define VIC_FIQ_STATUS   0x04

Definition at line 24 of file vic.h.

#define VIC_INT_ENABLE   0x10 /* 1 = enable, 0 = disable */

Definition at line 27 of file vic.h.

#define VIC_INT_ENABLE_CLEAR   0x14

Definition at line 28 of file vic.h.

#define VIC_INT_SELECT   0x0c /* 1 = FIQ, 0 = IRQ */

Definition at line 26 of file vic.h.

#define VIC_INT_SOFT   0x18

Definition at line 29 of file vic.h.

#define VIC_INT_SOFT_CLEAR   0x1c

Definition at line 30 of file vic.h.

#define VIC_IRQ_STATUS   0x00

Definition at line 23 of file vic.h.

#define VIC_ITCR   0x300 /* VIC test control register */

Definition at line 37 of file vic.h.

#define VIC_PL190_DEF_VECT_ADDR   0x34 /* PL190 only */

Definition at line 33 of file vic.h.

#define VIC_PL190_VECT_ADDR   0x30 /* PL190 only */

Definition at line 32 of file vic.h.

#define VIC_PL192_VECT_ADDR   0xF00

Definition at line 41 of file vic.h.

#define VIC_PROTECT   0x20

Definition at line 31 of file vic.h.

#define VIC_RAW_STATUS   0x08

Definition at line 25 of file vic.h.

#define VIC_VECT_ADDR0   0x100 /* 0 to 15 (0..31 PL192) */

Definition at line 35 of file vic.h.

#define VIC_VECT_CNTL0   0x200 /* 0 to 15 (0..31 PL192) */

Definition at line 36 of file vic.h.

#define VIC_VECT_CNTL_ENABLE   (1 << 5)

Definition at line 39 of file vic.h.

Function Documentation

void __vic_init ( void __iomem base,
unsigned int  irq_start,
u32  vic_sources,
u32  resume_sources,
struct device_node node 
)

Definition at line 353 of file vic.c.

void vic_handle_irq ( struct pt_regs regs)

Definition at line 458 of file vic.c.

void vic_init ( void __iomem base,
unsigned int  irq_start,
u32  vic_sources,
u32  resume_sources 
)

vic_init() - initialise a vectored interrupt controller : iomem base address : starting interrupt number, must be muliple of 32 : bitmask of interrupt sources to allow : bitmask of interrupt sources to allow for resume

Definition at line 400 of file vic.c.

int vic_of_init ( struct device_node node,
struct device_node parent 
)