]> rtime.felk.cvut.cz Git - sysless.git/blob - arch/h8300/mach-2638/defines/h8s2638h.h
af4b302a62087b5e74706b0df29c354213ab17be
[sysless.git] / arch / h8300 / mach-2638 / defines / h8s2638h.h
1 /*******************************************************************
2   Components for embedded applications builded for
3   CVUT FEL.
4
5    h8s2639h.h - internal peripherals registers of H8S2630,H8S2636,
6                                                   H8S2638,H8S2639
7    internal comment: ver 1.2 (added HCAN masks)
8  *******************************************************************/
9
10 #ifndef _H82639H_H
11 #define _H82639H_H
12
13 #ifndef __ASSEMBLY__
14
15 #include <types.h>
16
17 #define __PORT8  (volatile __u8  * const)
18 #define __PORT16 (volatile __u16 * const)
19 #define __PORT32 (volatile __u32 * const)
20
21 #else   /* __ASSEMBLY__ */
22 #define __PORT8
23 #define __PORT16
24 #define __PORT32
25 #endif  /* __ASSEMBLY__ */
26
27 /* Module DTC */
28 //#define DTC_MRA       __PORT8 0x????? /* DTC Mode Register A */ 
29 //#define   MRA_SZm     0x01 
30 //#define   MRA_DTSm    0x02 
31 //#define   MRA_MD0m    0x04 
32 //#define   MRA_MD1m    0x08 
33 //#define   MRA_DM0m    0x10 
34 //#define   MRA_DM1m    0x20 
35 //#define   MRA_SM0m    0x40 
36 //#define   MRA_SM1m    0x80 
37 //#define DTC_MRB       __PORT8 0x????  /* DTC Mode Register B */ 
38 //#define   MRB_DISELm  0x40 
39 //#define   MRB_CHNEm   0x80 
40 //#define DTC_SAR       __PORT?? 0x???? /* DTC Source Address Register */ 
41 //#define DTC_DAR       __PORT?? 0x???? /* DTC Destination Address Register */ 
42 //#define DTC_CRA       __PORT16 0x???? /* DTC Transfer Count Register A */ 
43 //#define DTC_CRB       __PORT16 0x???? /* DTC Transfer Count Register B */ 
44
45
46 /* Module HCAN1 and HCAN2 */
47                 /* Configuration registers for HCAN0 and HCAN1 */
48 #define HCAN0_MCR       __PORT8 0xFFFFF800      /* HCAN0 Master Control Register */
49 #define HCAN1_MCR       __PORT8 0xFFFFFA00      /* HCAN1 Master Control Register */
50 #define   MCR_MCR0m     0x01 
51 #define   MCR_MCR1m     0x02 
52 #define   MCR_MCR2m     0x04 
53 #define   MCR_MCR5m     0x20 
54 #define   MCR_MCR7m     0x80 
55 #define HCAN0_GSR       __PORT8 0xFFFFF801      /* HCAN0 General Status Register */
56 #define HCAN1_GSR       __PORT8 0xFFFFFA01      /* HCAN1 General Status Register */
57 #define   GSR_GSR0m     0x01                    /* Bus Off Flag */
58 #define   GSR_GSR1m     0x02                    /* Transmit/Receive Warning Flag */
59 #define   GSR_GSR2m     0x04                    /* Message Transmission Status Flag */
60 #define   GSR_GSR3m     0x08                    /* Reset Status Bit */
61 #define HCAN0_BCR       __PORT16 0xFFFFF802     /* HCAN0 Bit Configuration Register */
62 #define HCAN1_BCR       __PORT16 0xFFFFFA02     /* HCAN1 Bit Configuration Register */
63 #define   BCR_BRPm      0x3f00                  /* Baud Rate Prescaler (BRP) bits 8-13 */
64 #define   BCR_BCR0m     0x0100                  /* Baud Rate Prescaler (BRP) - bit 8 */
65 #define   BCR_BCR1m     0x0200                  /* Baud Rate Prescaler (BRP) - bit 9 */
66 #define   BCR_BCR2m     0x0400                  /* Baud Rate Prescaler (BRP) - bit 10 */
67 #define   BCR_BCR3m     0x0800                  /* Baud Rate Prescaler (BRP) - bit 11 */
68 #define   BCR_BCR4m     0x1000                  /* Baud Rate Prescaler (BRP) - bit 12 */
69 #define   BCR_BCR5m     0x2000                  /* Baud Rate Prescaler (BRP) - bit 13 */
70 #define   BCR_SJWm      0xc000                  /* Resynchronization Jump Width (SJW) */
71 #define   BCR_BCR6m     0x4000                  /* Resynchronization Jump Width - bit 14 */
72 #define   BCR_BCR7m     0x8000                  /* Resynchronization Jump Width - bit 15 */
73 #define   BCR_BCR15m    0x8000                  /* Bit Sample Point (BSP) */
74 #define   BCR_TSEG1m    0x000f                  /* Time Segment 1 (TSEG1) bits 0-3 */
75 #define   BCR_BCR8m     0x0001                  /* Time Segment 1 (TSEG1) - bit 0 */
76 #define   BCR_BCR9m     0x0002                  /* Time Segment 1 (TSEG1) - bit 1 */
77 #define   BCR_BCR10m    0x0004                  /* Time Segment 1 (TSEG1) - bit 2 */
78 #define   BCR_BCR11m    0x0008                  /* Time Segment 1 (TSEG1) - bit 3 */
79 #define   BCR_TSEG2m    0x0070                  /* Time Segment 2 (TSEG2) bits 4-6 */
80 #define   BCR_BCR12m    0x0010                  /* Time Segment 2 (TSEG2) - bit 4 */
81 #define   BCR_BCR13m    0x0020                  /* Time Segment 2 (TSEG2) - bit 5 */
82 #define   BCR_BCR14m    0x0040                  /* Time Segment 2 (TSEG2) - bit 6 */
83 #define HCAN0_BCRL      __PORT8 0xFFFFF802      /* HCAN0 Bit Configuration Register L */
84 #define HCAN1_BCRL      __PORT8 0xFFFFFA02      /* HCAN1 Bit Configuration Register L */
85 #define   BCRL_BCR0m    0x01                    /* Time Segment 1 (TSEG1) bits 0-3 (BCR0-3) */
86 #define   BCRL_BCR1m    0x02
87 #define   BCRL_BCR2m    0x04
88 #define   BCRL_BCR3m    0x08
89 #define   BCRL_BCR4m    0x10                    /* Time Segment 2 (TSEG2) bits 4-6 (BCR4-6) */
90 #define   BCRL_BCR5m    0x20
91 #define   BCRL_BCR6m    0x40
92 #define   BCRL_BCR15m   0x80                    /* Bit Sample Point (BSP) */
93 #define HCAN0_BCRH      __PORT8 0xFFFFF803      /* HCAN0 Bit Configuration Register H */
94 #define HCAN1_BCRH      __PORT8 0xFFFFFA03      /* HCAN1 Bit Configuration Register H */
95 #define   BCRH_BCR0m    0x01                    /* Baud Rate Prescaler (BRP) bits 8-13 */
96 #define   BCRH_BCR1m    0x02
97 #define   BCRH_BCR2m    0x04
98 #define   BCRH_BCR3m    0x08
99 #define   BCRH_BCR4m    0x10
100 #define   BCRH_BCR5m    0x20
101 #define   BCRH_BCR6m    0x40                    /* Resynchronization Jump Width bits 14-15 */
102 #define   BCRH_BCR7m    0x80
103 #define HCAN0_MBCR      __PORT16 0xFFFFF804     /* HCAN0 Mailbox Configuration Register */
104 #define HCAN1_MBCR      __PORT16 0xFFFFFA04     /* HCAN1 Mailbox Configuration Register */
105 #define   MBCR_MBCR8m   0x0001                  /* 0 = Corresponding mailbox(8) is set for transmission */
106 #define   MBCR_MBCR9m   0x0002
107 #define   MBCR_MBCR10m  0x0004
108 #define   MBCR_MBCR11m  0x0008
109 #define   MBCR_MBCR12m  0x0010
110 #define   MBCR_MBCR13m  0x0020
111 #define   MBCR_MBCR14m  0x0040
112 #define   MBCR_MBCR15m  0x0080
113 #define   MBCR_MBCR1m   0x0200
114 #define   MBCR_MBCR2m   0x0400
115 #define   MBCR_MBCR3m   0x0800
116 #define   MBCR_MBCR4m   0x0100
117 #define   MBCR_MBCR5m   0x0200
118 #define   MBCR_MBCR6m   0x0400
119 #define   MBCR_MBCR7m   0x0800
120 #define HCAN0_TXPR      __PORT16 0xFFFFF806     /* HCAN0 Transmit Wait Register */
121 #define HCAN1_TXPR      __PORT16 0xFFFFFA06     /* HCAN1 Transmit wait register */
122 #define   TXPR_TXPR8m   0x0001
123 #define   TXPR_TXPR9m   0x0002
124 #define   TXPR_TXPR10m  0x0004
125 #define   TXPR_TXPR11m  0x0008
126 #define   TXPR_TXPR12m  0x0010
127 #define   TXPR_TXPR13m  0x0020
128 #define   TXPR_TXPR14m  0x0040
129 #define   TXPR_TXPR15m  0x0080
130 #define   TXPR_TXPR1m   0x0200
131 #define   TXPR_TXPR2m   0x0400
132 #define   TXPR_TXPR3m   0x0800
133 #define   TXPR_TXPR4m   0x1000
134 #define   TXPR_TXPR5m   0x2000
135 #define   TXPR_TXPR6m   0x4000
136 #define   TXPR_TXPR7m   0x8000
137 #define HCAN0_TXCR      __PORT16 0xFFFFF808     /* HCAN0 Transmit wait cancel register */
138 #define HCAN1_TXCR      __PORT16 0xFFFFFA08     /* HCAN1 Transmit wait cancel register */
139 #define   TXCR_TXCR8m   0x0001
140 #define   TXCR_TXCR9m   0x0002
141 #define   TXCR_TXCR10m  0x0004
142 #define   TXCR_TXCR11m  0x0008
143 #define   TXCR_TXCR12m  0x0010
144 #define   TXCR_TXCR13m  0x0020
145 #define   TXCR_TXCR14m  0x0040
146 #define   TXCR_TXCR15m  0x0080
147 #define   TXCR_TXCR1m   0x0200
148 #define   TXCR_TXCR2m   0x0400
149 #define   TXCR_TXCR3m   0x0800
150 #define   TXCR_TXCR4m   0x1000
151 #define   TXCR_TXCR5m   0x2000
152 #define   TXCR_TXCR6m   0x4000
153 #define   TXCR_TXCR7m   0x8000
154 #define HCAN0_TXACK     __PORT16 0xFFFFF80A     /* HCAN0 Transmit Acknowledge Register */
155 #define HCAN1_TXACK     __PORT16 0xFFFFFA0A     /* HCAN1 Transmit Acknowledge Register */
156 #define   TXACK_TXACK8m 0x0001
157 #define   TXACK_TXACK9m 0x0002
158 #define   TXACK_TXACK10m        0x0004
159 #define   TXACK_TXACK11m        0x0008
160 #define   TXACK_TXACK12m        0x0010
161 #define   TXACK_TXACK13m        0x0020
162 #define   TXACK_TXACK14m        0x0040
163 #define   TXACK_TXACK15m        0x0080
164 #define   TXACK_TXACK1m 0x0200
165 #define   TXACK_TXACK2m 0x0400
166 #define   TXACK_TXACK3m 0x0800
167 #define   TXACK_TXACK4m 0x1000
168 #define   TXACK_TXACK5m 0x2000
169 #define   TXACK_TXACK6m 0x4000
170 #define   TXACK_TXACK7m 0x8000
171 #define HCAN0_ABACK     __PORT16 0xFFFFF80C     /* HCAN0 Abort Acknowledge Register */
172 #define HCAN1_ABACK     __PORT16 0xFFFFFA0C     /* HCAN1 Abort Acknowledge Register */
173 #define   ABACK_ABACK8m 0x0001
174 #define   ABACK_ABACK9m 0x0002
175 #define   ABACK_ABACK10m        0x0004
176 #define   ABACK_ABACK11m        0x0008
177 #define   ABACK_ABACK12m        0x0010
178 #define   ABACK_ABACK13m        0x0020
179 #define   ABACK_ABACK14m        0x0040
180 #define   ABACK_ABACK15m        0x0080
181 #define   ABACK_ABACK1m 0x0200
182 #define   ABACK_ABACK2m 0x0400
183 #define   ABACK_ABACK3m 0x0800
184 #define   ABACK_ABACK4m 0x1000
185 #define   ABACK_ABACK5m 0x2000
186 #define   ABACK_ABACK6m 0x4000
187 #define   ABACK_ABACK7m 0x8000
188 #define HCAN0_RXPR      __PORT16 0xFFFFF80E     /* HCAN0 Receive Complete Register */
189 #define HCAN1_RXPR      __PORT16 0xFFFFFA0E     /* HCAN1 Receive Complete Register */
190 #define   RXPR_RXPR8m   0x0001
191 #define   RXPR_RXPR9m   0x0002
192 #define   RXPR_RXPR10m  0x0004
193 #define   RXPR_RXPR11m  0x0008
194 #define   RXPR_RXPR12m  0x0010
195 #define   RXPR_RXPR13m  0x0020
196 #define   RXPR_RXPR14m  0x0040
197 #define   RXPR_RXPR15m  0x0080
198 #define   RXPR_RXPR0m   0x0100
199 #define   RXPR_RXPR1m   0x0200
200 #define   RXPR_RXPR2m   0x0400
201 #define   RXPR_RXPR3m   0x0800
202 #define   RXPR_RXPR4m   0x1000
203 #define   RXPR_RXPR5m   0x2000
204 #define   RXPR_RXPR6m   0x4000
205 #define   RXPR_RXPR7m   0x8000
206 #define HCAN0_RFPR      __PORT16 0xFFFFF810     /* HCAN0 Remote Request Register */
207 #define HCAN1_RFPR      __PORT16 0xFFFFFA10     /* HCAN1 Remote Request Register */
208 #define   RFPR_RFPR8m   0x0001
209 #define   RFPR_RFPR9m   0x0002
210 #define   RFPR_RFPR10m  0x0004
211 #define   RFPR_RFPR11m  0x0008
212 #define   RFPR_RFPR12m  0x0010
213 #define   RFPR_RFPR13m  0x0020
214 #define   RFPR_RFPR14m  0x0040
215 #define   RFPR_RFPR15m  0x0080
216 #define   RFPR_RFPR0m   0x0100
217 #define   RFPR_RFPR1m   0x0200
218 #define   RFPR_RFPR2m   0x0400
219 #define   RFPR_RFPR3m   0x0800
220 #define   RFPR_RFPR4m   0x1000
221 #define   RFPR_RFPR5m   0x2000
222 #define   RFPR_RFPR6m   0x4000
223 #define   RFPR_RFPR7m   0x8000
224 #define HCAN0_IRR       __PORT16 0xFFFFF812     /* HCAN0 Interrupt Register */
225 #define HCAN1_IRR       __PORT16 0xFFFFFA12     /* HCAN1 Interrupt Register */
226 #define   IRR_IRR0m     0x0100
227 #define   IRR_IRR1m     0x0200
228 #define   IRR_IRR2m     0x0400
229 #define   IRR_IRR3m     0x0800
230 #define   IRR_IRR4m     0x1000
231 #define   IRR_IRR5m     0x2000
232 #define   IRR_IRR6m     0x4000
233 #define   IRR_IRR7m     0x8000
234 #define   IRR_IRR8m     0x0001
235 #define   IRR_IRR9m     0x0002
236 #define   IRR_IRR12m    0x0010
237 #define HCAN0_IRRL      __PORT8 0xFFFFF812      /* HCAN0 Interrupt Register L */
238 #define HCAN1_IRRL      __PORT8 0xFFFFFA12      /* HCAN1 Interrupt Register L */
239 #define   IRRL_IRR0m    0x01
240 #define   IRRL_IRR1m    0x02
241 #define   IRRL_IRR2m    0x04
242 #define   IRRL_IRR3m    0x08
243 #define   IRRL_IRR4m    0x10
244 #define   IRRL_IRR5m    0x20
245 #define   IRRL_IRR6m    0x40
246 #define   IRRL_IRR7m    0x80
247 #define HCAN0_IRRH      __PORT8 0xFFFFF813      /* HCAN0 Interrupt Register H */
248 #define HCAN1_IRRH      __PORT8 0xFFFFFA13      /* HCAN0 Interrupt Register H */
249 #define   IRRH_IRR8m    0x01
250 #define   IRRH_IRR9m    0x02
251 #define   IRRH_IRR12m   0x10
252 #define HCAN0_MBIMR     __PORT16 0xFFFFF814     /* HCAN0 Mailbox Interrupt Mask Register */
253 #define HCAN1_MBIMR     __PORT16 0xFFFFFA14     /* HCAN1 Mailbox Interrupt Mask Register */
254 #define   MBIMR_MBIMR8m 0x0001
255 #define   MBIMR_MBIMR9m 0x0002
256 #define   MBIMR_MBIMR10m        0x0004
257 #define   MBIMR_MBIMR11m        0x0008
258 #define   MBIMR_MBIMR12m        0x0010
259 #define   MBIMR_MBIMR13m        0x0020
260 #define   MBIMR_MBIMR14m        0x0040
261 #define   MBIMR_MBIMR15m        0x0080
262 #define   MBIMR_MBIMR0m 0x0100
263 #define   MBIMR_MBIMR1m 0x0200
264 #define   MBIMR_MBIMR2m 0x0400
265 #define   MBIMR_MBIMR3m 0x0800
266 #define   MBIMR_MBIMR4m 0x1000
267 #define   MBIMR_MBIMR5m 0x2000
268 #define   MBIMR_MBIMR6m 0x4000
269 #define   MBIMR_MBIMR7m 0x8000
270 #define HCAN0_IMR       __PORT16 0xFFFFF816     /* HCAN0 Interrupt Mask Register */
271 #define HCAN1_IMR       __PORT16 0xFFFFFA16     /* HCAN1 Interrupt Mask Register */
272 #define   IMR_IMR8m     0x0001
273 #define   IMR_IMR9m     0x0002
274 #define   IMR_IMR12m    0x0010
275 #define   IMR_IMR1m     0x0200
276 #define   IMR_IMR2m     0x0400
277 #define   IMR_IMR3m     0x0800
278 #define   IMR_IMR4m     0x1000
279 #define   IMR_IMR5m     0x2000
280 #define   IMR_IMR6m     0x4000
281 #define   IMR_IMR7m     0x8000
282 #define HCAN0_IMRL      __PORT8 0xFFFFF816      /* HCAN0 Interrupt Mask Register L */
283 #define HCAN1_IMRL      __PORT8 0xFFFFFA16      /* HCAN1 Interrupt Mask Register L */
284 #define   IMRL_IMR1m    0x02
285 #define   IMRL_IMR2m    0x04
286 #define   IMRL_IMR3m    0x08
287 #define   IMRL_IMR4m    0x10
288 #define   IMRL_IMR5m    0x20
289 #define   IMRL_IMR6m    0x40
290 #define   IMRL_IMR7m    0x80
291 #define HCAN0_IMRH      __PORT8 0xFFFFF817      /* HCAN0 Interrupt Mask Register H */
292 #define HCAN1_IMRH      __PORT8 0xFFFFFA17      /* HCAN1 Interrupt Mask Register H */
293 #define   IMRH_IMR8m    0x01
294 #define   IMRH_IMR9m    0x02
295 #define   IMRH_IMR12m   0x10
296 #define HCAN0_REC       __PORT8 0xFFFFF818      /* HCAN0 Receive Error Counter */
297 #define HCAN1_REC       __PORT8 0xFFFFFA18      /* HCAN1 Receive Error Counter */
298 #define HCAN0_TEC       __PORT8 0xFFFFF819      /* HCAN0 Transmit Error Counter */
299 #define HCAN1_TEC       __PORT8 0xFFFFFA19      /* HCAN1 Transmit Error Counter */
300 #define HCAN0_UMSR      __PORT16 0xFFFFF81A     /* HCAN0 Unread Message Status Register */
301 #define HCAN1_UMSR      __PORT16 0xFFFFFA1A     /* HCAN1 Unread Message Status Register */
302 #define   UMSR_UMSR8m   0x0001
303 #define   UMSR_UMSR9m   0x0002
304 #define   UMSR_UMSR10m  0x0004
305 #define   UMSR_UMSR11m  0x0008
306 #define   UMSR_UMSR12m  0x0010
307 #define   UMSR_UMSR13m  0x0020
308 #define   UMSR_UMSR14m  0x0040
309 #define   UMSR_UMSR15m  0x0080
310 #define   UMSR_UMSR0m   0x0100
311 #define   UMSR_UMSR1m   0x0200
312 #define   UMSR_UMSR2m   0x0400
313 #define   UMSR_UMSR3m   0x0800
314 #define   UMSR_UMSR4m   0x1000
315 #define   UMSR_UMSR5m   0x2000
316 #define   UMSR_UMSR6m   0x4000
317 #define   UMSR_UMSR7m   0x8000
318 #define HCAN0_LAFML     __PORT16 0xFFFFF81C     /* HCAN0 Local Acceptance Filter Masks L */
319 #define HCAN1_LAFML     __PORT16 0xFFFFFA1C     /* HCAN1 Local Acceptance Filter Masks L */
320 #define HCAN0_LAFMH     __PORT16 0xFFFFF81E     /* HCAN0 Local Acceptance Filter Masks H */
321 #define HCAN1_LAFMH     __PORT16 0xFFFFFA1E     /* HCAN1 Local Acceptance Filter Masks H */
322                 /* Message Control and Data registers (MC0 to MC15) and (MD0 to MD15)  for HCAN0 and HCAN1 */
323 #define HCAN0_MC0       __PORT8 0xFFFFF820      /* Message Control 0 */
324 #define HCAN1_MC0       __PORT8 0xFFFFFA20
325 #define HCAN0_MC1       __PORT8 0xFFFFF828      /* Message Control 1 */
326 #define HCAN1_MC1       __PORT8 0xFFFFFA28
327 #define HCAN0_MC2       __PORT8 0xFFFFF830      /* Message Control 2 */
328 #define HCAN1_MC2       __PORT8 0xFFFFFA30
329 #define HCAN0_MC3       __PORT8 0xFFFFF838      /* Message Control 3 */
330 #define HCAN1_MC3       __PORT8 0xFFFFFA38
331 #define HCAN0_MC4       __PORT8 0xFFFFF840      /* Message Control 4 */
332 #define HCAN1_MC4       __PORT8 0xFFFFFA40
333 #define HCAN0_MC5       __PORT8 0xFFFFF848      /* Message Control 5 */
334 #define HCAN1_MC5       __PORT8 0xFFFFFA48
335 #define HCAN0_MC6       __PORT8 0xFFFFF850      /* Message Control 6 */
336 #define HCAN1_MC6       __PORT8 0xFFFFFA50
337 #define HCAN0_MC7       __PORT8 0xFFFFF858      /* Message Control 7 */
338 #define HCAN1_MC7       __PORT8 0xFFFFFA58
339 #define HCAN0_MC8       __PORT8 0xFFFFF860      /* Message Control 8 */
340 #define HCAN1_MC8       __PORT8 0xFFFFFA60
341 #define HCAN0_MC9       __PORT8 0xFFFFF868      /* Message Control 9 */
342 #define HCAN1_MC9       __PORT8 0xFFFFFA68
343 #define HCAN0_MC10      __PORT8 0xFFFFF870      /* Message Control 10 */
344 #define HCAN1_MC10      __PORT8 0xFFFFFA70
345 #define HCAN0_MC11      __PORT8 0xFFFFF878      /* Message Control 11 */
346 #define HCAN1_MC11      __PORT8 0xFFFFFA78
347 #define HCAN0_MC12      __PORT8 0xFFFFF880      /* Message Control 12 */
348 #define HCAN1_MC12      __PORT8 0xFFFFFA80
349 #define HCAN0_MC13      __PORT8 0xFFFFF888      /* Message Control 13 */
350 #define HCAN1_MC13      __PORT8 0xFFFFFA88
351 #define HCAN0_MC14      __PORT8 0xFFFFF890      /* Message Control 14 */
352 #define HCAN1_MC14      __PORT8 0xFFFFFA90
353 #define HCAN0_MC15      __PORT8 0xFFFFF898      /* Message Control 15 */
354 #define HCAN1_MC15      __PORT8 0xFFFFFA98
355 #define HCAN0_MD0       __PORT8 0xFFFFF8B0      /* Message Data 0 */
356 #define HCAN1_MD0       __PORT8 0xFFFFFAB0
357 #define HCAN0_MD1       __PORT8 0xFFFFF8B8      /* Message Data 1 */
358 #define HCAN1_MD1       __PORT8 0xFFFFFAB8
359 #define HCAN0_MD2       __PORT8 0xFFFFF8C0      /* Message Data 2 */
360 #define HCAN1_MD2       __PORT8 0xFFFFFAC0
361 #define HCAN0_MD3       __PORT8 0xFFFFF8C8      /* Message Data 3 */
362 #define HCAN1_MD3       __PORT8 0xFFFFFAC8
363 #define HCAN0_MD4       __PORT8 0xFFFFF8D0      /* Message Data 4 */
364 #define HCAN1_MD4       __PORT8 0xFFFFFAD0
365 #define HCAN0_MD5       __PORT8 0xFFFFF8D8      /* Message Data 5 */
366 #define HCAN1_MD5       __PORT8 0xFFFFFAD8
367 #define HCAN0_MD6       __PORT8 0xFFFFF8E0      /* Message Data 6 */
368 #define HCAN1_MD6       __PORT8 0xFFFFFAE0
369 #define HCAN0_MD7       __PORT8 0xFFFFF8E8      /* Message Data 7 */
370 #define HCAN1_MD7       __PORT8 0xFFFFFAE8
371 #define HCAN0_MD8       __PORT8 0xFFFFF8F0      /* Message Data 8 */
372 #define HCAN1_MD8       __PORT8 0xFFFFFAF0
373 #define HCAN0_MD9       __PORT8 0xFFFFF8F8      /* Message Data 9 */
374 #define HCAN1_MD9       __PORT8 0xFFFFFAF8
375 #define HCAN0_MD10      __PORT8 0xFFFFF900      /* Message Data 10 */
376 #define HCAN1_MD10      __PORT8 0xFFFFFB00
377 #define HCAN0_MD11      __PORT8 0xFFFFF908      /* Message Data 11 */
378 #define HCAN1_MD11      __PORT8 0xFFFFFB08
379 #define HCAN0_MD12      __PORT8 0xFFFFF910      /* Message Data 12 */
380 #define HCAN1_MD12      __PORT8 0xFFFFFB10
381 #define HCAN0_MD13      __PORT8 0xFFFFF918      /* Message Data 13 */
382 #define HCAN1_MD13      __PORT8 0xFFFFFB18
383 #define HCAN0_MD14      __PORT8 0xFFFFF920      /* Message Data 14 */
384 #define HCAN1_MD14      __PORT8 0xFFFFFB20
385 #define HCAN0_MD15      __PORT8 0xFFFFF928      /* Message Data 15 */
386 #define HCAN1_MD15      __PORT8 0xFFFFFB28
387
388 /* Motor control PWM timer 1 */
389 #define PWM_PWCR1 __PORT8 0xFFFFFC00        /* PWM control register 1 */
390 #define   PWCR1_CKS0m   0x01 
391 #define   PWCR1_CKS1m   0x02 
392 #define   PWCR1_CKS2m   0x04 
393 #define   PWCR1_CKS_F1  0x00 
394 #define   PWCR1_CKS_F2  0x01
395 #define   PWCR1_CKS_F4  0x02 
396 #define   PWCR1_CKS_F8  0x03 
397 #define   PWCR1_CKS_F16 0x07 
398 #define   PWCR1_CSTm    0x08 
399 #define   PWCR1_CMFm    0x10 
400 #define   PWCR1_IEm     0x20 
401 #define PWM_PWOCR1      __PORT8 0xFFFFFC02      /* PWM Output Control Register 1 */  
402 #define   PWOCR1_OE1Am  0x01 
403 #define   PWOCR1_OE1Bm  0x02 
404 #define   PWOCR1_OE1Cm  0x04 
405 #define   PWOCR1_OE1Dm  0x08 
406 #define   PWOCR1_OE1Em  0x10 
407 #define   PWOCR1_OE1Fm  0x20 
408 #define   PWOCR1_OE1Gm  0x40 
409 #define   PWOCR1_OE1Hm  0x80 
410 #define PWM_PWPR1       __PORT8 0xFFFFFC04      /* PWM Polarity Register 1 */ 
411 #define   PWPR1_OPS1Am  0x01 
412 #define   PWPR1_OPS1Bm  0x02 
413 #define   PWPR1_OPS1Cm  0x04 
414 #define   PWPR1_OPS1Dm  0x08 
415 #define   PWPR1_OPS1Em  0x10 
416 #define   PWPR1_OPS1Fm  0x20 
417 #define   PWPR1_OPS1Gm  0x40 
418 #define   PWPR1_OPS1Hm  0x80 
419 #define PWM_PWCYR1      __PORT16 0xFFFFFC06     /* PWM Cycle Register 1 */ 
420 #define PWM_PWBFR1A     __PORT16 0xFFFFFC08     /* PWM Buffer Register 1A */ 
421 #define   PWBFR1A_DT8m  0x0100 
422 #define   PWBFR1A_DT9m  0x0200 
423 #define   PWBFR1A_DTxm  0x03ff 
424 #define   PWBFR1A_OTSm  0x1000 
425 #define PWM_PWBFR1C     __PORT16 0xFFFFFC0A     /* PWM Buffer Register 1C */ 
426 #define   PWBFR1C_DT8m  0x0100 
427 #define   PWBFR1C_DT9m  0x0200 
428 #define   PWBFR1C_DTxm  0x03ff 
429 #define   PWBFR1C_OTSm  0x1000 
430 #define PWM_PWBFR1E     __PORT16 0xFFFFFC0C     /* PWM Buffer Register 1E */ 
431 #define   PWBFR1E_DT8m  0x0100 
432 #define   PWBFR1E_DT9m  0x0200 
433 #define   PWBFR1E_DTxm  0x03ff 
434 #define   PWBFR1E_OTSm  0x1000 
435 #define PWM_PWBFR1G     __PORT16 0xFFFFFC0E     /* PWM Buffer Register 1G */ 
436 #define   PWBFR1G_DT8m  0x0100 
437 #define   PWBFR1G_DT9m  0x0200 
438 #define   PWBFR1G_DTxm  0x03ff 
439 #define   PWBFR1G_OTSm  0x1000 
440 /* Motor control PWM timer 2 */
441 #define PWM_PWCR2       __PORT8 0xFFFFFC10      /* PWM Control Register 2 */ 
442 #define   PWCR2_CKS0m   0x01 
443 #define   PWCR2_CKS1m   0x02 
444 #define   PWCR2_CKS2m   0x04 
445 #define   PWCR2_CKS_F1  0x00 
446 #define   PWCR2_CKS_F2  0x01
447 #define   PWCR2_CKS_F4  0x02 
448 #define   PWCR2_CKS_F8  0x03 
449 #define   PWCR2_CKS_F16 0x07 
450 #define   PWCR2_CSTm    0x08 
451 #define   PWCR2_CMFm    0x10 
452 #define   PWCR2_IEm     0x20 
453 #define PWM_PWOCR2      __PORT8 0xFFFFFC12      /* PWM Output Control Register 2 */ 
454 #define   PWOCR2_OE2Am  0x01 
455 #define   PWOCR2_OE2Bm  0x02 
456 #define   PWOCR2_OE2Cm  0x04 
457 #define   PWOCR2_OE2Dm  0x08 
458 #define   PWOCR2_OE2Em  0x10 
459 #define   PWOCR2_OE2Fm  0x20 
460 #define   PWOCR2_OE2Gm  0x40 
461 #define   PWOCR2_OE2Hm  0x80 
462 #define PWM_PWPR2       __PORT8 0xFFFFFC14      /* PWM Polarity Register 2 */ 
463 #define   PWPR2_OPS2Am  0x01 
464 #define   PWPR2_OPS2Bm  0x02 
465 #define   PWPR2_OPS2Cm  0x04 
466 #define   PWPR2_OPS2Dm  0x08 
467 #define   PWPR2_OPS2Em  0x10 
468 #define   PWPR2_OPS2Fm  0x20 
469 #define   PWPR2_OPS2Gm  0x40 
470 #define   PWPR2_OPS2Hm  0x80 
471 #define PWM_PWCYR2      __PORT16 0xFFFFFC16     /* PWM Cycle Register 2 */ 
472 #define PWM_PWBFR2A     __PORT16 0xFFFFFC18     /* PWM Buffer Register 2A */
473 #define   PWBFR2A_DT8m  0x0100 
474 #define   PWBFR2A_DT9m  0x0200 
475 #define   PWBFR2A_DTxm  0x03ff 
476 #define   PWBFR2A_TDSm  0x1000 
477 #define PWM_PWBFR2B     __PORT16 0xFFFFFC1A     /* PWM Buffer Register 2B */ 
478 #define   PWBFR2B_DT8m  0x0100 
479 #define   PWBFR2B_DT9m  0x0200 
480 #define   PWBFR2B_DTxm  0x03ff 
481 #define   PWBFR2B_TDSm  0x1000 
482 #define PWM_PWBFR2C     __PORT16 0xFFFFFC1C     /* PWM Buffer Register 2C */
483 #define   PWBFR2C_DT8m  0x0100 
484 #define   PWBFR2C_DT9m  0x0200 
485 #define   PWBFR2C_DTxm  0x03ff 
486 #define   PWBFR2C_TDSm  0x1000 
487 #define PWM_PWBFR2D     __PORT16 0xFFFFFC1E     /* PWM Buffer Register 2E */ 
488 #define   PWBFR2D_DT8m  0x0100 
489 #define   PWBFR2D_DT9m  0x0200 
490 #define   PWBFR2D_DTxm  0x03ff 
491 #define   PWBFR2D_TDSm  0x1000 
492 /* Port H and J Registers */
493 #define DIO_PHDDR       __PORT8 0xFFFFFC20      /* DIO H Data Direction Register */ 
494 #define   PHDDR_PH0DDRm 0x01 
495 #define   PHDDR_PH1DDRm 0x02 
496 #define   PHDDR_PH2DDRm 0x04 
497 #define   PHDDR_PH3DDRm 0x08 
498 #define   PHDDR_PH4DDRm 0x10 
499 #define   PHDDR_PH5DDRm 0x20 
500 #define   PHDDR_PH6DDRm 0x40 
501 #define   PHDDR_PH7DDRm 0x80 
502 #define DIO_PJDDR       __PORT8 0xFFFFFC21      /* DIO J Data Direction Register */ 
503 #define   PJDDR_PJ0DDRm 0x01 
504 #define   PJDDR_PJ1DDRm 0x02 
505 #define   PJDDR_PJ2DDRm 0x04 
506 #define   PJDDR_PJ3DDRm 0x08 
507 #define   PJDDR_PJ4DDRm 0x10 
508 #define   PJDDR_PJ5DDRm 0x20 
509 #define   PJDDR_PJ6DDRm 0x40 
510 #define   PJDDR_PJ7DDRm 0x80 
511 #define DIO_PHDR        __PORT8 0xFFFFFC24      /* DIO H Data Register */ 
512 #define   PHDR_PH0DRm   0x01 
513 #define   PHDR_PH1DRm   0x02 
514 #define   PHDR_PH2DRm   0x04 
515 #define   PHDR_PH3DRm   0x08 
516 #define   PHDR_PH4DRm   0x10 
517 #define   PHDR_PH5DRm   0x20 
518 #define   PHDR_PH6DRm   0x40 
519 #define   PHDR_PH7DRm   0x80 
520 #define DIO_PJDR        __PORT8 0xFFFFFC25      /* DIO J Data Register */ 
521 #define   PJDR_PJ0DRm   0x01 
522 #define   PJDR_PJ1DRm   0x02 
523 #define   PJDR_PJ2DRm   0x04 
524 #define   PJDR_PJ3DRm   0x08 
525 #define   PJDR_PJ4DRm   0x10 
526 #define   PJDR_PJ5DRm   0x20 
527 #define   PJDR_PJ6DRm   0x40 
528 #define   PJDR_PJ7DRm   0x80 
529 #define DIO_PORTH       __PORT8 0xFFFFFC28      /* DIO H Register */ 
530 #define   PORTH_PH0m    0x01 
531 #define   PORTH_PH1m    0x02 
532 #define   PORTH_PH2m    0x04 
533 #define   PORTH_PH3m    0x08 
534 #define   PORTH_PH4m    0x10 
535 #define   PORTH_PH5m    0x20 
536 #define   PORTH_PH6m    0x40 
537 #define   PORTH_PH7m    0x80 
538 #define DIO_PORTJ       __PORT8 0xFFFFFC29      /* DIO J Register */ 
539 #define   PORTJ_PJ0m    0x01 
540 #define   PORTJ_PJ1m    0x02 
541 #define   PORTJ_PJ2m    0x04 
542 #define   PORTJ_PJ3m    0x08 
543 #define   PORTJ_PJ4m    0x10 
544 #define   PORTJ_PJ5m    0x20 
545 #define   PORTJ_PJ6m    0x40 
546 #define   PORTJ_PJ7m    0x80 
547
548 /* Module IIC valid in 2630,2638 and 2639 */
549 #define IIC_SCRX        __PORT8 0xFFFFFDB4      /* Serial Control Register X */ 
550 #define   SCRX_IICEm    0x10 
551 #define   SCRX_IICX0m   0x20 
552 #define   SCRX_IICX1m   0x40 
553 #define IIC_DDCSWR      __PORT8 0xFFFFFDB5      /* DDC Switch Register */ 
554 #define   DDCSWR_CLR0m  0x01 
555 #define   DDCSWR_CLR1m  0x02 
556 #define   DDCSWR_CLR2m  0x04 
557 #define   DDCSWR_CLR3m  0x08 
558 #define   DDCSWR_IFm    0x10
559 #define   DDCSWR_IEm    0x20
560 #define   DDCSWR_SWm    0x40
561 #define   DDCSWR_SWEm   0x80
562 /* Module System */
563 #define SYS_SBYCR       __PORT8 0xFFFFFDE4      /* Standby Control Register */ 
564 #define   SBYCR_OPEm    0x08 
565 #define   SBYCR_STS0m   0x10 
566 #define   SBYCR_STS1m   0x20 
567 #define   SBYCR_STS2m   0x40 
568 #define   SBYCR_SSBYm   0x80 
569 #define SYS_SYSCR       __PORT8 0xFFFFFDE5      /* SYS Control Register */ 
570 #define   SYSCR_RAMEm   0x01 
571 #define   SYSCR_NMIEGm  0x08 
572 #define   SYSCR_INTM0m  0x10 
573 #define   SYSCR_INTM1m  0x20 
574 #define   SYSCR_MACSm   0x80 
575 #define SYS_SCKCR       __PORT8 0xFFFFFDE6      /* SYS Clock Control Register */ 
576 #define   SCKCR_SCK0m   0x01                    /*  Bus master clock selection */ 
577 #define   SCKCR_SCK1m   0x02                    /*  0=full, 1=/2, 2=/4 3=/8 */
578 #define   SCKCR_SCK2m   0x04                    /*  4=/16, 5=/32 */
579 #define   SCKCR_SCKxm   0x07
580 #define   SCKCR_STCSm   0x08                    /*   1=Immediately change, 0=at Stby */ 
581 #define   SCKCR_PSTOPm  0x80                    /*   1=Clock Output Disable */ 
582 #define SYS_MDCR        __PORT8 0xFFFFFDE7      /* Mode Control Register */ 
583 #define   MDCR_MDS0m    0x01 
584 #define   MDCR_MDS1m    0x02 
585 #define   MDCR_MDS2m    0x04 
586 #define SYS_PFCR        __PORT8 0xFFFFFDEB      /* Pin Function Control Register */ 
587 #define   PFCR_AE0m     0x01 
588 #define   PFCR_AE1m     0x02 
589 #define   PFCR_AE2m     0x04 
590 #define   PFCR_AE3m     0x08 
591 #define   PFCR_AExm     0x0f 
592 #define SYS_LPWRCR      __PORT8 0xFFFFFDEC      /* Low-Power Control Register */ 
593 #define   LPWRCR_STC0m  0x01 
594 #define   LPWRCR_STC1m  0x02 
595 #define   LPWRCR_STCxm  0x03
596 #define   LPWRCR_RFCUTm 0x08 
597 #define   LPWRCR_SUBSTPm        0x10 
598 #define   LPWRCR_NESELm 0x20 
599 #define   LPWRCR_LSONm  0x40 
600 #define   LPWRCR_DTONm  0x80 
601 /* Module PC Break Controller */
602 #define PBC_BARA        __PORT32 0xFFFFFE00     /* Break Address Register A */ 
603 #define PBC_BARB        __PORT32 0xFFFFFE04     /* Break Address Register B */ 
604 #define PBC_BCRA        __PORT8 0xFFFFFE08      /* Break Control Register A */ 
605 #define   BCRA_BIEAm    0x01 
606 #define   BCRA_CSELA0m  0x02 
607 #define   BCRA_CSELA1m  0x04 
608 #define   BCRA_BAMRA0m  0x08 
609 #define   BCRA_BAMRA1m  0x10 
610 #define   BCRA_BAMRA2m  0x20 
611 #define   BCRA_CDAm     0x40 
612 #define   BCRA_CMFAm    0x80 
613 #define PBC_BCRB        __PORT8 0xFFFFFE09      /* Break Control Register B */ 
614 #define   BCRB_BIEAm    0x01 
615 #define   BCRB_CSELA0m  0x02 
616 #define   BCRB_CSELA1m  0x04 
617 #define   BCRB_BAMRA0m  0x08 
618 #define   BCRB_BAMRA1m  0x10 
619 #define   BCRB_BAMRA2m  0x20 
620 #define   BCRB_CDAm     0x40 
621 #define   BCRB_CMFAm    0x80 
622 /* Module Interrupt Controller Registers */ 
623 #define INT_ISCRH       __PORT8 0xFFFFFE12      /* IRQ Sence Control Register H */ 
624 #define   ISCRH_IRQ4SCAm        0x01 
625 #define   ISCRH_IRQ4SCBm        0x02 
626 #define   ISCRH_IRQ5SCAm        0x04 
627 #define   ISCRH_IRQ5SCBm        0x08 
628 #define INT_ISCRL       __PORT8 0xFFFFFE13      /* IRQ Sence Control Register L */ 
629 #define   ISCRL_IRQ0SCAm        0x01 
630 #define   ISCRL_IRQ0SCBm        0x02 
631 #define   ISCRL_IRQ1SCAm        0x04 
632 #define   ISCRL_IRQ1SCBm        0x08 
633 #define   ISCRL_IRQ2SCAm        0x10 
634 #define   ISCRL_IRQ2SCBm        0x20 
635 #define   ISCRL_IRQ3SCAm        0x40 
636 #define   ISCRL_IRQ3SCBm        0x80 
637 #define INT_IER __PORT8 0xFFFFFE14      /* IRQ Enable Register */ 
638 #define   IER_IRQ0Em    0x01 
639 #define   IER_IRQ1Em    0x02 
640 #define   IER_IRQ2Em    0x04 
641 #define   IER_IRQ3Em    0x08 
642 #define   IER_IRQ4Em    0x10 
643 #define   IER_IRQ5Em    0x20 
644 #define INT_ISR __PORT8 0xFFFFFE15      /* IRQ Status Register */ 
645 #define   ISR_IRQ0Fm    0x01 
646 #define   ISR_IRQ1Fm    0x02 
647 #define   ISR_IRQ2Fm    0x04 
648 #define   ISR_IRQ3Fm    0x08 
649 #define   ISR_IRQ4Fm    0x10 
650 #define   ISR_IRQ5Fm    0x20 
651
652 #define DTC_DTCERA      __PORT8 0xFFFFFE16      /* DTC Enable Register A */ 
653 #define   DTCERA_DTCEA0m        0x01 
654 #define   DTCERA_DTCEA1m        0x02 
655 #define   DTCERA_DTCEA2m        0x04 
656 #define   DTCERA_DTCEA3m        0x08 
657 #define   DTCERA_DTCEA4m        0x10 
658 #define   DTCERA_DTCEA5m        0x20 
659 #define   DTCERA_DTCEA6m        0x40 
660 #define   DTCERA_DTCEA7m        0x80 
661 #define DTC_DTCERB      __PORT8 0xFFFFFE17      /* DTC Enable Register B */ 
662 #define   DTCERB_DTCEB0m        0x01 
663 #define   DTCERB_DTCEB1m        0x02 
664 #define   DTCERB_DTCEB2m        0x04 
665 #define   DTCERB_DTCEB3m        0x08 
666 #define   DTCERB_DTCEB4m        0x10 
667 #define   DTCERB_DTCEB5m        0x20 
668 #define   DTCERB_DTCEB6m        0x40 
669 #define   DTCERB_DTCEB7m        0x80 
670 #define DTC_DTCERC      __PORT8 0xFFFFFE18      /* DTC Enable Register C */ 
671 #define   DTCERC_DTCEC0m        0x01 
672 #define   DTCERC_DTCEC1m        0x02 
673 #define   DTCERC_DTCEC2m        0x04 
674 #define   DTCERC_DTCEC3m        0x08 
675 #define   DTCERC_DTCEC4m        0x10 
676 #define   DTCERC_DTCEC5m        0x20 
677 #define   DTCERC_DTCEC6m        0x40 
678 #define   DTCERC_DTCEC7m        0x80 
679 #define DTC_DTCERD      __PORT8 0xFFFFFE19      /* DTC Enable Register D */ 
680 #define   DTCERD_DTCED0m        0x01 
681 #define   DTCERD_DTCED1m        0x02 
682 #define   DTCERD_DTCED2m        0x04 
683 #define   DTCERD_DTCED3m        0x08 
684 #define   DTCERD_DTCED4m        0x10 
685 #define   DTCERD_DTCED5m        0x20 
686 #define   DTCERD_DTCED6m        0x40 
687 #define   DTCERD_DTCED7m        0x80 
688 #define DTC_DTCERE      __PORT8 0xFFFFFE1A      /* DTC Enable Register E */ 
689 #define   DTCERE_DTCEE0m        0x01 
690 #define   DTCERE_DTCEE1m        0x02 
691 #define   DTCERE_DTCEE2m        0x04 
692 #define   DTCERE_DTCEE3m        0x08 
693 #define   DTCERE_DTCEE4m        0x10 
694 #define   DTCERE_DTCEE5m        0x20 
695 #define   DTCERE_DTCEE6m        0x40 
696 #define   DTCERE_DTCEE7m        0x80 
697 #define DTC_DTCERF      __PORT8 0xFFFFFE1B      /* DTC Enable Register F */ 
698 #define   DTCERF_DTCEF0m        0x01 
699 #define   DTCERF_DTCEF1m        0x02 
700 #define   DTCERF_DTCEF2m        0x04 
701 #define   DTCERF_DTCEF3m        0x08 
702 #define   DTCERF_DTCEF4m        0x10 
703 #define   DTCERF_DTCEF5m        0x20 
704 #define   DTCERF_DTCEF6m        0x40 
705 #define   DTCERF_DTCEF7m        0x80 
706 #define DTC_DTCERG      __PORT8 0xFFFFFE1C      /* DTC Enable Register G */ 
707 #define   DTCERG_DTCEG0m        0x01 
708 #define   DTCERG_DTCEG1m        0x02 
709 #define   DTCERG_DTCEG2m        0x04 
710 #define   DTCERG_DTCEG3m        0x08 
711 #define   DTCERG_DTCEG4m        0x10 
712 #define   DTCERG_DTCEG5m        0x20 
713 #define   DTCERG_DTCEG6m        0x40 
714 #define   DTCERG_DTCEG7m        0x80 
715 #define DTC_DTVECR      __PORT8 0xFFFFFE1F      /* DTC Vector Register */ 
716 #define   DTVECR_DTVEC0m        0x01 
717 #define   DTVECR_DTVEC1m        0x02 
718 #define   DTVECR_DTVEC2m        0x04 
719 #define   DTVECR_DTVEC3m        0x08 
720 #define   DTVECR_DTVEC4m        0x10 
721 #define   DTVECR_DTVEC5m        0x20 
722 #define   DTVECR_DTVEC6m        0x40 
723 #define   DTVECR_SWDTEm 0x80 
724 /* Module Programmable Pulse Generator */
725 #define PPG_PCR __PORT8 0xFFFFFE26      /* PPG Output Control Register */ 
726 #define   PCR_G0CMS0m   0x01 
727 #define   PCR_G0CMS1m   0x02 
728 #define   PCR_G1CMS0m   0x04 
729 #define   PCR_G1CMS1m   0x08 
730 #define   PCR_G2CMS0m   0x10 
731 #define   PCR_G2CMS1m   0x20 
732 #define   PCR_G3CMS0m   0x40 
733 #define   PCR_G3CMS1m   0x80 
734 #define PPG_PMR __PORT8 0xFFFFFE27      /* PPG Output Mode Register */ 
735 #define   PMR_G0NOVm    0x01 
736 #define   PMR_G1NOVm    0x02 
737 #define   PMR_G2NOVm    0x04 
738 #define   PMR_G3INVm    0x08 
739 #define   PMR_G0INVm    0x10 
740 #define   PMR_G1INVm    0x20 
741 #define   PMR_G2INVm    0x40 
742 #define   PMM_G3INVm    0x80 
743 #define PPG_NDERH       __PORT8 0xFFFFFE28      /* Next Data Enable Register H */ 
744 #define   NDERH_NDER8m  0x01 
745 #define   NDERH_NDER9m  0x02 
746 #define   NDERH_NDER10m 0x04 
747 #define   NDERH_NDER11m 0x08 
748 #define   NDERH_NDER12m 0x10 
749 #define   NDERH_NDER13m 0x20 
750 #define   NDERH_NDER14m 0x40 
751 #define   NDERH_NDER15m 0x80 
752 #define PPG_NDERL       __PORT8 0xFFFFFE29      /* Next Data Enable Register L */ 
753 #define   NDERL_NDER0m  0x01 
754 #define   NDERL_NDER1m  0x02 
755 #define   NDERL_NDER2m  0x04 
756 #define   NDERL_NDER3m  0x08 
757 #define   NDERL_NDER4m  0x10 
758 #define   NDERL_NDER5m  0x20 
759 #define   NDERL_NDER6m  0x40 
760 #define   NDERL_NDER7m  0x80 
761 #define PPG_PODRH       __PORT8 0xFFFFFE2A      /* Output Data Register H */ 
762 #define   PODRH_POD8m   0x01 
763 #define   PODRH_POD9m   0x02 
764 #define   PODRH_POD10m  0x04 
765 #define   PODRH_POD11m  0x08 
766 #define   PODRH_POD12m  0x10 
767 #define   PODRH_POD13m  0x20 
768 #define   PODRH_POD14m  0x40 
769 #define   PODRH_POD15m  0x80 
770 #define PPG_PODRL       __PORT8 0xFFFFFE2B      /* Output Data Register L */ 
771 #define   PODRL_POD0m   0x01 
772 #define   PODRL_POD1m   0x02 
773 #define   PODRL_POD2m   0x04 
774 #define   PODRL_POD3m   0x08 
775 #define   PODRL_POD4m   0x10 
776 #define   PODRL_POD5m   0x20 
777 #define   PODRL_POD6m   0x40 
778 #define   PODRL_POD7m   0x80 
779 //#define PPG_NDRH      __PORT8 0xFFFFFE2C      /* Next data register H */  /* Use when group2 and group3 have the same output trigger selected */
780 #define   NDRH_NDR8m    0x01                    /* Use for group2 if group3 have different output triger to group2 */
781 #define   NDRH_NDR9m    0x02 
782 #define   NDRH_NDR10m   0x04 
783 #define   NDRH_NDR11m   0x08 
784 #define   NDRH_NDR12m   0x10 
785 #define   NDRH_NDR13m   0x20 
786 #define   NDRH_NDR14m   0x40 
787 #define   NDRH_NDR15m   0x80 
788 //#define PPG_NDRL      __PORT8 0xFFFFFE2D      /* Next data register L */  /* Use when group2 and group3 have the same output trigger selected */
789 #define   NDRL_NDR0m    0x01                    /* Use for group2 if group3 have different output triger to group2 */
790 #define   NDRL_NDR1m    0x02 
791 #define   NDRL_NDR2m    0x04 
792 #define   NDRL_NDR3m    0x08 
793 #define   NDRL_NDR4m    0x10 
794 #define   NDRL_NDR5m    0x20 
795 #define   NDRL_NDR6m    0x40 
796 #define   NDRL_NDR7m    0x80 
797 //#define PPG_NDRH      __PORT8 0xFFFFFE2E      /* Next Data Register H */ /* Use for group3 if group2 and group3 have different triggers */
798 #define   NDRH_NDR8m    0x01 
799 #define   NDRH_NDR9m    0x02 
800 #define   NDRH_NDR10m   0x04 
801 #define   NDRH_NDR11m   0x08 
802 //#define PPG_NDRL      __PORT8 0xFFFFFE2F      /* Next Data Register L */ /* Use for group3 if group2 and group3 have different triggers */
803 #define   NDRL_NDR0m    0x01 
804 #define   NDRL_NDR1m    0x02 
805 #define   NDRL_NDR2m    0x04 
806 #define   NDRL_NDR3m    0x08 
807 /* Module Port */
808 #define DIO_P1DDR       __PORT8 0xFFFFFE30      /* DIO 1 Data Direction Register */ 
809 #define   P1DDR_P10DDRm 0x01 
810 #define   P1DDR_P11DDRm 0x02 
811 #define   P1DDR_P12DDRm 0x04 
812 #define   P1DDR_P13DDRm 0x08 
813 #define   P1DDR_P14DDRm 0x10 
814 #define   P1DDR_P15DDRm 0x20 
815 #define   P1DDR_P16DDRm 0x40 
816 #define   P1DDR_P17DDRm 0x80 
817 #define DIO_P3DDR       __PORT8 0xFFFFFE32      /* DIO 3 Data Direction Register */ 
818 #define   P3DDR_P30DDRm 0x01 
819 #define   P3DDR_P31DDRm 0x02 
820 #define   P3DDR_P32DDRm 0x04 
821 #define   P3DDR_P33DDRm 0x08 
822 #define   P3DDR_P34DDRm 0x10 
823 #define   P3DDR_P35DDRm 0x20 
824 #define DIO_PADDR       __PORT8 0xFFFFFE39      /* DIO A Data Direction Register */ 
825 #define   PADDR_PA0DDRm 0x01 
826 #define   PADDR_PA1DDRm 0x02 
827 #define   PADDR_PA2DDRm 0x04 
828 #define   PADDR_PA3DDRm 0x08 
829 #define DIO_PBDDR       __PORT8 0xFFFFFE3A      /* DIO B Data Direction Register */ 
830 #define   PBDDR_PB0DDRm 0x01 
831 #define   PBDDR_PB1DDRm 0x02 
832 #define   PBDDR_PB2DDRm 0x04 
833 #define   PBDDR_PB3DDRm 0x08 
834 #define   PBDDR_PB4DDRm 0x10 
835 #define   PBDDR_PB5DDRm 0x20 
836 #define   PBDDR_PB6DDRm 0x40 
837 #define   PBDDR_PB7DDRm 0x80 
838 #define DIO_PCDDR       __PORT8 0xFFFFFE3B      /* DIO C Data Direction Register */ 
839 #define   PCDDR_PC0DDRm 0x01 
840 #define   PCDDR_PC1DDRm 0x02 
841 #define   PCDDR_PC2DDRm 0x04 
842 #define   PCDDR_PC3DDRm 0x08 
843 #define   PCDDR_PC4DDRm 0x10 
844 #define   PCDDR_PC5DDRm 0x20 
845 #define   PCDDR_PC6DDRm 0x40 
846 #define   PCDDR_PC7DDRm 0x80 
847 #define DIO_PDDDR       __PORT8 0xFFFFFE3C      /* DIO D Data Direction Register */ 
848 #define   PDDDR_PD0DDRm 0x01 
849 #define   PDDDR_PD1DDRm 0x02 
850 #define   PDDDR_PD2DDRm 0x04 
851 #define   PDDDR_PD3DDRm 0x08 
852 #define   PDDDR_PD4DDRm 0x10 
853 #define   PDDDR_PD5DDRm 0x20 
854 #define   PDDDR_PD6DDRm 0x40 
855 #define   PDDDR_PD7DDRm 0x80 
856 #define DIO_PEDDR       __PORT8 0xFFFFFE3D      /* DIO E Data Direction Register */ 
857 #define   PEDDR_PE0DDRm 0x01 
858 #define   PEDDR_PE1DDRm 0x02 
859 #define   PEDDR_PE2DDRm 0x04 
860 #define   PEDDR_PE3DDRm 0x08 
861 #define   PEDDR_PE4DDRm 0x10 
862 #define   PEDDR_PE5DDRm 0x20 
863 #define   PEDDR_PE6DDRm 0x40 
864 #define   PEDDR_PE7DDRm 0x80 
865 #define DIO_PFDDR       __PORT8 0xFFFFFE3E      /* DIO F Data Direction Register */ 
866 #define   PFDDR_PF0DDRm 0x01 
867 #define   PFDDR_PF3DDRm 0x08 
868 #define   PFDDR_PF4DDRm 0x10 
869 #define   PFDDR_PF5DDRm 0x20 
870 #define   PFDDR_PF6DDRm 0x40 
871 #define   PFDDR_PF7DDRm 0x80 
872 #define DIO_PAPCR       __PORT8 0xFFFFFE40      /* DIO A MOS Pull-Up Control Register */ 
873 #define   PAPCR_PA0PCRm 0x01 
874 #define   PAPCR_PA1PCRm 0x02 
875 #define   PAPCR_PA2PCRm 0x04 
876 #define   PAPCR_PA3PCRm 0x08 
877 #define DIO_PBPCR       __PORT8 0xFFFFFE41      /* DIO B MOS Pull-Up Control Register */ 
878 #define   PBPCR_PB0PCRm 0x01 
879 #define   PBPCR_PB1PCRm 0x02 
880 #define   PBPCR_PB2PCRm 0x04 
881 #define   PBPCR_PB3PCRm 0x08 
882 #define   PBPCR_PB4PCRm 0x10 
883 #define   PBPCR_PB5PCRm 0x20 
884 #define   PBPCR_PB6PCRm 0x40 
885 #define   PBPCR_PB7PCRm 0x80 
886 #define DIO_PCPCR       __PORT8 0xFFFFFE42      /* DIO C MOS Pull-Up Control Register */ 
887 #define   PCPCR_PC0PCRm 0x01 
888 #define   PCPCR_PC1PCRm 0x02 
889 #define   PCPCR_PC2PCRm 0x04 
890 #define   PCPCR_PC3PCRm 0x08 
891 #define   PCPCR_PC4PCRm 0x10 
892 #define   PCPCR_PC5PCRm 0x20 
893 #define   PCPCR_PC6PCRm 0x40 
894 #define   PCPCR_PC7PCRm 0x80 
895 #define DIO_PDPCR       __PORT8 0xFFFFFE43      /* DIO D MOS Pull-Up Control Register */ 
896 #define   PDPCR_PD0PCRm 0x01 
897 #define   PDPCR_PD1PCRm 0x02 
898 #define   PDPCR_PD2PCRm 0x04 
899 #define   PDPCR_PD3PCRm 0x08 
900 #define   PDPCR_PD4PCRm 0x10 
901 #define   PDPCR_PD5PCRm 0x20 
902 #define   PDPCR_PD6PCRm 0x40 
903 #define   PDPCR_PD7PCRm 0x80 
904 #define DIO_PEPCR       __PORT8 0xFFFFFE44      /* DIO E MOS Pull-Up Control Register */ 
905 #define   PEPCR_PE0PCRm 0x01 
906 #define   PEPCR_PE1PCRm 0x02 
907 #define   PEPCR_PE2PCRm 0x04 
908 #define   PEPCR_PE3PCRm 0x08 
909 #define   PEPCR_PE4PCRm 0x10 
910 #define   PEPCR_PE5PCRm 0x20 
911 #define   PEPCR_PE6PCRm 0x40 
912 #define   PEPCR_PE7PCRm 0x80 
913 #define DIO_P3ODR       __PORT8 0xFFFFFE46      /* DIO 3 Open Drain Control Register */ 
914 #define   P3ODR_P30ODRm 0x01 
915 #define   P3ODR_P31ODRm 0x02 
916 #define   P3ODR_P32ODRm 0x04 
917 #define   P3ODR_P33ODRm 0x08 
918 #define   P3ODR_P34ODRm 0x10 
919 #define   P3ODR_P35ODRm 0x20 
920 #define DIO_PAODR       __PORT8 0xFFFFFE47      /* DIO A Open Drain Control Register */ 
921 #define   PAODR_PA0ODRm 0x01 
922 #define   PAODR_PA1ODRm 0x02 
923 #define   PAODR_PA2ODRm 0x04 
924 #define   PAODR_PA3ODRm 0x08 
925 #define DIO_PBODR       __PORT8 0xFFFFFE48      /* DIO B Open Drain Control Register */ 
926 #define   PBODR_PB0ODRm 0x01 
927 #define   PBODR_PB1ODRm 0x02 
928 #define   PBODR_PB2ODRm 0x04 
929 #define   PBODR_PB3ODRm 0x08 
930 #define   PBODR_PB4ODRm 0x10 
931 #define   PBODR_PB5ODRm 0x20 
932 #define   PBODR_PB6ODRm 0x40 
933 #define   PBODR_PB7ODRm 0x80 
934 #define DIO_PCODR       __PORT8 0xFFFFFE49      /* DIO C Open Drain Control Register */ 
935 #define   PCODR_PC0ODRm 0x01 
936 #define   PCODR_PC1ODRm 0x02 
937 #define   PCODR_PC2ODRm 0x04 
938 #define   PCODR_PC3ODRm 0x08 
939 #define   PCODR_PC4ODRm 0x10 
940 #define   PCODR_PC5ODRm 0x20 
941 #define   PCODR_PC6ODRm 0x40 
942 #define   PCODR_PC7ODRm 0x80 
943 /* Module Time pulse unit */
944 #define TPU_TCR3        __PORT8 0xFFFFFE80      /* Timer Control Register 3 */ 
945 #define   TCR3_TPSC0m   0x01 
946 #define   TCR3_TPSC1m   0x02 
947 #define   TCR3_TPSC2m   0x04 
948 #define   TCR3_CKEG0m   0x08 
949 #define   TCR3_CKEG1m   0x10 
950 #define   TCR3_CCLR0m   0x20 
951 #define   TCR3_CCLR1m   0x40 
952 #define   TCR3_CCLR2m   0x80 
953 #define TPU_TMDR3       __PORT8 0xFFFFFE81      /* Timer Mode Register 3 */ 
954 #define   TMDR3_MD0m    0x01 
955 #define   TMDR3_MD1m    0x02 
956 #define   TMDR3_MD2m    0x04 
957 #define   TMDR3_MD3m    0x08 
958 #define   TMDR3_BFAm    0x10 
959 #define   TMDR3_BFBm    0x20 
960 #define TPU_TIOR3H      __PORT8 0xFFFFFE82      /* Timer IO Control Register 3H */ 
961 #define   TIOR3H_IOA0m  0x01 
962 #define   TIOR3H_IOA1m  0x02 
963 #define   TIOR3H_IOA2m  0x04 
964 #define   TIOR3H_IOA3m  0x08 
965 #define   TIOR3H_IOB0m  0x10 
966 #define   TIOR3H_IOB1m  0x20 
967 #define   TIOR3H_IOB2m  0x40 
968 #define   TIOR3H_IOB3m  0x80 
969 #define TPU_TIOR3L      __PORT8 0xFFFFFE83      /* Timer IO Control Register 3L */ 
970 #define   TIOR3L_IOC0m  0x01 
971 #define   TIOR3L_IOC1m  0x02 
972 #define   TIOR3L_IOC2m  0x04 
973 #define   TIOR3L_IOC3m  0x08 
974 #define   TIOR3L_IOD0m  0x10 
975 #define   TIOR3L_IOD1m  0x20 
976 #define   TIOR3L_IOD2m  0x40 
977 #define   TIOR3L_IOD3m  0x80 
978 #define TPU_TIER3       __PORT8 0xFFFFFE84      /* -Timer INT Enable Register 3 */ 
979 #define   TIER3_TGIEAm  0x01 
980 #define   TIER3_TGIEBm  0x02 
981 #define   TIER3_TGIECm  0x04 
982 #define   TIER3_TGIEDm  0x08 
983 #define   TIER3_TCIEVm  0x10 
984 #define   TIER3_TTGEm   0x80 
985 #define TPU_TSR3        __PORT8 0xFFFFFE85      /* Timer Status Register 3 */ 
986 #define   TSR3_TGFAm    0x01 
987 #define   TSR3_TGFBm    0x02 
988 #define   TSR3_TGFCm    0x04 
989 #define   TSR3_TGFDm    0x08 
990 #define   TSR3_TCFVm    0x10 
991 #define TPU_TCNT3       __PORT16 0xFFFFFE86     /* Timer Counter 3 */ 
992 #define TPU_TGR3A       __PORT16 0xFFFFFE88     /* Timer General Register 3A */ 
993 #define TPU_TGR3B       __PORT16 0xFFFFFE8A     /* Timer General Register 3B */ 
994 #define TPU_TGR3C       __PORT16 0xFFFFFE8C     /* Timer General Register 3C */ 
995 #define TPU_TGR3D       __PORT16 0xFFFFFE8E     /* Timer General Register 3D */ 
996 #define TPU_TCR4        __PORT8 0xFFFFFE90      /* Timer Control Register 4 */ 
997 #define   TCR4_TPSC0m   0x01 
998 #define   TCR4_TPSC1m   0x02 
999 #define   TCR4_TPSC2m   0x04 
1000 #define   TCR4_CKEG0m   0x08 
1001 #define   TCR4_CKEG1m   0x10 
1002 #define   TCR4_CCLR0m   0x20 
1003 #define   TCR4_CCLR1m   0x40 
1004 #define TPU_TMDR4       __PORT8 0xFFFFFE91      /* Timer Mode Register 4 */ 
1005 #define   TMDR4_MD0m    0x01 
1006 #define   TMDR4_MD1m    0x02 
1007 #define   TMDR4_MD2m    0x04 
1008 #define   TMDR4_MD3m    0x08 
1009 #define TPU_TIOR4       __PORT8 0xFFFFFE92      /* Timer IO Control Register 4 */ 
1010 #define   TIOR4_IOA0m   0x01 
1011 #define   TIOR4_IOA1m   0x02 
1012 #define   TIOR4_IOA2m   0x04 
1013 #define   TIOR4_IOA3m   0x08 
1014 #define   TIOR4_IOB0m   0x10 
1015 #define   TIOR4_IOB1m   0x20 
1016 #define   TIOR4_IOB2m   0x40 
1017 #define   TIOR4_IOB3m   0x80 
1018 #define TPU_TIER4       __PORT8 0xFFFFFE94      /* Timer INT Enable Register 4 */ 
1019 #define   TIER4_TGIEAm  0x01 
1020 #define   TIER4_TGIEBm  0x02 
1021 #define   TIER4_TCIEVm  0x10 
1022 #define   TIER4_TCIEUm  0x20 
1023 #define   TIER4_TTGEm   0x80 
1024 #define TPU_TSR4        __PORT8 0xFFFFFE95      /* Timer Status Register 4 */ 
1025 #define   TSR4_TGFAm    0x01 
1026 #define   TSR4_TGFBm    0x02 
1027 #define   TSR4_TCFVm    0x10 
1028 #define   TSR4_TCFUm    0x20 
1029 #define   TSR4_TCFDm    0x80 
1030 #define TPU_TCNT4       __PORT16 0xFFFFFE96     /* Timer Counter 4 */ 
1031 #define TPU_TGR4A       __PORT16 0xFFFFFE98     /* Timer General Register 4A */ 
1032 #define TPU_TGR4B       __PORT16 0xFFFFFE9A     /* Timer General Register 4B */ 
1033 #define TPU_TCR5        __PORT8 0xFFFFFEA0      /* Timer Control Register 5 */ 
1034 #define   TCR5_TPSC0m   0x01 
1035 #define   TCR5_TPSC1m   0x02 
1036 #define   TCR5_TPSC2m   0x04 
1037 #define   TCR5_CKEG0m   0x08 
1038 #define   TCR5_CKEG1m   0x10 
1039 #define   TCR5_CCLR0m   0x20 
1040 #define   TCR5_CCLR1m   0x40 
1041 #define TPU_TMDR5       __PORT8 0xFFFFFEA1      /* Timer Mode Register 5 */ 
1042
1043 #define TPU_TIOR5       __PORT8 0xFFFFFEA2      /* Timer IO Control Register 5 */ 
1044 #define   TIOR5_IOA0m   0x01 
1045 #define   TIOR5_IOA1m   0x02 
1046 #define   TIOR5_IOA2m   0x04 
1047 #define   TIOR5_IOA3m   0x08 
1048 #define   TIOR5_IOB0m   0x10 
1049 #define   TIOR5_IOB1m   0x20 
1050 #define   TIOR5_IOB2m   0x40 
1051 #define   TIOR5_IOB3m   0x80 
1052 #define TPU_TIER5       __PORT8 0xFFFFFEA4      /* Timer INT Enable Register 5 */ 
1053 #define   TIER5_TGIEAm  0x01 
1054 #define   TIER5_TGIEBm  0x02 
1055 #define   TIER5_TCIEVm  0x10 
1056 #define   TIER5_TCIEUm  0x20 
1057 #define   TIER5_TTGEm   0x80 
1058 #define TPU_TSR5        __PORT8 0xFFFFFEA5      /* Timer Status Register 5 */ 
1059 #define   TSR5_TGFAm    0x01 
1060 #define   TSR5_TGFBm    0x02 
1061 #define   TSR5_TCFVm    0x10 
1062 #define   TSR5_TCFUm    0x20 
1063 #define   TSR5_TCFDm    0x80 
1064 #define TPU_TCNT5       __PORT16 0xFFFFFEA6     /* Timer Counter 5 */ 
1065 #define TPU_TGR5A       __PORT16 0xFFFFFEA8     /* Timer General Register 5A */ 
1066 #define TPU_TGR5B       __PORT16 0xFFFFFEAA     /* Timer General Register 5B */ 
1067 #define TPU_TSTR        __PORT8 0xFFFFFEB0      /* Timer Start Register */ 
1068 #define   TSTR_CST0m    0x01 
1069 #define   TSTR_CST1m    0x02 
1070 #define   TSTR_CST2m    0x04 
1071 #define   TSTR_CST3m    0x08 
1072 #define   TSTR_CST4m    0x10 
1073 #define   TSTR_CST5m    0x20 
1074 #define TPU_TSYR        __PORT8 0xFFFFFEB1      /* Timer Synchro Register */ 
1075 #define   TSYR_SYNC0m   0x01 
1076 #define   TSYR_SYNC1m   0x02 
1077 #define   TSYR_SYNC2m   0x04 
1078 #define   TSYR_SYNC3m   0x08 
1079 #define   TSYR_SYNC4m   0x10 
1080 #define   TSYR_SYNC5m   0x20 
1081 /* Module Interrupt */
1082 #define INT_IPRA        __PORT8 0xFFFFFEC0      /* Interrupt Priority Register A */
1083 #define   IPRA_IPR0m    0x01 
1084 #define   IPRA_IPR1m    0x02 
1085 #define   IPRA_IPR2m    0x04 
1086 #define   IPRA_IPR4m    0x10 
1087 #define   IPRA_IPR5m    0x20 
1088 #define   IPRA_IPR6m    0x40 
1089 #define INT_IPRB        __PORT8 0xFFFFFEC1      /* Interrupt Priority Register B */
1090 #define   IPRB_IPR0m    0x01 
1091 #define   IPRB_IPR1m    0x02 
1092 #define   IPRB_IPR2m    0x04 
1093 #define   IPRB_IPR4m    0x10 
1094 #define   IPRB_IPR5m    0x20 
1095 #define   IPRB_IPR6m    0x40 
1096 #define INT_IPRC        __PORT8 0xFFFFFEC2      /* Interrupt Priority Register C */
1097 #define   IPRC_IPR0m    0x01 
1098 #define   IPRC_IPR1m    0x02 
1099 #define   IPRC_IPR2m    0x04 
1100 #define INT_IPRD        __PORT8 0xFFFFFEC3      /* Interrupt Priority Register D */
1101 #define   IPRD_IPR4m    0x10 
1102 #define   IPRD_IPR5m    0x20 
1103 #define   IPRD_IPR6m    0x40 
1104 #define INT_IPRE        __PORT8 0xFFFFFEC4      /* Interrupt Priority Register E */
1105 #define   IPRE_IPR0m    0x01 
1106 #define   IPRE_IPR1m    0x02 
1107 #define   IPRE_IPR2m    0x04 
1108 #define   IPRE_IPR4m    0x10 
1109 #define   IPRE_IPR5m    0x20 
1110 #define   IPRE_IPR6m    0x40 
1111 #define INT_IPRF        __PORT8 0xFFFFFEC5      /* Interrupt Priority Register F */
1112 #define   IPRF_IPR0m    0x01 
1113 #define   IPRF_IPR1m    0x02 
1114 #define   IPRF_IPR2m    0x04 
1115 #define   IPRF_IPR4m    0x10 
1116 #define   IPRF_IPR5m    0x20 
1117 #define   IPRF_IPR6m    0x40 
1118 #define INT_IPRG        __PORT8 0xFFFFFEC6      /* Interrupt Priority Register G */
1119 #define   IPRG_IPR0m    0x01 
1120 #define   IPRG_IPR1m    0x02 
1121 #define   IPRG_IPR2m    0x04 
1122 #define   IPRG_IPR4m    0x10 
1123 #define   IPRG_IPR5m    0x20 
1124 #define   IPRG_IPR6m    0x40 
1125 #define INT_IPRH        __PORT8 0xFFFFFEC7      /* Interrupt Priority Register H */
1126 #define   IPRH_IPR0m    0x01 
1127 #define   IPRH_IPR1m    0x02 
1128 #define   IPRH_IPR2m    0x04 
1129 #define   IPRH_IPR4m    0x10 
1130 #define   IPRH_IPR5m    0x20 
1131 #define   IPRH_IPR6m    0x40 
1132 #define INT_IPRJ        __PORT8 0xFFFFFEC9      /* Interrupt Priority Register J */
1133 #define   IPRJ_IPR0m    0x01 
1134 #define   IPRJ_IPR1m    0x02 
1135 #define   IPRJ_IPR2m    0x04 
1136 #define INT_IPRK        __PORT8 0xFFFFFECA      /* Interrupt Priority Register K */
1137 #define   IPRK_IPR0m    0x01 
1138 #define   IPRK_IPR1m    0x02 
1139 #define   IPRK_IPR2m    0x04 
1140 #define   IPRK_IPR4m    0x10 
1141 #define   IPRK_IPR5m    0x20 
1142 #define   IPRK_IPR6m    0x40 
1143 #define INT_IPRM        __PORT8 0xFFFFFECC      /* Interrupt Priority Register M */ 
1144 #define   IPRM_IPR0m    0x01 
1145 #define   IPRM_IPR1m    0x02 
1146 #define   IPRM_IPR2m    0x04 
1147 #define   IPRM_IPR4m    0x10 
1148 #define   IPRM_IPR5m    0x20 
1149 #define   IPRM_IPR6m    0x40 
1150 /* Module BUS controler */ 
1151 #define BUS_ABWCR       __PORT8 0xFFFFFED0      /* Bus Width Control Register */ 
1152 #define   ABWCR_ABW0m   0x01 
1153 #define   ABWCR_ABW1m   0x02 
1154 #define   ABWCR_ABW2m   0x04 
1155 #define   ABWCR_ABW3m   0x08 
1156 #define   ABWCR_ABW4m   0x10 
1157 #define   ABWCR_ABW5m   0x20 
1158 #define   ABWCR_ABW6m   0x40 
1159 #define   ABWCR_ABW7m   0x80 
1160 #define BUS_ASTCR       __PORT8 0xFFFFFED1      /* Access State Control Register */ 
1161 #define   ASTCR_AST0m   0x01 
1162 #define   ASTCR_AST1m   0x02 
1163 #define   ASTCR_AST2m   0x04 
1164 #define   ASTCR_AST3m   0x08 
1165 #define   ASTCR_AST4m   0x10 
1166 #define   ASTCR_AST5m   0x20 
1167 #define   ASTCR_AST6m   0x40 
1168 #define   ASTCR_AST7m   0x80 
1169 #define BUS_WCRH        __PORT8 0xFFFFFED2      /* Wait Control Register H */ 
1170 #define   WCRH_W40m     0x01 
1171 #define   WCRH_W41m     0x02 
1172 #define   WCRH_W50m     0x04 
1173 #define   WCRH_W51m     0x08 
1174 #define   WCRH_W60m     0x10 
1175 #define   WCRH_W61m     0x20 
1176 #define   WCRH_W70m     0x40 
1177 #define   WCRH_W71m     0x80 
1178 #define BUS_WCRL        __PORT8 0xFFFFFED3      /* Wait Control Register L */ 
1179 #define   WCRL_W00m     0x01 
1180 #define   WCRL_W01m     0x02 
1181 #define   WCRL_W10m     0x04 
1182 #define   WCRL_W11m     0x08 
1183 #define   WCRL_W20m     0x10 
1184 #define   WCRL_W21m     0x20 
1185 #define   WCRL_W30m     0x40 
1186 #define   WCRL_W31m     0x80 
1187 #define BUS_BCRH        __PORT8 0xFFFFFED4      /* Bus Control Register H */ 
1188 #define   BCRH_BRSTS0m  0x08 
1189 #define   BCRH_BRSTS1m  0x10 
1190 #define   BCRH_BRSTRMm  0x20 
1191 #define   BCRH_ICIS0m   0x40 
1192 #define   BCRH_ICIS1m   0x80 
1193 #define BUS_BCRL        __PORT8 0xFFFFFED5      /* Bus Control Register L */ 
1194 #define   BCRL_WDBEm    0x02 
1195 /* Module Flash */
1196 #define FLM_RAMER       __PORT8 0xFFFFFEDB      /* RAM Emulation Register */ 
1197 #define   RAMER_RAM0m   0x01 
1198 #define   RAMER_RAM1m   0x02 
1199 #define   RAMER_RAM2m   0x04
1200 #define   RAMER_RAMxm   0x07  
1201 #define   RAMER_RAMSm   0x08 
1202
1203 /* Module Port */
1204 #define DIO_P1DR        __PORT8 0xFFFFFF00      /* DIO 1 Data Register */ 
1205 #define   P1DR_P10DRm   0x01 
1206 #define   P1DR_P11DRm   0x02 
1207 #define   P1DR_P12DRm   0x04 
1208 #define   P1DR_P13DRm   0x08 
1209 #define   P1DR_P14DRm   0x10 
1210 #define   P1DR_P15DRm   0x20 
1211 #define   P1DR_P16DRm   0x40 
1212 #define   P1DR_P17DRm   0x80 
1213 #define DIO_P3DR        __PORT8 0xFFFFFF02      /* DIO 3 Data Register */ 
1214 #define   P3DR_P30DRm   0x01 
1215 #define   P3DR_P31DRm   0x02 
1216 #define   P3DR_P32DRm   0x04 
1217 #define   P3DR_P33DRm   0x08 
1218 #define   P3DR_P34DRm   0x10 
1219 #define   P3DR_P35DRm   0x20 
1220 #define DIO_PADR        __PORT8 0xFFFFFF09      /* DIO A Data Register */ 
1221 #define   PADR_PA0DRm   0x01 
1222 #define   PADR_PA1DRm   0x02 
1223 #define   PADR_PA2DRm   0x04 
1224 #define   PADR_PA3DRm   0x08 
1225 #define DIO_PBDR        __PORT8 0xFFFFFF0A      /* DIO B Data Register */ 
1226 #define   PBDR_PB0DRm   0x01 
1227 #define   PBDR_PB1DRm   0x02 
1228 #define   PBDR_PB2DRm   0x04 
1229 #define   PBDR_PB3DRm   0x08 
1230 #define   PBDR_PB4DRm   0x10 
1231 #define   PBDR_PB5DRm   0x20 
1232 #define   PBDR_PB6DRm   0x40 
1233 #define   PBDR_PB7DRm   0x80 
1234 #define DIO_PCDR        __PORT8 0xFFFFFF0B      /* DIO C Data Register */ 
1235 #define   PCDR_PC0DRm   0x01 
1236 #define   PCDR_PC1DRm   0x02 
1237 #define   PCDR_PC2DRm   0x04 
1238 #define   PCDR_PC3DRm   0x08 
1239 #define   PCDR_PC4DRm   0x10 
1240 #define   PCDR_PC5DRm   0x20 
1241 #define   PCDR_PC6DRm   0x40 
1242 #define   PCDR_PC7DRm   0x80 
1243 #define DIO_PDDR        __PORT8 0xFFFFFF0C      /* DIO D Data Register */ 
1244 #define   PDDR_PD0DRm   0x01 
1245 #define   PDDR_PD1DRm   0x02 
1246 #define   PDDR_PD2DRm   0x04 
1247 #define   PDDR_PD3DRm   0x08 
1248 #define   PDDR_PD4DRm   0x10 
1249 #define   PDDR_PD5DRm   0x20 
1250 #define   PDDR_PD6DRm   0x40 
1251 #define   PDDR_PD7DRm   0x80 
1252 #define DIO_PEDR        __PORT8 0xFFFFFF0D      /* DIO E Data Register */ 
1253 #define   PEDR_PE0DRm   0x01 
1254 #define   PEDR_PE1DRm   0x02 
1255 #define   PEDR_PE2DRm   0x04 
1256 #define   PEDR_PE3DRm   0x08 
1257 #define   PEDR_PE4DRm   0x10 
1258 #define   PEDR_PE5DRm   0x20 
1259 #define   PEDR_PE6DRm   0x40 
1260 #define   PEDR_PE7DRm   0x80 
1261 #define DIO_PFDR        __PORT8 0xFFFFFF0E      /* DIO F Data Register */ 
1262 #define   PFDR_PF0DRm   0x01 
1263 #define   PFDR_PF1DRm   0x02 
1264 #define   PFDR_PF2DRm   0x04 
1265 #define   PFDR_PF3DRm   0x08 
1266 #define   PFDR_PF4DRm   0x10 
1267 #define   PFDR_PF5DRm   0x20 
1268 #define   PFDR_PF6DRm   0x40 
1269 #define   PFDR_PF7DRm   0x80 
1270
1271 /* Module Time pulse unit */  //see other definitions at the end of the file
1272 #define TPU_TCR0        __PORT8 0xFFFFFF10      /* Timer Control Register 0 */ 
1273 #define   TCR0_TPSC0m   0x01 
1274 #define   TCR0_TPSC1m   0x02 
1275 #define   TCR0_TPSC2m   0x04 
1276 #define   TCR0_CKEG0m   0x08 
1277 #define   TCR0_CKEG1m   0x10 
1278 #define   TCR0_CCLR0m   0x20 
1279 #define   TCR0_CCLR1m   0x40 
1280 #define   TCR0_CCLR2m   0x80 
1281 #define TPU_TMDR0       __PORT8 0xFFFFFF11      /* Timer Mode Register 0 */ 
1282 #define   TMDR0_MD0m    0x01 
1283 #define   TMDR0_MD1m    0x02 
1284 #define   TMDR0_MD2m    0x04 
1285 #define   TMDR0_MD3m    0x08 
1286 #define   TMDR0_BFAm    0x10 
1287 #define   TMDR0_BFBm    0x20 
1288 #define TPU_TIOR0H      __PORT8 0xFFFFFF12      /* Timer IO Control Register 0H */ 
1289 #define   TIOR0H_IOA0m  0x01 
1290 #define   TIOR0H_IOA1m  0x02 
1291 #define   TIOR0H_IOA2m  0x04 
1292 #define   TIOR0H_IOA3m  0x08 
1293 #define   TIOR0H_IOB0m  0x10 
1294 #define   TIOR0H_IOB1m  0x20 
1295 #define   TIOR0H_IOB2m  0x40 
1296 #define   TIOR0H_IOB3m  0x80 
1297 #define TPU_TIOR0L      __PORT8 0xFFFFFF13      /* Timer IO Control Register 0L */ 
1298 #define   TIOR0L_IOC0m  0x01 
1299 #define   TIOR0L_IOC1m  0x02 
1300 #define   TIOR0L_IOC2m  0x04 
1301 #define   TIOR0L_IOC3m  0x08 
1302 #define   TIOR0L_IOD0m  0x10 
1303 #define   TIOR0L_IOD1m  0x20 
1304 #define   TIOR0L_IOD2m  0x40 
1305 #define   TIOR0L_IOD3m  0x80 
1306 #define TPU_TIER0       __PORT8 0xFFFFFF14      /* Timer INT Enable Register 0 */ 
1307 #define   TIER0_TGIEAm  0x01 
1308 #define   TIER0_TGIEBm  0x02 
1309 #define   TIER0_TGIECm  0x04 
1310 #define   TIER0_TGIEDm  0x08 
1311 #define   TIER0_TCIEVm  0x10 
1312 #define   TIER0_TTGEm   0x80 
1313 #define TPU_TSR0        __PORT8 0xFFFFFF15      /* Timer Status Register 0 */ 
1314 #define   TSR0_TGFAm    0x01 
1315 #define   TSR0_TGFBm    0x02 
1316 #define   TSR0_TGFCm    0x04 
1317 #define   TSR0_TGFDm    0x08 
1318 #define   TSR0_TCFVm    0x10 
1319 #define TPU_TCNT0       __PORT16 0xFFFFFF16     /* Timer Counter 0 */ 
1320 #define TPU_TGR0A       __PORT16 0xFFFFFF18     /* Timer General Register 0A */ 
1321 #define TPU_TGR0B       __PORT16 0xFFFFFF1A     /* Timer General Register 0B */ 
1322 #define   by_standbym   0x02 
1323 #define   data_tom      0x02 
1324 #define   data_tom      0x02 
1325 #define   to_slavem     0x02 
1326 #define TPU_TGR0C       __PORT16 0xFFFFFF1C     /* Timer General Register 0C */ 
1327 #define TPU_TGR0D       __PORT16 0xFFFFFF1E     /* Timer General Register 0D */ 
1328 #define TPU_TCR1        __PORT8 0xFFFFFF20      /* Timer Control Register 1 */ 
1329 #define   TCR1_TPSC0m   0x01 
1330 #define   TCR1_TPSC1m   0x02 
1331 #define   TCR1_TPSC2m   0x04 
1332 #define   TCR1_CKEG0m   0x08 
1333 #define   TCR1_CKEG1m   0x10 
1334 #define   TCR1_CCLR0m   0x20 
1335 #define   TCR1_CCLR1m   0x40 
1336 #define TPU_TMDR1       __PORT8 0xFFFFFF21      /* Timer Mode Register 1 */ 
1337 #define   TMDR1_MD0m    0x01 
1338 #define   TMDR1_MD1m    0x02 
1339 #define   TMDR1_MD2m    0x04 
1340 #define   TMDR1_MD3m    0x08 
1341 #define TPU_TIOR1       __PORT8 0xFFFFFF22      /* Timer IO Control Register 1 */ 
1342 #define   TIOR1_IOA0m   0x01 
1343 #define   TIOR1_IOA1m   0x02 
1344 #define   TIOR1_IOA2m   0x04 
1345 #define   TIOR1_IOA3m   0x08 
1346 #define   TIOR1_IOB0m   0x10 
1347 #define   TIOR1_IOB1m   0x20 
1348 #define   TIOR1_IOB2m   0x40 
1349 #define   TIOR1_IOB3m   0x80 
1350 #define TPU_TIER1       __PORT8 0xFFFFFF24      /* Timer INT Enable Register 1 */ 
1351 #define   TIER1_TGIEAm  0x01 
1352 #define   TIER1_TGIEBm  0x02 
1353 #define   TIER1_TCIEVm  0x10 
1354 #define   TIER1_TCIEUm  0x20 
1355 #define   TIER1_TTGEm   0x80 
1356 #define TPU_TSR1        __PORT8 0xFFFFFF25      /* Timer Status Register 1 */ 
1357 #define   TSR1_TGFAm    0x01 
1358 #define   TSR1_TGFBm    0x02 
1359 #define   TSR1_TCFVm    0x10 
1360 #define   TSR1_TCFUm    0x20 
1361 #define   TSR1_TCFDm    0x80 
1362 #define TPU_TCNT1       __PORT16 0xFFFFFF26     /* Timer Counter 1 */ 
1363 #define TPU_TGR1A       __PORT16 0xFFFFFF28     /* Timer General Register 1A */ 
1364 #define TPU_TGR1B       __PORT16 0xFFFFFF2A     /* Timer General Register 1B */ 
1365 #define TPU_TCR2        __PORT8 0xFFFFFF30      /* Timer Control Register 2 */ 
1366 #define   TCR2_TPSC0m   0x01 
1367 #define   TCR2_TPSC1m   0x02 
1368 #define   TCR2_TPSC2m   0x04 
1369 #define   TCR2_CKEG0m   0x08 
1370 #define   TCR2_CKEG1m   0x10 
1371 #define   TCR2_CCLR0m   0x20 
1372 #define   TCR2_CCLR1m   0x40 
1373 #define TPU_TMDR2       __PORT8 0xFFFFFF31      /* Timer Mode Register 2 */ 
1374 #define   TMDR2_MD0m    0x01 
1375 #define   TMDR2_MD1m    0x02 
1376 #define   TMDR2_MD2m    0x04 
1377 #define   TMDR2_MD3m    0x08 
1378 #define TPU_TIOR2       __PORT8 0xFFFFFF32      /* Timer IO Control Register 2 */ 
1379 #define   TIOR2_IOA0m   0x01 
1380 #define   TIOR2_IOA1m   0x02 
1381 #define   TIOR2_IOA2m   0x04 
1382 #define   TIOR2_IOA3m   0x08 
1383 #define   TIOR2_IOB0m   0x10 
1384 #define   TIOR2_IOB1m   0x20 
1385 #define   TIOR2_IOB2m   0x40 
1386 #define   TIOR2_IOB3m   0x80 
1387 #define TPU_TIER2       __PORT8 0xFFFFFF34      /* Timer INT Enable Register 2 */ 
1388 #define   TIER2_TGIEAm  0x01 
1389 #define   TIER2_TGIEBm  0x02 
1390 #define   TIER2_TCIEVm  0x10 
1391 #define   TIER2_TCIEUm  0x20 
1392 #define   TIER2_TTGEm   0x80 
1393 #define TPU_TSR2        __PORT8 0xFFFFFF35      /* Timer Status Register 2 */ 
1394 #define   TSR2_TGFAm    0x01 
1395 #define   TSR2_TGFBm    0x02 
1396 #define   TSR2_TCFVm    0x10 
1397 #define   TSR2_TCFUm    0x20 
1398 #define   TSR2_TCFDm    0x80 
1399 #define TPU_TCNT2       __PORT16 0xFFFFFF36     /* Timer Counter 2 */ 
1400 #define TPU_TGR2A       __PORT16 0xFFFFFF38     /* Timer General Register 2A */ 
1401 #define TPU_TGR2B       __PORT16 0xFFFFFF3A     /* Timer General Register 2B */ 
1402
1403 /* Module Watchdog timer */
1404 /* WDT0 register definitions start */
1405 #define WDT_WTCSR0r     __PORT8 0xFFFFFF74      /* Timer ControlStatus Register 0 (RD/WC7) */ 
1406 #define WDT_WTCSR0w     __PORT16 0xFFFFFF74     /*   writte address - password 0xa500  */ 
1407 #define   WTCSR0_CKS0m  0x01 
1408 #define   WTCSR0_CKS1m  0x02 
1409 #define   WTCSR0_CKS2m  0x04 
1410 #define   WTCSR0_CKSxm  0x07
1411 #define   WTCSR0_TMEm   0x20 
1412 #define   WTCSR0_WTITm  0x40 
1413 #define   WTCSR0_WOVFm  0x80 
1414 #define WDT_WTCNT0r     __PORT8 0xFFFFFF75      /* Timer Counter 0 (RD) */ 
1415 #define WDT_WTCNT0w     __PORT16 0xFFFFFF74     /*   writte address - password 0x5a00  */ 
1416 #define WDT_WRSTCSRr    __PORT8 0xFFFFFF77      /* Reset ControlStatus Register (RD/WC7) */ 
1417 #define WDT_WRSTCSRw    __PORT16 0xFFFFFF76     /*   clear WOVF - password 0xa500 */ 
1418                                                 /*   set bits   - password 0x5a00 */ 
1419 #define   WRSTCSR_RSTSm 0x20 
1420 #define   WRSTCSR_RSTEm 0x40 
1421 #define   WRSTCSR_WOVFm 0x80 
1422 /* WDT0 register definitions end */
1423
1424 /* SCI common registers and bits start */
1425
1426 /*   Receive Data Register (RDR) */
1427 /*   Transmit Data Register (TDR) */
1428 /*   Serial Mode Register (SMR) */
1429 #define   SMR_CKS0m     0x01
1430 #define   SMR_CKS1m     0x02
1431 #define   SMR_CKSxm     0x03    /* Clock 3=/64, 2=/16, 1=/4, 0=/1 */
1432 #define   SMR_MPm       0x04    /* 1=Multiprocessor format selected */
1433 #define   SMR_STOPm     0x08    /* 1=2 stop bits, 0=1 stop bit */
1434 #define   SMR_OEm       0x10    /* 1=Odd parity, 0=Even */
1435 #define   SMR_PEm       0x20    /* 1=Parity addition and checking enabled */
1436 #define   SMR_CHRm      0x40    /* 1=7-bit data, 0=8-bit */
1437 #define   SMR_CAm       0x80    /* 1=Clocked, 0=Asynchronous */
1438 #define   SCI_SMR_8N1   (0|0|0)
1439 #define   SCI_SMR_7N1   (SMR_CHRm|0|0)
1440 #define   SCI_SMR_8N2   (0       |0|SMR_STOPm)
1441 #define   SCI_SMR_7N2   (SMR_CHRm|0|SMR_STOPm)
1442 #define   SCI_SMR_8E1   (0       |SMR_PEm|0)
1443 #define   SCI_SMR_7E1   (SMR_CHRm|SMR_PEm|0)
1444 #define   SCI_SMR_8O1   (0       |SMR_PEm|SMR_OEm)
1445 #define   SCI_SMR_7O1   (SMR_CHRm|SMR_PEm|SMR_OEm)
1446 /*   Serial Control Register (SCR) */
1447 #define   SCR_CKE0m     0x01    /* Clock Enable */
1448 #define   SCR_CKE1m     0x02    /*  */
1449 #define   SCR_TEIEm     0x04    /* Transmit end interrupt (TEI) */
1450 #define   SCR_MPIEm     0x08    /* Only multiprocessor RXI interrupt enabled */
1451 #define   SCR_REm       0x10    /* Reception enabled */
1452 #define   SCR_TEm       0x20    /* Transmission enabled* */
1453 #define   SCR_RIEm      0x40    /* RXI interrupt requests enabled */ 
1454 #define   SCR_TIEm      0x80    /* TXI interrupt requests enabled */ 
1455 /*   Serial Status Register (SSR) */
1456 #define   SSR_MPBTm     0x01    /* Value to send as bit 8  */
1457 #define   SSR_MPBm      0x02    /* MP Bit 8 received value */
1458 #define   SSR_TENDm     0x04    /* Transmit End */
1459 #define   SSR_PERm      0x08    /* Parity error */
1460 #define   SSR_FERm      0x10    /* Framing error */
1461 #define   SSR_ORERm     0x20    /* Receive overflow */
1462 #define   SSR_RDRFm     0x40    /* Set when reception ends normally */
1463 #define   SSR_TDREm     0x80    /* Set when TDR empty or SCR_TE=0 */
1464 /*   Bit Rate Register (BRR) */
1465 /*     for async set to N=Fsys/(32*2^(2n)*baud)-1  where n=SMR_CKS */
1466 /*     for sync set to  N=Fsys/(4*2^(2n)*baud)-1 */
1467 /*   Smart Card Mode Register (SCMR) */
1468 #define   SCMR_SMIFm    0x01    /* 1=Smart card interface enabled */
1469 #define   SCMR_SINVm    0x04    /* 1=TDR contents inverted */
1470 #define   SCMR_SDIRm    0x08    /* 1=MSB-first, 0=LSB-first */
1471 /*   I2C Bus Mode / Slave Address Register (ICMR/SAR)*/ 
1472 /*     only for SCI0 and SCI1 */
1473 #define   ICMR_BC0m     0x01    /* Bit Counter */
1474 #define   ICMR_BC1m     0x02 
1475 #define   ICMR_BC2m     0x04 
1476 #define   ICMR_BCm      (ICMR_BC0m|ICMR_BC1m|ICMR_BC2m)
1477 #define   ICMR_CKS0m    0x08    /* Serial Clock Select */
1478 #define   ICMR_CKS1m    0x10 
1479 #define   ICMR_CKS2m    0x20 
1480 #define   ICMR_CKSm     (ICMR_CKS0m|ICMR_CKS1m|ICMR_CKS2m) 
1481 #define   ICMR_WAITm    0x40    /* 1 .. Wait between data and acknowledge */
1482 #define   ICMR_MLSm     0x80    /* 0 .. MSB-first / 1 .. LSB-first */ 
1483 /*   I2C Bus Control Register (ICCR) */
1484 #define   ICCR_SCPm     0x01    /* Write 0 with BBSY to start/stop */
1485 #define   ICCR_IRICm    0x02    /* 1 => interrupt requested */
1486 #define   ICCR_BBSYm    0x04    /* 1 => bus is busy */
1487 #define   ICCR_ACKEm    0x08    /* 1 => stop when no ACK detected */
1488 #define   ICCR_TRSm     0x10    /* 1 .. transmit / 0 .. receive */
1489 #define   ICCR_MSTm     0x20    /* 1 .. master mode / 0 .. slave mode */
1490 #define   ICCR_IEICm    0x40    /* Interrupts enabled */
1491 #define   ICCR_ICEm     0x80    /* 1 .. IIC enabled (ICMR,ICDR accessible) */
1492                                 /* 0 .. IIC disabled (SAR,SARX accessible) */
1493 /*   IIC Bus Status Register (ICSR) */
1494 #define   ICSR_ACKBm    0x01    /* Acknowledge Bit */
1495 #define   ICSR_ADZm     0x02    /* General Call Address Recognition */
1496 #define   ICSR_AASm     0x04    /* Slave Address Recognition */
1497 #define   ICSR_ALm      0x08    /* Arbitration Lost */
1498 #define   ICSR_AASXm    0x10    /* Second Slave Address Recognition */
1499 #define   ICSR_IRTRm    0x20    /* Continuous Transmission/Reception Interrupt */
1500 #define   ICSR_STOPm    0x40    /* Normal Stop Condition Detection Flag */
1501 #define   ICSR_ESTPm    0x80    /* Error Stop Condition Detection Flag */
1502
1503 /* SCI common registers and bits end */
1504
1505
1506 #define SCI_SMR0        __PORT8 0xFFFFFF78      /* Serial Mode Register 0 */ 
1507 #define   SMR0_CKS0m    0x01 
1508 #define   SMR0_CKS1m    0x02 
1509 #define   SMR0_MPm      0x04 
1510 #define   SMR0_STOPm    0x08 
1511 #define   SMR0_OEm      0x10 
1512 #define   SMR0_PEm      0x20 
1513 #define   SMR0_CHRm     0x40 
1514 #define   SMR0_CAm      0x80 
1515 #define Smart_SMR0      __PORT8 0xFFFFFF78      /* Smart Card Mode Register 0 */ 
1516 #define IIC_ICCR0       __PORT8 0xFFFFFF78      /* I2C Bus Control Register */
1517 #define SCI_BRR0        __PORT8 0xFFFFFF79      /* Bit Rate Register 0 */ 
1518 #define Smart_BRR0      __PORT8 0xFFFFFF79      /* Bit Rate Register 0 */
1519 #define IIC_ICSR0       __PORT8 0xFFFFFF79      /* I2C Bus Status Register */ 
1520 #define SCI_SCR0        __PORT8 0xFFFFFF7A      /* Serial Control Register 0 */ 
1521 #define Smart_SCR0      __PORT8 0xFFFFFF7A      /* Serial Control Register 0 */ 
1522 #define   SCR0_CKE0m    0x01 
1523 #define   SCR0_CKE1m    0x02 
1524 #define   SCR0_TEIEm    0x04 
1525 #define   SCR0_MPIEm    0x08 
1526 #define   SCR0_REm      0x10 
1527 #define   SCR0_TEm      0x20 
1528 #define   SCR0_RIEm     0x40 
1529 #define   SCR0_TIEm     0x80 
1530 #define SCI_TDR0        __PORT8 0xFFFFFF7B      /* Transmit Data Register 0 */ 
1531 #define Smart_TDR0      __PORT8 0xFFFFFF7B      /* Transmit Data Register 0 */ 
1532 #define SCI_SSR0        __PORT8 0xFFFFFF7C      /* Serial Status Register 0 */ 
1533 #define   SSR0_MPBTm    0x01 
1534 #define   SSR0_MPBm     0x02 
1535 #define   SSR0_TENDm    0x04 
1536 #define   SSR0_PERm     0x08 
1537 #define   SSR0_FERm     0x10 
1538 #define   SSR0_ORERm    0x20 
1539 #define   SSR0_RDRFm    0x40 
1540 #define   SSR0_TDREm    0x80 
1541 #define Smart_SSR0      __PORT8 0xFFFFFF7C      /* Serial Status Register 0 */ 
1542 #define SCI_RDR0        __PORT8 0xFFFFFF7D      /* Receive Data Register 0 */ 
1543 #define SCI_SCMR0       __PORT8 0xFFFFFF7E      /* Smart Card Mode Register 0 */ 
1544 #define   SCMR0_SMIFm   0x01 
1545 #define   SCMR0_SINVm   0x04 
1546 #define   SCMR0_SDIRm   0x08 
1547 #define Smart_SCMR0     __PORT8 0xFFFFFF7E      /* Smart Card Mode Register 0 */
1548 #define IIC_ICDR0       __PORT8 0xFFFFFF7E      /* I2C Bus Data Register */ 
1549 #define IIC_SARX0       __PORT8 0xFFFFFF7E      /* 2nd Slave Address Register */ 
1550 #define IIC_ICMR0       __PORT8 0xFFFFFF7F      /* I2C Bus Mode Register */ 
1551 #define   ICMR0_BC0FSm  0x01 
1552 #define   ICMR0_BC1m    0x02 
1553 #define   ICMR0_BC2m    0x04 
1554 #define   ICMR0_CKS0m   0x08 
1555 #define   ICMR0_CKS1m   0x10 
1556 #define   ICMR0_CKS2m   0x20 
1557 #define   ICMR0_WAITm   0x40 
1558 #define   ICMR0_MLSm    0x80 
1559 #define IIC_SAR0        __PORT8 0xFFFFFF7F      /* Slave Address Register */ 
1560 #define SCI_SMR1        __PORT8 0xFFFFFF80      /* Serial Mode Register 1 */
1561 #define   SMR1_CKS0m    0x01 
1562 #define   SMR1_CKS1m    0x02 
1563 #define   SMR1_MPm      0x04 
1564 #define   SMR1_STOPm    0x08 
1565 #define   SMR1_OEm      0x10 
1566 #define   SMR1_PEm      0x20 
1567 #define   SMR1_CHRm     0x40 
1568 #define   SMR1_CAm      0x80  
1569 #define IIC_ICCR1       __PORT8 0xFFFFFF80      /* I2C Bus Control Register */ 
1570 #define Smart_SMR1      __PORT8 0xFFFFFF80      /* Serial Mode Register 1 */ 
1571 #define SCI_BRR1        __PORT8 0xFFFFFF81      /* Bit Rate Register 1 */ 
1572 #define Smart_BRR1      __PORT8 0xFFFFFF81      /* Bit Rate Register 1 */ 
1573 #define IIC_ICSR1       __PORT8 0xFFFFFF81      /* I2C Bus Status Register */ 
1574 #define SCI_SCR1        __PORT8 0xFFFFFF82      /* Serial Control Register 1 */ 
1575 #define   SCR1_CKE0m    0x01 
1576 #define   SCR1_CKE1m    0x02 
1577 #define   SCR1_TEIEm    0x04 
1578 #define   SCR1_MPIEm    0x08 
1579 #define   SCR1_REm      0x10 
1580 #define   SCR1_TEm      0x20 
1581 #define   SCR1_RIEm     0x40 
1582 #define   SCR1_TIEm     0x80 
1583 #define Smart_SCR1      __PORT8 0xFFFFFF82      /* Serial Control Register 1 */ 
1584 #define SCI_TDR1        __PORT8 0xFFFFFF83      /* Transmit Data Register 1 */ 
1585 #define Smart_TDR1      __PORT8 0xFFFFFF83      /* Transmit Data Register 1 */ 
1586 #define SCI_SSR1        __PORT8 0xFFFFFF84      /* Serial Status Register 1 */ 
1587 #define   SSR1_MPBTm    0x01 
1588 #define   SSR1_MPBm     0x02 
1589 #define   SSR1_TENDm    0x04 
1590 #define   SSR1_PERm     0x08 
1591 #define   SSR1_FERm     0x10 
1592 #define   SSR1_ORERm    0x20 
1593 #define   SSR1_RDRFm    0x40 
1594 #define   SSR1_TDREm    0x80
1595 #define Smart_SSR1      __PORT8 0xFFFFFF84      /* Serial Status Register 1 */ 
1596 #define SCI_RDR1        __PORT8 0xFFFFFF85      /* Receive Data Register 1 */ 
1597 #define Smart_RDR1      __PORT8 0xFFFFFF85      /* Receive Data Register 1 */ 
1598 #define SCI_SCMR1       __PORT8 0xFFFFFF86      /* Smart Card Mode Register 1 */ 
1599 #define   SCMR1_SMIFm   0x01 
1600 #define   SCMR1_SINVm   0x04 
1601 #define   SCMR1_SDIRm   0x08 
1602 #define IIC_ICDR1       __PORT8 0xFFFFFF86      /* I2C Bus Data Register */ 
1603 #define IIC_SARX1       __PORT8 0xFFFFFF86      /* 2nd Slave Address Register */ 
1604 #define IIC_ICMR1       __PORT8 0xFFFFFF87      /* -I2C Bus Mode Register */ 
1605 #define   ICMR1_BC0FSm  0x01 
1606 #define   ICMR1_BC1m    0x02 
1607 #define   ICMR1_BC2m    0x04 
1608 #define   ICMR1_CKS0m   0x08 
1609 #define   ICMR1_CKS1m   0x10 
1610 #define   ICMR1_CKS2m   0x20 
1611 #define   ICMR1_WAITm   0x40 
1612 #define   ICMR1_MLSm    0x80 
1613 #define IIC_SAR1        __PORT8 0xFFFFFF87      /* Slave Address Register */ 
1614 #define SCI_SMR2        __PORT8 0xFFFFFF88      /* Serial Mode Register 2 */ 
1615 #define   SMR2_CKS0m    0x01 
1616 #define   SMR2_CKS1m    0x02 
1617 #define   SMR2_MPm      0x04 
1618 #define   SMR2_STOPm    0x08 
1619 #define   SMR2_OEm      0x10 
1620 #define   SMR2_PEm      0x20 
1621 #define   SMR2_CHRm     0x40 
1622 #define   SMR2_CAm      0x80 
1623 #define Smart_SMR2      __PORT8 0xFFFFFF88      /* Serial Mode Register 2 */ 
1624 #define SCI_BRR2        __PORT8 0xFFFFFF89      /* Bit Rate Register 2 */ 
1625 #define Smart_BRR2      __PORT8 0xFFFFFF89      /* Bit Rate Register 2 */ 
1626 #define SCI_SCR2        __PORT8 0xFFFFFF8A      /* Serial Control Register 2 */ 
1627 #define   SCR2_CKE0m    0x01 
1628 #define   SCR2_CKE1m    0x02 
1629 #define   SCR2_TEIEm    0x04 
1630 #define   SCR2_MPIEm    0x08 
1631 #define   SCR2_REm      0x10 
1632 #define   SCR2_TEm      0x20 
1633 #define   SCR2_RIEm     0x40 
1634 #define   SCR2_TIEm     0x80 
1635 #define Smart_SCR2      __PORT8 0xFFFFFF8A      /* Serial Control Register 2 */ 
1636 #define SCI_TDR2        __PORT8 0xFFFFFF8B      /* Transmit Data Register 2 */ 
1637 #define Smart_TDR2      __PORT8 0xFFFFFF8B      /* Transmit Data Register 2 */ 
1638 #define SCI_SSR2        __PORT8 0xFFFFFF8C      /* Serial Status Register 2 */ 
1639 #define   SSR2_MPBTm    0x01 
1640 #define   SSR2_MPBm     0x02 
1641 #define   SSR2_TENDm    0x04 
1642 #define   SSR2_PERm     0x08 
1643 #define   SSR2_FERm     0x10 
1644 #define   SSR2_ORERm    0x20 
1645 #define   SSR2_RDRFm    0x40 
1646 #define   SSR2_TDREm    0x80 
1647 #define Smart_SSR2      __PORT8 0xFFFFFF8C      /* Serial Status Register 2 */ 
1648 #define SCI_RDR2        __PORT8 0xFFFFFF8D      /* Receive Data Register 2 */ 
1649 #define SCI_SCMR2       __PORT8 0xFFFFFF8E      /* Smart Card Mode Register 2 */ 
1650 #define SCI_SCMR2       __PORT8 0xFFFFFF8E      /* Smart Card Mode Register 2 */ 
1651 #define   SCMR2_SMIFm   0x01 
1652 #define   SCMR2_SINVm   0x04 
1653 #define   SCMR2_SDIRm   0x08
1654
1655 /* Module A/D Converter */
1656 #define AD_ADDRAH       __PORT8 0xFFFFFF90      /* AD Data Register AH */ 
1657 #define   ADDRAH_AD2m   0x01 
1658 #define   ADDRAH_AD3m   0x02 
1659 #define   ADDRAH_AD4m   0x04 
1660 #define   ADDRAH_AD5m   0x08 
1661 #define   ADDRAH_AD6m   0x10 
1662 #define   ADDRAH_AD7m   0x20 
1663 #define   ADDRAH_AD8m   0x40 
1664 #define   ADDRAH_AD9m   0x80 
1665 #define AD_ADDRAL       __PORT8 0xFFFFFF91      /* AD Data Register AL*/ 
1666 #define   ADDRAL_AD0m   0x40 
1667 #define   ADDRAL_AD1m   0x80 
1668 #define AD_ADDRBH       __PORT8 0xFFFFFF92      /* AD Data Register BH*/ 
1669 #define   ADDRBH_AD2m   0x01 
1670 #define   ADDRBH_AD3m   0x02 
1671 #define   ADDRBH_AD4m   0x04 
1672 #define   ADDRBH_AD5m   0x08 
1673 #define   ADDRBH_AD6m   0x10 
1674 #define   ADDRBH_AD7m   0x20 
1675 #define   ADDRBH_AD8m   0x40 
1676 #define   ADDRBH_AD9m   0x80 
1677 #define AD_ADDRBL       __PORT8 0xFFFFFF93      /* AD Data Register BL*/ 
1678 #define   ADDRBL_AD0m   0x40 
1679 #define   ADDRBL_AD1m   0x80 
1680 #define AD_ADDRCH       __PORT8 0xFFFFFF94      /* AD Data Register CH */ 
1681 #define   ADDRCH_AD2m   0x01 
1682 #define   ADDRCH_AD3m   0x02 
1683 #define   ADDRCH_AD4m   0x04 
1684 #define   ADDRCH_AD5m   0x08 
1685 #define   ADDRCH_AD6m   0x10 
1686 #define   ADDRCH_AD7m   0x20 
1687 #define   ADDRCH_AD8m   0x40 
1688 #define   ADDRCH_AD9m   0x80 
1689 #define AD_ADDRCL       __PORT8 0xFFFFFF95      /* AD Data Register CH */ 
1690 #define   ADDRCL_AD0m   0x40 
1691 #define   ADDRCL_AD1m   0x80 
1692 #define AD_ADDRDH       __PORT8 0xFFFFFF96      /* AD Data Register DH */ 
1693 #define   ADDRDH_AD2m   0x01 
1694 #define   ADDRDH_AD3m   0x02 
1695 #define   ADDRDH_AD4m   0x04 
1696 #define   ADDRDH_AD5m   0x08 
1697 #define   ADDRDH_AD6m   0x10 
1698 #define   ADDRDH_AD7m   0x20 
1699 #define   ADDRDH_AD8m   0x40 
1700 #define   ADDRDH_AD9m   0x80 
1701 #define AD_ADDRDL       __PORT8 0xFFFFFF97      /* AD Data Register DL */ 
1702 #define   ADDRDL_AD0m   0x40 
1703 #define   ADDRDL_AD1m   0x80 
1704 #define AD_ADCSR        __PORT8 0xFFFFFF98      /* AD ControlStatus Register */ 
1705 #define   ADCSR_CH0m    0x01 
1706 #define   ADCSR_CH1m    0x02 
1707 #define   ADCSR_CH2m    0x04 
1708 #define   ADCSR_CH3m    0x08 
1709 #define   ADCSR_SCANm   0x10 
1710 #define   ADCSR_ADSTm   0x20 
1711 #define   ADCSR_ADIEm   0x40 
1712 #define   ADCSR_ADFm    0x80 
1713 #define AD_ADCR __PORT8 0xFFFFFF99      /* AD Control Register */ 
1714 #define   ADCR_CKS0m    0x04 
1715 #define   ADCR_CKS1m    0x08 
1716 #define   ADCR_TRGS0m   0x40 
1717 #define   ADCR_TRGS1m   0x80 
1718 /* Module Timer*/
1719 #define TMR_TCSR1       __PORT8 0xFFFFFFA2      /* (R/W) Timer ControlStatus Register 1 */ 
1720 #define   TCSR1_CKS0m   0x01 
1721 #define   TCSR1_CKS1m   0x02 
1722 #define   TCSR1_CKS2m   0x04 
1723 #define   TCSR1_OVFm    0x80 
1724 #define TMR_TCNT1       __PORT8 0xFFFFFFA3      /* (R) Timer Counter 1 */ 
1725 /* Module A/D Converter */
1726 #define DA_DADR0        __PORT8 0xFFFFFFA4      /* DA Data Register 0 */ 
1727 #define DA_DADR1        __PORT8 0xFFFFFFA5      /* DA Data Register 1 */ 
1728 #define DA_DACR01       __PORT8 0xFFFFFFA6      /*  DA Control Register 01 */ 
1729 #define   DACR01_DAEm   0x20 
1730 #define   DACR01_DAOE0m 0x40 
1731 #define   DACR01_DAOE1m 0x80 
1732 /* Module Flash Memory */
1733 #define FLM_FLMCR1      __PORT8 0xFFFFFFA8      /* Flash Memory Control Register 1 */ 
1734 #define   FLMCR1_Pm     0x01                    /*   Transition to program mode */
1735 #define   FLMCR1_Em     0x02                    /*   Transition to erase mode */
1736 #define   FLMCR1_PVm    0x04                    /*   Transition to program-verify mode */ 
1737 #define   FLMCR1_EVm    0x08                    /*   Transition to erase-verify mode */
1738 #define   FLMCR1_PSUm   0x10                    /*   Program setup when FWE = 1 and SWE1 = 1*/ 
1739 #define   FLMCR1_ESUm   0x20                    /*   Erase setup when FWE = 1 and SWE1 = 1 */ 
1740 #define   FLMCR1_SWEm   0x40                    /*   1= enable writes when FWE=1 */ 
1741 #define   FLMCR1_FWEm   0x80                    /*   1 = programming enabled by FWE pin */
1742 #define FLM_FLMCR2      __PORT8 0xFFFFFFA9      /* Flash Memory Control Register 2 */ 
1743 #define   FLMCR2_FLERm  0x80                    /*   Flash memory modification error */ 
1744 #define FLM_EBR1        __PORT8 0xFFFFFFAA      /* Erase Block Register 1 */ 
1745 #define   EBR1_EB0m     0x01                    /*   Selects block to erase */
1746 #define   EBR1_EB1m     0x02 
1747 #define   EBR1_EB2m     0x04 
1748 #define   EBR1_EB3m     0x08 
1749 #define   EBR1_EB4m     0x10 
1750 #define   EBR1_EB5m     0x20 
1751 #define   EBR1_EB6m     0x40 
1752 #define   EBR1_EB7m     0x80 
1753 #define FLM_EBR2        __PORT8 0xFFFFFFAB      /* Erase Block Register 2 */ 
1754 #define   EBR2_EB8m     0x01 
1755 #define   EBR2_EB9m     0x02 
1756 #define   EBR2_EB10m    0x04 
1757 #define   EBR2_EB11m    0x08 
1758 #define   EBR2_EB12m    0x10                    /* Valid on the H8S/2630. On the H8S/2638 and H8S/2639 these bits are reserved and only 0 */
1759 #define   EBR2_EB13m    0x20                    /* Valid on the H8S/2630. On the H8S/2638 and H8S/2639 these bits are reserved and only 0 */
1760 #define FLM_FLPWCR      __PORT8 0xFFFFFFAC      /* Flash Memory Power Control Register */ 
1761 #define   FLPWCR_PDWNDm 0x80 
1762 /* Module Port */
1763 #define DIO_PORT1       __PORT8 0xFFFFFFB0      /* DIO 1 Register */ 
1764 #define   PORT1_P10m    0x01 
1765 #define   PORT1_P11m    0x02 
1766 #define   PORT1_P12m    0x04 
1767 #define   PORT1_P13m    0x08 
1768 #define   PORT1_P14m    0x10 
1769 #define   PORT1_P15m    0x20 
1770 #define   PORT1_P16m    0x40 
1771 #define   PORT1_P17m    0x80 
1772 #define DIO_PORT3       __PORT8 0xFFFFFFB2      /* DIO 3 Register */ 
1773 #define   PORT3_P30m    0x01 
1774 #define   PORT3_P31m    0x02 
1775 #define   PORT3_P32m    0x04 
1776 #define   PORT3_P33m    0x08 
1777 #define   PORT3_P34m    0x10 
1778 #define   PORT3_P35m    0x20 
1779 #define DIO_PORT4       __PORT8 0xFFFFFFB3      /* DIO 4 Register */ 
1780 #define   PORT4_P40m    0x01 
1781 #define   PORT4_P41m    0x02 
1782 #define   PORT4_P42m    0x04 
1783 #define   PORT4_P43m    0x08 
1784 #define   PORT4_P44m    0x10 
1785 #define   PORT4_P45m    0x20 
1786 #define   PORT4_P46m    0x40 
1787 #define   PORT4_P47m    0x80 
1788 #define DIO_PORT9       __PORT8 0xFFFFFFB8      /* DIO 9 Register */ 
1789 #define   PORT9_P90m    0x01 
1790 #define   PORT9_P91m    0x02 
1791 #define   PORT9_P92m    0x04 
1792 #define   PORT9_P93m    0x08 
1793 #define DIO_PORTA       __PORT8 0xFFFFFFB9      /* DIO A Register */ 
1794 #define   PORTA_PA0m    0x01 
1795 #define   PORTA_PA1m    0x02 
1796 #define   PORTA_PA2m    0x04 
1797 #define   PORTA_PA3m    0x08 
1798 #define DIO_PORTB       __PORT8 0xFFFFFFBA      /* DIO B Register */ 
1799 #define   PORTB_PB0m    0x01 
1800 #define   PORTB_PB1m    0x02 
1801 #define   PORTB_PB2m    0x04 
1802 #define   PORTB_PB3m    0x08 
1803 #define   PORTB_PB4m    0x10 
1804 #define   PORTB_PB5m    0x20 
1805 #define   PORTB_PB6m    0x40 
1806 #define   PORTB_PB7m    0x80 
1807 #define DIO_PORTC       __PORT8 0xFFFFFFBB      /* DIO C Register */ 
1808 #define   PORTC_PC0m    0x01 
1809 #define   PORTC_PC1m    0x02 
1810 #define   PORTC_PC2m    0x04 
1811 #define   PORTC_PC3m    0x08 
1812 #define   PORTC_PC4m    0x10 
1813 #define   PORTC_PC5m    0x20 
1814 #define   PORTC_PC6m    0x40 
1815 #define   PORTC_PC7m    0x80 
1816 #define DIO_PORTD       __PORT8 0xFFFFFFBC      /* DIO D Register */ 
1817 #define   PORTD_PD0m    0x01 
1818 #define   PORTD_PD1m    0x02 
1819 #define   PORTD_PD2m    0x04 
1820 #define   PORTD_PD3m    0x08 
1821 #define   PORTD_PD4m    0x10 
1822 #define   PORTD_PD5m    0x20 
1823 #define   PORTD_PD6m    0x40 
1824 #define   PORTD_PD7m    0x80 
1825 #define DIO_PORTE       __PORT8 0xFFFFFFBD      /* DIO E Register */ 
1826 #define   PORTE_PE0m    0x01 
1827 #define   PORTE_PE1m    0x02 
1828 #define   PORTE_PE2m    0x04 
1829 #define   PORTE_PE3m    0x08 
1830 #define   PORTE_PE4m    0x10 
1831 #define   PORTE_PE5m    0x20 
1832 #define   PORTE_PE6m    0x40 
1833 #define   PORTE_PE7m    0x80 
1834 #define DIO_PORTF       __PORT8 0xFFFFFFBE      /* DIO F Register */ 
1835 #define   PORTF_PF0m    0x01 
1836 #define   PORTF_PF3m    0x08 
1837 #define   PORTF_PF4m    0x10 
1838 #define   PORTF_PF5m    0x20 
1839 #define   PORTF_PF6m    0x40 
1840 #define   PORTF_PF7m    0x80 
1841
1842 // aditional definition
1843
1844
1845 #define IIC_SCRX        __PORT8 0xFFFFFDB4      /* Serial Control Register X */ 
1846 #define   SCRX_FLSHEm   0x08 
1847 #define   SCRX_IICEm    0x10 
1848 #define   SCRX_IICX0m   0x20 
1849 #define   SCRX_IICX1m   0x40 
1850
1851
1852 #define SYS_LPWRCR      __PORT8 0xFFFFFDEC      /* Low-Power Control Register */ 
1853 #define   LPWRCR_STC0m  0x01                    /*    */
1854 #define   LPWRCR_STC1m  0x02 
1855 #define   LPWRCR_STCxm  0x03
1856 #define   LPWRCR_RFCUTm 0x08 
1857 #define   LPWRCR_SUBSTPm 0x10 
1858 #define   LPWRCR_NESELm 0x20 
1859 #define   LPWRCR_LSONm  0x40 
1860 #define   LPWRCR_DTONm  0x80 
1861
1862
1863
1864 /* define serial control registers */
1865 #define SCI_SMR2        __PORT8 0xFFFFFF88      /* Serial Mode Register 2 */ 
1866 #define   SMR2_CKS0m    0x01 
1867 #define   SMR2_CKS1m    0x02 
1868 #define   SMR2_MPm      0x04 
1869 #define   SMR2_STOPm    0x08 
1870 #define   SMR2_OEm      0x10 
1871 #define   SMR2_PEm      0x20 
1872 #define   SMR2_CHRm     0x40 
1873 #define   SMR2_CAm      0x80 
1874 #define SCI_BRR2        __PORT8 0xFFFFFF89      /* Bit Rate Register 2 */ 
1875 #define SCI_SCR2        __PORT8 0xFFFFFF8A      /* Serial Control Register 2 */ 
1876 #define   SCR2_CKE0m    0x01 
1877 #define   SCR2_CKE1m    0x02 
1878 #define   SCR2_TEIEm    0x04 
1879 #define   SCR2_MPIEm    0x08 
1880 #define   SCR2_REm      0x10 
1881 #define   SCR2_TEm      0x20 
1882 #define   SCR2_RIEm     0x40 
1883 #define   SCR2_TIEm     0x80 
1884 #define SCI_TDR2        __PORT8 0xFFFFFF8B      /* Transmit Data Register 2 */ 
1885 #define SCI_SSR2        __PORT8 0xFFFFFF8C      /* Serial Status Register 2 */ 
1886 #define   SSR2_MPBTm    0x01 
1887 #define   SSR2_MPBm     0x02 
1888 #define   SSR2_TENDm    0x04 
1889 #define   SSR2_PERm     0x08 
1890 #define   SSR2_FERm     0x10 
1891 #define   SSR2_ORERm    0x20 
1892 #define   SSR2_RDRFm    0x40 
1893 #define   SSR2_TDREm    0x80 
1894 #define SCI_RDR2        __PORT8 0xFFFFFF8D      /* Receive Data Register 2 */ 
1895 #define SCI_SCMR2       __PORT8 0xFFFFFF8E      /* Smart Card Mode Register 2 */ 
1896 #define   SCMR2_SMIFm   0x01 
1897 #define   SCMR2_SINVm   0x04 
1898 #define   SCMR2_SDIRm   0x08
1899 /* END define serial control registers  */
1900
1901
1902 /* Module Stop Control Register */
1903 #define SYS_MSTPCRA     __PORT8 0xFFFFFDE8      /* Module Stop Control Register A */ 
1904 #define   MSTPCRA_MSTPA0m       0x01 
1905 #define   MSTPCRA_MSTPA1m       0x02 
1906 #define   MSTPCRA_ADCm          0x02 
1907 #define   MSTPCRA_MSTPA2m       0x04 
1908 #define   MSTPCRA_DA01m         0x04 
1909 #define   MSTPCRA_MSTPA3m       0x08 
1910 #define   MSTPCRA_PPGm          0x08 
1911 #define   MSTPCRA_MSTPA4m       0x10 
1912 #define   MSTPCRA_MSTPA5m       0x20 
1913 #define   MSTPCRA_TPUm          0x20 
1914 #define   MSTPCRA_MSTPA6m       0x40 
1915 #define   MSTPCRA_DTCm          0x40 
1916 #define   MSTPCRA_MSTPA7m       0x80 
1917 #define SYS_MSTPCRB     __PORT8 0xFFFFFDE9      /* Module Stop Control Register B */ 
1918 #define   MSTPCRB_MSTPB0m       0x01 
1919 #define   MSTPCRB_MSTPB1m       0x02 
1920 #define   MSTPCRB_MSTPB2m       0x04 
1921 #define   MSTPCRB_MSTPB3m       0x08 
1922 #define   MSTPCRB_IIC1m         0x08 
1923 #define   MSTPCRB_MSTPB4m       0x10 
1924 #define   MSTPCRB_IIC0m         0x10 
1925 #define   MSTPCRB_MSTPB5m       0x20 
1926 #define   MSTPCRB_SCI2m         0x20 
1927 #define   MSTPCRB_MSTPB6m       0x40 
1928 #define   MSTPCRB_SCI1m         0x40 
1929 #define   MSTPCRB_MSTPB7m       0x80 
1930 #define   MSTPCRB_SCI0m         0x80 
1931 #define SYS_MSTPCRC     __PORT8 0xFFFFFDEA      /* Module Stop Control Register C */ 
1932 #define   MSTPCRC_MSTPC0m       0x01 
1933 #define   MSTPCRC_MSTPC1m       0x02 
1934 #define   MSTPCRC_MSTPC2m       0x04 
1935 #define   MSTPCRC_HCAN1m        0x04 
1936 #define   MSTPCRC_MSTPC3m       0x08 
1937 #define   MSTPCRC_HCAN0m        0x08 
1938 #define   MSTPCRC_MSTPC4m       0x10 
1939 #define   MSTPCRC_PBCm          0x10 
1940 #define   MSTPCRC_MSTPC5m       0x20 
1941 #define   MSTPCRC_MSTPC6m       0x40 
1942 #define   MSTPCRC_SCI4m         0x40 
1943 #define   MSTPCRC_MSTPC7m       0x80 
1944 #define   MSTPCRC_SCI3m         0x80
1945 #define SYS_MSTPCRD     __PORT8 0xFFFFFC60      /* Module Stop Control Register D */ 
1946 #define   MSTPCRD_MSTPD7m       0x80 
1947 #define   MSTPCRD_PWMm          0x80 
1948  /* END Module Stop Control Register */
1949
1950  /* start Flash register compatibility with 2633 programs (only different names of existing FLMCR1 bits)*/ /* // comented are the same */
1951 //#define FLM_FLMCR1    __PORT8 0xFFFFFFA8      /* Flash Memory Control Register 1 */ 
1952 #define   FLMCR1_P1m    0x01                    /*   Transition to program mode */
1953 #define   FLMCR1_E1m    0x02                    /*   Transition to erase mode */
1954 #define   FLMCR1_PV1m   0x04                    /*   Transition to program-verify mode */
1955 #define   FLMCR1_EV1m   0x08                    /*   Transition to erase-verify mode */
1956 #define   FLMCR1_PSU1m  0x10                    /*   Program setup when FWE = 1 and SWE1 = 1*/
1957 #define   FLMCR1_ESU1m  0x20                    /*   Erase setup when FWE = 1 and SWE1 = 1 */
1958 #define   FLMCR1_SWE1m  0x40                    /*   1= enable writes when FWE=1 */ 
1959 //#define   FLMCR1_FWEm 0x80                    /*   1 = programming enabled by FWE pin */ 
1960 //#define FLM_FLMCR2    __PORT8 0xFFFFFFA9      /* Flash Memory Control Register 2 */ 
1961 //#define   FLMCR2_FLERm        0x80                    /*   Flash memory modification error */
1962  /* end Flash register compatibility with 2633 (only different names of FLMCR1 bits)*/ 
1963  
1964 /* exception vectors numbers */ // nechat schvalit !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1965
1966 #define EXCPTVEC_POWRES 0
1967 #define EXCPTVEC_MANRES 1
1968 #define EXCPTVEC_TRACE  5
1969 #define EXCPTVEC_DIRTRANS 6
1970 #define EXCPTVEC_NMI    7
1971 #define EXCPTVEC_TRAP0  8
1972 #define EXCPTVEC_TRAP1  9
1973 #define EXCPTVEC_TRAP2  10
1974 #define EXCPTVEC_TRAP3  11
1975 #define EXCPTVEC_IRQ0   16
1976 #define EXCPTVEC_IRQ1   17
1977 #define EXCPTVEC_IRQ2   18
1978 #define EXCPTVEC_IRQ3   19
1979 #define EXCPTVEC_IRQ4   20
1980 #define EXCPTVEC_IRQ5   21
1981 #define EXCPTVEC_IRQ6   22
1982 #define EXCPTVEC_IRQ7   23
1983 #define EXCPTVEC_SWDEND 24
1984 #define EXCPTVEC_WOVI0  25
1985 #define EXCPTVEC_CMI    26
1986 #define EXCPTVEC_PBC    27
1987 #define EXCPTVEC_ADI    28
1988 #define EXCPTVEC_WOVI1  29
1989 #define EXCPTVEC_TGI0A  32      /* TPU 0 */
1990 #define EXCPTVEC_TGI0B  33
1991 #define EXCPTVEC_TGI0C  34
1992 #define EXCPTVEC_TGI0D  35
1993 #define EXCPTVEC_TCI0V  36
1994 #define EXCPTVEC_TGI1A  40      /* TPU 1 */
1995 #define EXCPTVEC_TGI1B  41
1996 #define EXCPTVEC_TCI1V  42
1997 #define EXCPTVEC_TCI1U  43
1998 #define EXCPTVEC_TGI2A  44      /* TPU 2 */
1999 #define EXCPTVEC_TGI2B  45
2000 #define EXCPTVEC_TCI2V  46
2001 #define EXCPTVEC_TCI2U  47
2002 #define EXCPTVEC_TGI3A  48      /* TPU 3 */
2003 #define EXCPTVEC_TGI3B  49
2004 #define EXCPTVEC_TGI3C  50
2005 #define EXCPTVEC_TGI3D  51
2006 #define EXCPTVEC_TCI3V  52
2007 #define EXCPTVEC_TGI4A  56      /* TPU 4 */
2008 #define EXCPTVEC_TGI4B  57
2009 #define EXCPTVEC_TCI4V  58
2010 #define EXCPTVEC_TCI4U  59
2011 #define EXCPTVEC_TGI5A  60      /* TPU 5 */
2012 #define EXCPTVEC_TGI5B  61
2013 #define EXCPTVEC_TCI5V  62
2014 #define EXCPTVEC_TCI5U  63
2015 #define EXCPTVEC_CMIA0  64      /* 8 bit tim 0 */
2016 #define EXCPTVEC_CMIB0  65
2017 #define EXCPTVEC_OVI0   66
2018 #define EXCPTVEC_CMIA1  68      /* 8 bit tim 1 */
2019 #define EXCPTVEC_CMIB1  69
2020 #define EXCPTVEC_OVI1   70
2021 #define EXCPTVEC_DEND0A 72      /* DMAC */
2022 #define EXCPTVEC_DEND0B 73
2023 #define EXCPTVEC_DEND1A 74
2024 #define EXCPTVEC_DEND1B 75
2025 #define EXCPTVEC_ERI0   80      /* SCI 0 */
2026 #define EXCPTVEC_RXI0   81
2027 #define EXCPTVEC_TXI0   82
2028 #define EXCPTVEC_TEI0   83
2029 #define EXCPTVEC_ERI1   84      /* SCI 1 */
2030 #define EXCPTVEC_RXI1   85
2031 #define EXCPTVEC_TXI1   86
2032 #define EXCPTVEC_TEI1   87
2033 #define EXCPTVEC_ERI2   88      /* SCI 2 */
2034 #define EXCPTVEC_RXI2   89
2035 #define EXCPTVEC_TXI2   90
2036 #define EXCPTVEC_TEI2   91
2037 #define EXCPTVEC_CMIA2  92      /* 8 bit tim 2 */
2038 #define EXCPTVEC_CMIB2  93
2039 #define EXCPTVEC_OVI2   94
2040 #define EXCPTVEC_CMIA3  96      /* 8 bit tim 3 */
2041 #define EXCPTVEC_CMIB3  97
2042 #define EXCPTVEC_OVI3   98
2043 #define EXCPTVEC_IICI0  100     /* IIC 0 */
2044 #define EXCPTVEC_DDCSW1 101
2045 #define EXCPTVEC_IICI1  102     /* IIC 1 */
2046 #define EXCPTVEC_ERI3   120     /* SCI 3 */
2047 #define EXCPTVEC_RXI3   121
2048 #define EXCPTVEC_TXI3   122
2049 #define EXCPTVEC_TEI3   123
2050 #define EXCPTVEC_ERI4   124     /* SCI 4 */
2051 #define EXCPTVEC_RXI4   125
2052 #define EXCPTVEC_TXI4   126
2053 #define EXCPTVEC_TEI4   127 
2054  
2055  /*   Timer control register  (TPCR) */
2056 #define   TPCR_TPSCm    0x07    /* Clock sources */
2057 #define   TPCR_TPSC_F1  0x00    /*   fi clock/1 */
2058 #define   TPCR_TPSC_F4  0x01    /*   fi clock/4 */
2059 #define   TPCR_TPSC_F16 0x02    /*   fi clock/16 */
2060 #define   TPCR_TPSC_F64 0x03    /*   fi clock/64 */
2061 #define   TPCR_TPSC_CA  0x04    /*   TCLKA */
2062 #define   TPCR_TPSC_012CB 0x05  /*   TCLKB (only 012) */
2063 #define   TPCR_TPSC_02CC 0x06   /*   TCLKC (only 02) */
2064 #define   TPCR_TPSC_45CC 0x05   /*   TCLKC (only 45) */
2065 #define   TPCR_TPSC_05CD 0x07   /*   TCLKD (only 05) */
2066 #define   TPCR_TPSC_135F256 0x06 /*   fi clock/256 (only 135) */
2067 #define   TPCR_TPSC_2F1024 0x07 /*   fi clock/1024 (only 2) */
2068 #define   TPCR_TPSC_3F1024 0x05 /*   fi clock/1024 (only 3) */
2069 #define   TPCR_TPSC_4F1024 0x06 /*   fi clock/1024 (only 4) */
2070 #define   TPCR_TPSC_3F4096 0x07    /*   fi clock/4096 (only 3) */
2071 #define   TPCR_CKEGm    0x018   /* Clock edge */
2072 #define   TPCR_CKEG_RIS 0x000   /*   Rising edge */
2073 #define   TPCR_CKEG_FAL 0x008   /*   Falling edge */
2074 #define   TPCR_CKEG_BOTH 0x018  /*   Both edges */
2075 #define   TPCR_CCLRm    0xe0    /* Counter clearing source */
2076 #define   TPCR_CCLR_DIS 0x00    /*   disabled */
2077 #define   TPCR_CCLR_TGRA 0x20   /*   source TGRA compare match/input capture */
2078 #define   TPCR_CCLR_TGRB 0x40   /*   source TGRB compare match/input capture */
2079 #define   TPCR_CCLR_SYNC 0x60   /*   synchronous clear by TSYR_SYNC */
2080 #define   TPCR_CCLR_TGRC 0xa0   /*   source TGRC compare match/input capture */
2081 #define   TPCR_CCLR_TGRD 0xc0   /*   source TGRD compare match/input capture */
2082
2083 /*   Timer mode register  (TMDR) */
2084 #define   TPMDR_MDm     0x0f    /* timer operating mode */
2085 #define   TPMDR_MD_NORMAL 0x00  /*   normal */
2086 #define   TPMDR_MD_PWM1  0x02   /*   PWM 1 */
2087 #define   TPMDR_MD_PWM2  0x03   /*   PWM 2 */
2088 #define   TPMDR_MD_PHACN1 0x04  /*   phase counting 1 (only 1245) */
2089 #define   TPMDR_MD_PHACN2 0x05  /*   phase counting 2 (only 1245) */
2090 #define   TPMDR_MD_PHACN3 0x06  /*   phase counting 3 (only 1245) */
2091 #define   TPMDR_MD_PHACN4 0x07  /*   phase counting 4 (only 1245) */
2092 #define   TPMDR_BFAm     0x10   /* TGRA, TGRC together for buffer operation */
2093 #define   TPMDR_BFBm     0x20   /* TGRB, TGRD together for buffer operation */
2094
2095 #endif /* _H82639H_H */