-
-
Notifications
You must be signed in to change notification settings - Fork 13
/
ivect.h
201 lines (192 loc) · 8.22 KB
/
ivect.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
#ifndef _IVECT_H
#define _IVECT_H
/***********************************************************************/
/* 7055/7058 vectors; these are almost identical accross all 7055/7058 variants.
* Only differences are maybe some of the ATU* vector names
*
*/
/***********************************************************************/
/* (c) copyright fenugrec 2016
* GPLv3
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#define ISR_attrib __attribute__ ((interrupt_handler))
/** Define vector number for each */
#define IVTN_PowerON_Reset_PC (0x00000000 / 4)
#define IVTN_POR_SP (0x00000004 / 4)
#define IVTN_Manual_Reset_PC (0x00000008 / 4)
#define IVTN_MR_SP (0x0000000C / 4)
#define IVTN_INT_Illegal_code (0x00000010 / 4)
#define IVTN_INT_Illegal_slot (0x00000018 / 4)
#define IVTN_INT_CPU_Address (0x00000024 / 4)
#define IVTN_INT_DMAC_Address (0x00000028 / 4)
#define IVTN_INT_NMI (0x0000002C / 4)
#define IVTN_INT_User_Break (0x00000030 / 4)
#define IVTN_INT_FPU (0x00000034 / 4)
#define IVTN_INT_HUDI (0x00000038 / 4)
#define IVTN_INT_TRAPA32 (0x00000080 / 4)
#define IVTN_INT_TRAPA33 (0x00000084 / 4)
#define IVTN_INT_TRAPA34 (0x00000088 / 4)
#define IVTN_INT_TRAPA35 (0x0000008c / 4)
#define IVTN_INT_TRAPA36 (0x00000090 / 4)
#define IVTN_INT_TRAPA37 (0x00000094 / 4)
#define IVTN_INT_TRAPA38 (0x00000098 / 4)
#define IVTN_INT_TRAPA39 (0x0000009c / 4)
#define IVTN_INT_TRAPA40 (0x000000a0 / 4)
#define IVTN_INT_TRAPA41 (0x000000a4 / 4)
#define IVTN_INT_TRAPA42 (0x000000a8 / 4)
#define IVTN_INT_TRAPA43 (0x000000ac / 4)
#define IVTN_INT_TRAPA44 (0x000000b0 / 4)
#define IVTN_INT_TRAPA45 (0x000000b4 / 4)
#define IVTN_INT_TRAPA46 (0x000000b8 / 4)
#define IVTN_INT_TRAPA47 (0x000000bc / 4)
#define IVTN_INT_TRAPA48 (0x000000c0 / 4)
#define IVTN_INT_TRAPA49 (0x000000c4 / 4)
#define IVTN_INT_TRAPA50 (0x000000c8 / 4)
#define IVTN_INT_TRAPA51 (0x000000cc / 4)
#define IVTN_INT_TRAPA52 (0x000000d0 / 4)
#define IVTN_INT_TRAPA53 (0x000000d4 / 4)
#define IVTN_INT_TRAPA54 (0x000000d8 / 4)
#define IVTN_INT_TRAPA55 (0x000000dc / 4)
#define IVTN_INT_TRAPA56 (0x000000e0 / 4)
#define IVTN_INT_TRAPA57 (0x000000e4 / 4)
#define IVTN_INT_TRAPA58 (0x000000e8 / 4)
#define IVTN_INT_TRAPA59 (0x000000ec / 4)
#define IVTN_INT_TRAPA60 (0x000000f0 / 4)
#define IVTN_INT_TRAPA61 (0x000000f4 / 4)
#define IVTN_INT_TRAPA62 (0x000000f8 / 4)
#define IVTN_INT_TRAPA63 (0x000000fc / 4)
#define IVTN_INT_IRQ0 (0x00000100 / 4)
#define IVTN_INT_IRQ1 (0x00000104 / 4)
#define IVTN_INT_IRQ2 (0x00000108 / 4)
#define IVTN_INT_IRQ3 (0x0000010c / 4)
#define IVTN_INT_IRQ4 (0x00000110 / 4)
#define IVTN_INT_IRQ5 (0x00000114 / 4)
#define IVTN_INT_IRQ6 (0x00000118 / 4)
#define IVTN_INT_IRQ7 (0x0000011c / 4)
#define IVTN_INT_DMAC0_DEI0 (0x00000120 / 4)
#define IVTN_INT_DMAC1_DEI1 (0x00000128 / 4)
#define IVTN_INT_DMAC2_DEI2 (0x00000130 / 4)
#define IVTN_INT_DMAC3_DEI3 (0x00000138 / 4)
#define IVTN_INT_ATU01_ITV (0x00000140 / 4)
#define IVTN_INT_ATU02_ICI0A (0x00000150 / 4)
#define IVTN_INT_ATU02_ICI0B (0x00000158 / 4)
#define IVTN_INT_ATU03_ICI0C (0x00000160 / 4)
#define IVTN_INT_ATU03_ICI0D (0x00000168 / 4)
#define IVTN_INT_ATU04_OVI0 (0x00000170 / 4)
#define IVTN_INT_ATU11_IMI1A (0x00000180 / 4)
#define IVTN_INT_ATU11_IMI1B (0x00000184 / 4)
#define IVTN_INT_ATU11_IMI1C (0x00000188 / 4)
#define IVTN_INT_ATU11_IMI1D (0x0000018c / 4)
#define IVTN_INT_ATU12_IMI1E (0x00000190 / 4)
#define IVTN_INT_ATU12_IMI1F (0x00000194 / 4)
#define IVTN_INT_ATU12_IMI1G (0x00000198 / 4)
#define IVTN_INT_ATU12_IMI1H (0x0000019c / 4)
#define IVTN_INT_ATU13_OVI1 (0x000001a0 / 4)
#define IVTN_INT_ATU21_IMI2A (0x000001b0 / 4)
#define IVTN_INT_ATU21_IMI2B (0x000001b4 / 4)
#define IVTN_INT_ATU21_IMI2C (0x000001b8 / 4)
#define IVTN_INT_ATU21_IMI2D (0x000001bc / 4)
#define IVTN_INT_ATU22_IMI2E (0x000001c0 / 4)
#define IVTN_INT_ATU22_IMI2F (0x000001c4 / 4)
#define IVTN_INT_ATU22_IMI2G (0x000001c8 / 4)
#define IVTN_INT_ATU22_IMI2H (0x000001cc / 4)
#define IVTN_INT_ATU23_OVI2 (0x000001d0 / 4)
#define IVTN_INT_ATU31_IMI3A (0x000001e0 / 4)
#define IVTN_INT_ATU31_IMI3B (0x000001e4 / 4)
#define IVTN_INT_ATU31_IMI3C (0x000001e8 / 4)
#define IVTN_INT_ATU31_IMI3D (0x000001ec / 4)
#define IVTN_INT_ATU32_OVI3 (0x000001f0 / 4)
#define IVTN_INT_ATU41_IMI4A (0x00000200 / 4)
#define IVTN_INT_ATU41_IMI4B (0x00000204 / 4)
#define IVTN_INT_ATU41_IMI4C (0x00000208 / 4)
#define IVTN_INT_ATU41_IMI4D (0x0000020c / 4)
#define IVTN_INT_ATU42_OVI4 (0x00000210 / 4)
#define IVTN_INT_ATU51_IMI5A (0x00000220 / 4)
#define IVTN_INT_ATU51_IMI5B (0x00000224 / 4)
#define IVTN_INT_ATU51_IMI5C (0x00000228 / 4)
#define IVTN_INT_ATU51_IMI5D (0x0000022c / 4)
#define IVTN_INT_ATU52_OVI5 (0x00000230 / 4)
#define IVTN_INT_ATU6_IMI6A (0x00000240 / 4)
#define IVTN_INT_ATU6_IMI6B (0x00000244 / 4)
#define IVTN_INT_ATU6_IMI6C (0x00000248 / 4)
#define IVTN_INT_ATU6_IMI6D (0x0000024c / 4)
#define IVTN_INT_ATU7_IMI7A (0x00000250 / 4)
#define IVTN_INT_ATU7_IMI7B (0x00000254 / 4)
#define IVTN_INT_ATU7_IMI7C (0x00000258 / 4)
#define IVTN_INT_ATU7_IMI7D (0x0000025c / 4)
#define IVTN_INT_ATU81_OSI8A (0x00000260 / 4)
#define IVTN_INT_ATU81_OSI8B (0x00000264 / 4)
#define IVTN_INT_ATU81_OSI8C (0x00000268 / 4)
#define IVTN_INT_ATU81_OSI8D (0x0000026c / 4)
#define IVTN_INT_ATU82_OSI8E (0x00000270 / 4)
#define IVTN_INT_ATU82_OSI8F (0x00000274 / 4)
#define IVTN_INT_ATU82_OSI8G (0x00000278 / 4)
#define IVTN_INT_ATU82_OSI8H (0x0000027c / 4)
#define IVTN_INT_ATU83_OSI8I (0x00000280 / 4)
#define IVTN_INT_ATU83_OSI8J (0x00000284 / 4)
#define IVTN_INT_ATU83_OSI8K (0x00000288 / 4)
#define IVTN_INT_ATU83_OSI8L (0x0000028c / 4)
#define IVTN_INT_ATU84_OSI8M (0x00000290 / 4)
#define IVTN_INT_ATU84_OSI8N (0x00000294 / 4)
#define IVTN_INT_ATU84_OSI8O (0x00000298 / 4)
#define IVTN_INT_ATU84_OSI8P (0x0000029c / 4)
#define IVTN_INT_ATU91_CMI9A (0x000002a0 / 4)
#define IVTN_INT_ATU91_CMI9B (0x000002a4 / 4)
#define IVTN_INT_ATU91_CMI9C (0x000002a8 / 4)
#define IVTN_INT_ATU91_CMI9D (0x000002ac / 4)
#define IVTN_INT_ATU92_CMI9E (0x000002b0 / 4)
#define IVTN_INT_ATU92_CMI9F (0x000002b8 / 4)
#define IVTN_INT_ATU101_CMI10A (0x000002c0 / 4)
#define IVTN_INT_ATU101_CMI10B (0x000002c8 / 4)
#define IVTN_INT_ATU102_IMI10AG (0x000002d0 / 4)
#define IVTN_INT_ATU11_IMI11A (0x000002e0 / 4)
#define IVTN_INT_ATU11_IMI11B (0x000002e8 / 4)
#define IVTN_INT_ATU11_OVI1 (0x000002ec / 4)
#define IVTN_INT_CMT0_CMTI0 (0x000002f0 / 4)
#define IVTN_INT_ADI0 (0x000002f8 / 4)
#define IVTN_INT_CMT1_CMTI1 (0x00000300 / 4)
#define IVTN_INT_AD1_ADI1 (0x00000308 / 4)
#define IVTN_INT_AD2_ADI2 (0x00000310 / 4)
#define IVTN_INT_SCI0_ERI0 (0x00000320 / 4)
#define IVTN_INT_SCI0_RXI0 (0x00000324 / 4)
#define IVTN_INT_SCI0_TXI0 (0x00000328 / 4)
#define IVTN_INT_SCI0_TEI0 (0x0000032c / 4)
#define IVTN_INT_SCI1_ERI1 (0x00000330 / 4)
#define IVTN_INT_SCI1_RXI1 (0x00000334 / 4)
#define IVTN_INT_SCI1_TXI1 (0x00000338 / 4)
#define IVTN_INT_SCI1_TEI1 (0x0000033c / 4)
#define IVTN_INT_SCI2_ERI2 (0x00000340 / 4)
#define IVTN_INT_SCI2_RXI2 (0x00000344 / 4)
#define IVTN_INT_SCI2_TXI2 (0x00000348 / 4)
#define IVTN_INT_SCI2_TEI2 (0x0000034c / 4)
#define IVTN_INT_SCI3_ERI3 (0x00000350 / 4)
#define IVTN_INT_SCI3_RXI3 (0x00000354 / 4)
#define IVTN_INT_SCI3_TXI3 (0x00000358 / 4)
#define IVTN_INT_SCI3_TEI3 (0x0000035c / 4)
#define IVTN_INT_SCI4_ERI4 (0x00000360 / 4)
#define IVTN_INT_SCI4_RXI4 (0x00000364 / 4)
#define IVTN_INT_SCI4_TXI4 (0x00000368 / 4)
#define IVTN_INT_SCI4_TEI4 (0x0000036c / 4)
#define IVTN_INT_HCAN0_ERS0 (0x00000370 / 4)
#define IVTN_INT_HCAN0_OVR0 (0x00000374 / 4)
#define IVTN_INT_HCAN0_RM0 (0x00000378 / 4)
#define IVTN_INT_HCAN0_SLE0 (0x0000037c / 4)
#define IVTN_INT_WDT_ITI (0x00000380 / 4)
#define IVTN_INT_HCAN1_ERS1 (0x00000390 / 4)
#define IVTN_INT_HCAN1_OVR1 (0x00000394 / 4)
#define IVTN_INT_HCAN1_RM1 (0x00000398 / 4)
#define IVTN_INT_HCAN1_SLE1 (0x0000039c / 4)
#endif