OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [freertos-6.1.1/] [Demo/] [ARM7_AT91FR40008_GCC/] [aic.h] - Blame information for rev 577

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 577 jeremybenn
//*----------------------------------------------------------------------------
2
//*         ATMEL Microcontroller Software Support  -  ROUSSET  -
3
//*----------------------------------------------------------------------------
4
//* The software is delivered "AS IS" without warranty or condition of any
5
//* kind, either express, implied or statutory. This includes without
6
//* limitation any warranty or condition with respect to merchantability or
7
//* fitness for any particular purpose, or against the infringements of
8
//* intellectual property rights of others.
9
//*----------------------------------------------------------------------------
10
//* File Name           : aic.h
11
//* Object              : Advanced Interrupt Controller Definition File.
12
//*
13
//* 1.0 01/04/00 JCZ    : Creation
14
//*----------------------------------------------------------------------------
15
 
16
#ifndef aic_h
17
#define aic_h
18
 
19
//#include    "periph/stdc/std_c.h"
20
 
21
/*-----------------------------------------*/
22
/* AIC User Interface Structure Definition */
23
/*-----------------------------------------*/
24
 
25
typedef struct
26
{
27
    at91_reg        AIC_SMR[32] ;       /* Source Mode Register */
28
    at91_reg        AIC_SVR[32] ;       /* Source Vector Register */
29
    at91_reg        AIC_IVR ;           /* IRQ Vector Register */
30
    at91_reg        AIC_FVR ;           /* FIQ Vector Register */
31
    at91_reg        AIC_ISR ;           /* Interrupt Status Register */
32
    at91_reg        AIC_IPR ;           /* Interrupt Pending Register */
33
    at91_reg        AIC_IMR ;           /* Interrupt Mask Register */
34
    at91_reg        AIC_CISR ;          /* Core Interrupt Status Register */
35
    at91_reg        reserved0 ;
36
    at91_reg        reserved1 ;
37
    at91_reg        AIC_IECR ;          /* Interrupt Enable Command Register */
38
    at91_reg        AIC_IDCR ;          /* Interrupt Disable Command Register */
39
    at91_reg        AIC_ICCR ;          /* Interrupt Clear Command Register */
40
    at91_reg        AIC_ISCR ;          /* Interrupt Set Command Register */
41
    at91_reg        AIC_EOICR ;         /* End of Interrupt Command Register */
42
    at91_reg        AIC_SPU ;           /* Spurious Vector Register */
43
} StructAIC ;
44
 
45
/*--------------------------------------------*/
46
/* AIC_SMR[]: Interrupt Source Mode Registers */
47
/*--------------------------------------------*/
48
 
49
#define AIC_PRIOR                       0x07    /* Priority */
50
 
51
#define AIC_SRCTYPE                     0x60    /* Source Type Definition */
52
 
53
/* Internal Interrupts */
54
#define AIC_SRCTYPE_INT_LEVEL_SENSITIVE 0x00    /* Level Sensitive */
55
#define AIC_SRCTYPE_INT_EDGE_TRIGGERED  0x20    /* Edge Triggered */
56
 
57
/* External Interrupts */
58
#define AIC_SRCTYPE_EXT_LOW_LEVEL       0x00    /* Low Level */
59
#define AIC_SRCTYPE_EXT_NEGATIVE_EDGE   0x20    /* Negative Edge */
60
#define AIC_SRCTYPE_EXT_HIGH_LEVEL      0x40    /* High Level */
61
#define AIC_SRCTYPE_EXT_POSITIVE_EDGE   0x60    /* Positive Edge */
62
 
63
/*------------------------------------*/
64
/* AIC_ISR: Interrupt Status Register */
65
/*------------------------------------*/
66
 
67
#define AIC_IRQID                       0x1F    /* Current source interrupt */
68
 
69
/*------------------------------------------*/
70
/* AIC_CISR: Interrupt Core Status Register */
71
/*------------------------------------------*/
72
 
73
#define AIC_NFIQ                        0x01    /* Core FIQ Status */
74
#define AIC_NIRQ                        0x02    /* Core IRQ Status */
75
 
76
/*-------------------------------*/
77
/* Advanced Interrupt Controller */
78
/*-------------------------------*/
79
#define AIC_BASE                        ((StructAIC *)0xFFFFF000)
80
 
81
#endif /* aic_h */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.