RTEMS
6.3
Toggle main menu visibility
Loading...
Searching...
No Matches
bsps
bfin
include
bsp
interrupt.h
Go to the documentation of this file.
1
23
24
#ifndef _BFIN_INTERRUPT_H_
25
#define _BFIN_INTERRUPT_H_
26
27
28
#ifdef __cplusplus
29
extern
"C"
{
30
#endif
31
34
typedef
enum
{
35
IRQ_PLL_WAKEUP_INTERRUPT,
/* 0 */
36
IRQ_DMA_ERROR_0,
/* 1 */
37
IRQ_DMAR0_BLOCK_INTERRUPT,
/* 2 */
38
IRQ_DMAR1_BLOCK_INTERRUPT,
/* 3 */
39
IRQ_DMAR0_OVERFLOW_ERROR,
/* 4 */
40
IRQ_DMAR1_OVERFLOW_ERROR,
/* 5 */
41
IRQ_PPI_STATUS,
/* 6 */
42
IRQ_MAC_STATUS,
/* 7 */
43
IRQ_SPORT0_STATUS,
/* 8 */
44
IRQ_SPORT1_STATUS,
/* 9 */
45
IRQ_RESERVED_10,
/* 10 */
46
IRQ_RESERVED_11,
/* 11 */
47
IRQ_UART0_STATUS,
/* 12 */
48
IRQ_UART1_STATUS,
/* 13 */
49
IRQ_REAL_TIME_CLOCK,
/* 14 */
50
IRQ_DMA0_PPI_NFC,
/* 15 */
51
IRQ_DMA3_SPORT0_RX,
/* 16 */
52
IRQ_DMA4_SPORT0_TX,
/* 17 */
53
IRQ_DMA5_SPORT1_RX,
/* 18 */
54
IRQ_DMA6_SPORT1_TX,
/* 19 */
55
IRQ_TWI_INTERRUPT,
/* 20 */
56
IRQ_DMA7_SPI,
/* 21 */
57
IRQ_DMA8_UART0_RX,
/* 22 */
58
IRQ_DMA9_UART0_TX,
/* 23 */
59
IRQ_DMA10_UART1_RX,
/* 24 */
60
IRQ_DMA11_UART1_TX,
/* 25 */
61
IRQ_OTP,
/* 26 */
62
IRQ_GP_COUNTER,
/* 27 */
63
IRQ_DMA1_MAC_RX_HOSTDP,
/* 28 */
64
IRQ_PORT_H_INTERRUPT_A,
/* 29 */
65
IRQ_DMA2_MAC_TX_NFC,
/* 30 */
66
IRQ_PORT_H_INTERRUPT_B,
/* 31 */
67
SIC_ISR0_MAX,
/* 32 ***/
68
IRQ_TIMER0 = SIC_ISR0_MAX,
/* 32 */
69
IRQ_TIMER1,
/* 33 */
70
IRQ_TIMER2,
/* 34 */
71
IRQ_TIMER3,
/* 35 */
72
IRQ_TIMER4,
/* 36 */
73
IRQ_TIMER5,
/* 37 */
74
IRQ_TIMER6,
/* 38 */
75
IRQ_TIMER7,
/* 39 */
76
IRQ_PORT_G_INTERRUPT_A,
/* 40 */
77
IRQ_PORT_G_INTERRUPT_B,
/* 41 */
78
IRQ_MDMA0_STREAM_0_INTERRUPT,
/* 42 */
79
IRQ_MDMA1_STREAM_0_INTERRUPT,
/* 43 */
80
IRQ_SOFTWARE_WATCHDOG_INTERRUPT,
/* 44 */
81
IRQ_PORT_F_INTERRUPT_A,
/* 45 */
82
IRQ_PORT_F_INTERRUPT_B,
/* 46 */
83
IRQ_SPI_STATUS,
/* 47 */
84
IRQ_NFC_STATUS,
/* 48 */
85
IRQ_HOSTDP_STATUS,
/* 49 */
86
IRQ_HOREAD_DONE_INTERRUPT,
/* 50 */
87
IRQ_RESERVED_19,
/* 51 */
88
IRQ_USB_INT0_INTERRUPT,
/* 52 */
89
IRQ_USB_INT1_INTERRUPT,
/* 53 */
90
IRQ_USB_INT2_INTERRUPT,
/* 54 */
91
IRQ_USB_DMAINT,
/* 55 */
92
IRQ_MAX,
/* 56 */
93
}
e_isr_t
;
94
95
96
97
98
/* source is the source to the SIC (the bit number in SIC_ISR). isr is
99
the function that will be called when the interrupt is active. */
100
typedef
struct
bfin_isr_s
{
101
#if INTERRUPT_USE_TABLE
102
e_isr_t
source;
103
void (*pFunc)(
void
*arg);
104
void
*pArg;
105
int
priority;
106
#else
107
int
source;
108
void (*isr)(
void
*arg);
109
void
*_arg;
110
/* the following are for internal use only */
111
uint32_t mask0;
112
uint32_t mask1;
113
uint32_t vector;
114
struct
bfin_isr_s
*next;
115
#endif
116
} bfin_isr_t;
117
123
rtems_status_code
bfin_interrupt_register
(bfin_isr_t *isr);
124
129
rtems_status_code
bfin_interrupt_unregister
(bfin_isr_t *isr);
130
136
void
bfin_interrupt_init
(
void
);
137
138
139
#ifdef __cplusplus
140
}
141
#endif
142
143
#endif
/* _BFIN_INTERRUPT_H_ */
144
bfin_interrupt_init
void bfin_interrupt_init(void)
Definition
interrupt.c:50
bfin_interrupt_register
rtems_status_code bfin_interrupt_register(bfin_isr_t *isr)
Definition
interrupt.c:98
e_isr_t
e_isr_t
Definition
interrupt.h:34
bfin_interrupt_unregister
rtems_status_code bfin_interrupt_unregister(bfin_isr_t *isr)
Definition
interrupt.c:126
rtems_status_code
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
Definition
status.h:85
bfin_isr_s
Definition
interrupt.h:100
Generated by
1.18.0