summaryrefslogtreecommitdiff
path: root/include/asm-blackfin/arch-bf537/cdefBF534.h
blob: 5a89e925361e5067b1b70b35547e8a0e6e81065d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
/*
 * Copyright (C) 2005 Analog Devices Inc., All Rights Reserved.
 *
 ***********************************************************************************
 *
 * This include file contains a list of macro "defines" to enable the programmer
 * to use symbolic names for register-access.
 *
 *   ----------------------------
 *   revision 0.1
 *   date: 2005/01/27 14:31:01;  author: joeb
 *   Initial revision
 */

/*
 * System MMR Register Map
 */

#ifndef _CDEF_BF534_H
#define _CDEF_BF534_H

/* Include all Core registers and bit definitions */
#include <asm/arch-bf537/defBF534.h>

/* Include core specific register pointer definitions */
#include <asm/arch-common/cdef_LPBlackfin.h>

#define pCHIPID ((volatile unsigned long *)CHIPID)

/* Clock and System Control	(0xFFC00000 - 0xFFC000FF) */
#define pPLL_CTL 		((volatile unsigned short *)PLL_CTL)
#define pPLL_DIV 		((volatile unsigned short *)PLL_DIV)
#define pVR_CTL 		((volatile unsigned short *)VR_CTL)
#define pPLL_STAT 		((volatile unsigned short *)PLL_STAT)
#define pPLL_LOCKCNT 		((volatile unsigned short *)PLL_LOCKCNT)

/* System Interrupt Controller (0xFFC00100 - 0xFFC001FF) */
#define pSWRST 			((volatile unsigned short *)SWRST)
#define pSYSCR 			((volatile unsigned short *)SYSCR)
#define	pSIC_RVECT		((void * volatile *)SIC_RVECT)
#define pSIC_IMASK 		((volatile unsigned long  *)SIC_IMASK)
#define pSIC_IAR0 		((volatile unsigned long  *)SIC_IAR0)
#define pSIC_IAR1 		((volatile unsigned long  *)SIC_IAR1)
#define pSIC_IAR2 		((volatile unsigned long  *)SIC_IAR2)
#define pSIC_IAR3 		((volatile unsigned long  *)SIC_IAR3)
#define pSIC_ISR 		((volatile unsigned long  *)SIC_ISR)
#define pSIC_IWR 		((volatile unsigned long  *)SIC_IWR)

/* Watchdog Timer		(0xFFC00200 - 0xFFC002FF) */
#define pWDOG_CTL 		((volatile unsigned short *)WDOG_CTL)
#define pWDOG_CNT 		((volatile unsigned long  *)WDOG_CNT)
#define pWDOG_STAT 		((volatile unsigned long  *)WDOG_STAT)

/* Real Time Clock		(0xFFC00300 - 0xFFC003FF) */
#define pRTC_STAT 		((volatile unsigned long  *)RTC_STAT)
#define pRTC_ICTL 		((volatile unsigned short *)RTC_ICTL)
#define pRTC_ISTAT 		((volatile unsigned short *)RTC_ISTAT)
#define pRTC_SWCNT 		((volatile unsigned short *)RTC_SWCNT)
#define pRTC_ALARM 		((volatile unsigned long  *)RTC_ALARM)
#define pRTC_FAST 		((volatile unsigned short *)RTC_FAST)
#define pRTC_PREN 		((volatile unsigned short *)RTC_PREN)

/* UART0 Controller		(0xFFC00400 - 0xFFC004FF) */
#define pUART0_THR 		((volatile unsigned short *)UART0_THR)
#define pUART0_RBR 		((volatile unsigned short *)UART0_RBR)
#define pUART0_DLL 		((volatile unsigned short *)UART0_DLL)
#define pUART0_IER 		((volatile unsigned short *)UART0_IER)
#define pUART0_DLH 		((volatile unsigned short *)UART0_DLH)
#define pUART0_IIR 		((volatile unsigned short *)UART0_IIR)
#define pUART0_LCR 		((volatile unsigned short *)UART0_LCR)
#define pUART0_MCR 		((volatile unsigned short *)UART0_MCR)
#define pUART0_LSR 		((volatile unsigned short *)UART0_LSR)
#define pUART0_MSR		((volatile unsigned short *)UART0_LSR)
#define pUART0_SCR 		((volatile unsigned short *)UART0_SCR)
#define pUART0_GCTL 		((volatile unsigned short *)UART0_GCTL)

/* SPI Controller		(0xFFC00500 - 0xFFC005FF) */
#define pSPI_CTL 		((volatile unsigned short *)SPI_CTL)
#define pSPI_FLG 		((volatile unsigned short *)SPI_FLG)
#define pSPI_STAT 		((volatile unsigned short *)SPI_STAT)
#define pSPI_TDBR 		((volatile unsigned short *)SPI_TDBR)
#define pSPI_RDBR 		((volatile unsigned short *)SPI_RDBR)
#define pSPI_BAUD 		((volatile unsigned short *)SPI_BAUD)
#define pSPI_SHADOW 		((volatile unsigned short *)SPI_SHADOW)

/* TIMER0-7 Registers		(0xFFC00600 - 0xFFC006FF) */
#define pTIMER0_CONFIG 		((volatile unsigned short *)TIMER0_CONFIG)
#define pTIMER0_COUNTER 	((volatile unsigned long  *)TIMER0_COUNTER)
#define pTIMER0_PERIOD 		((volatile unsigned long  *)TIMER0_PERIOD)
#define pTIMER0_WIDTH 		((volatile unsigned long  *)TIMER0_WIDTH)

#define pTIMER1_CONFIG 		((volatile unsigned short *)TIMER1_CONFIG)
#define pTIMER1_COUNTER 	((volatile unsigned long  *)TIMER1_COUNTER)
#define pTIMER1_PERIOD 		((volatile unsigned long  *)TIMER1_PERIOD)
#define pTIMER1_WIDTH 		((volatile unsigned long  *)TIMER1_WIDTH)

#define pTIMER2_CONFIG 		((volatile unsigned short *)TIMER2_CONFIG)
#define pTIMER2_COUNTER 	((volatile unsigned long  *)TIMER2_COUNTER)
#define pTIMER2_PERIOD 		((volatile unsigned long  *)TIMER2_PERIOD)
#define pTIMER2_WIDTH 		((volatile unsigned long  *)TIMER2_WIDTH)

#define pTIMER3_CONFIG 		((volatile unsigned short *)TIMER3_CONFIG)
#define pTIMER3_COUNTER 	((volatile unsigned long  *)TIMER3_COUNTER)
#define pTIMER3_PERIOD 		((volatile unsigned long  *)TIMER3_PERIOD)
#define pTIMER3_WIDTH 		((volatile unsigned long  *)TIMER3_WIDTH)

#define pTIMER4_CONFIG 		((volatile unsigned short *)TIMER4_CONFIG)
#define pTIMER4_COUNTER 	((volatile unsigned long  *)TIMER4_COUNTER)
#define pTIMER4_PERIOD 		((volatile unsigned long  *)TIMER4_PERIOD)
#define pTIMER4_WIDTH 		((volatile unsigned long  *)TIMER4_WIDTH)

#define pTIMER5_CONFIG 		((volatile unsigned short *)TIMER5_CONFIG)
#define pTIMER5_COUNTER 	((volatile unsigned long  *)TIMER5_COUNTER)
#define pTIMER5_PERIOD 		((volatile unsigned long  *)TIMER5_PERIOD)
#define pTIMER5_WIDTH 		((volatile unsigned long  *)TIMER5_WIDTH)

#define pTIMER6_CONFIG 		((volatile unsigned short *)TIMER6_CONFIG)
#define pTIMER6_COUNTER 	((volatile unsigned long  *)TIMER6_COUNTER)
#define pTIMER6_PERIOD 		((volatile unsigned long  *)TIMER6_PERIOD)
#define pTIMER6_WIDTH 		((volatile unsigned long  *)TIMER6_WIDTH)

#define pTIMER7_CONFIG 		((volatile unsigned short *)TIMER7_CONFIG)
#define pTIMER7_COUNTER 	((volatile unsigned long  *)TIMER7_COUNTER)
#define pTIMER7_PERIOD 		((volatile unsigned long  *)TIMER7_PERIOD)
#define pTIMER7_WIDTH 		((volatile unsigned long  *)TIMER7_WIDTH)

#define pTIMER_ENABLE 		((volatile unsigned short *)TIMER_ENABLE)
#define pTIMER_DISABLE 		((volatile unsigned short *)TIMER_DISABLE)
#define pTIMER_STATUS		((volatile unsigned long  *)TIMER_STATUS)

/* General Purpose I/O Port F (0xFFC00700 - 0xFFC007FF) */
#define pPORTFIO	 	((volatile unsigned short *)PORTFIO)
#define pPORTFIO_CLEAR	 	((volatile unsigned short *)PORTFIO_CLEAR)
#define pPORTFIO_SET	 	((volatile unsigned short *)PORTFIO_SET)
#define pPORTFIO_TOGGLE 	((volatile unsigned short *)PORTFIO_TOGGLE)
#define pPORTFIO_MASKA		((volatile unsigned short *)PORTFIO_MASKA)
#define pPORTFIO_MASKA_CLEAR	((volatile unsigned short *)PORTFIO_MASKA_CLEAR)
#define pPORTFIO_MASKA_SET	((volatile unsigned short *)PORTFIO_MASKA_SET)
#define pPORTFIO_MASKA_TOGGLE	((volatile unsigned short *)PORTFIO_MASKA_TOGGLE)
#define pPORTFIO_MASKB		((volatile unsigned short *)PORTFIO_MASKB)
#define pPORTFIO_MASKB_CLEAR	((volatile unsigned short *)PORTFIO_MASKB_CLEAR)
#define pPORTFIO_MASKB_SET	((volatile unsigned short *)PORTFIO_MASKB_SET)
#define pPORTFIO_MASKB_TOGGLE	((volatile unsigned short *)PORTFIO_MASKB_TOGGLE)
#define pPORTFIO_DIR		((volatile unsigned short *)PORTFIO_DIR)
#define pPORTFIO_POLAR		((volatile unsigned short *)PORTFIO_POLAR)
#define pPORTFIO_EDGE		((volatile unsigned short *)PORTFIO_EDGE)
#define pPORTFIO_BOTH		((volatile unsigned short *)PORTFIO_BOTH)
#define pPORTFIO_INEN		((volatile unsigned short *)PORTFIO_INEN)

#define pFIO_DIR		pPORTFIO_DIR
#define pFIO_FLAG_C		pPORTFIO_CLEAR
#define pFIO_FLAG_S		pPORTFIO_SET
#define pFIO_INEN		pPORTFIO_INEN
#define pFIO_FLAG_D		pPORTFIO

/* SPORT0 Controller		(0xFFC00800 - 0xFFC008FF) */
#define pSPORT0_TCR1		((volatile unsigned short *)SPORT0_TCR1)
#define pSPORT0_TCR2		((volatile unsigned short *)SPORT0_TCR2)
#define pSPORT0_TCLKDIV		((volatile unsigned short *)SPORT0_TCLKDIV)
#define pSPORT0_TFSDIV		((volatile unsigned short *)SPORT0_TFSDIV)
#define pSPORT0_TX		((volatile unsigned long  *)SPORT0_TX)
#define pSPORT0_RX		((volatile unsigned long  *)SPORT0_RX)
#define pSPORT0_TX32		((volatile unsigned long  *)SPORT0_TX)
#define pSPORT0_RX32		((volatile unsigned long  *)SPORT0_RX)
#define pSPORT0_TX16		((volatile unsigned short *)SPORT0_TX)
#define pSPORT0_RX16		((volatile unsigned short *)SPORT0_RX)
#define pSPORT0_RCR1		((volatile unsigned short *)SPORT0_RCR1)
#define pSPORT0_RCR2		((volatile unsigned short *)SPORT0_RCR2)
#define pSPORT0_RCLKDIV		((volatile unsigned short *)SPORT0_RCLKDIV)
#define pSPORT0_RFSDIV		((volatile unsigned short *)SPORT0_RFSDIV)
#define pSPORT0_STAT		((volatile unsigned short *)SPORT0_STAT)
#define pSPORT0_CHNL		((volatile unsigned short *)SPORT0_CHNL)
#define pSPORT0_MCMC1		((volatile unsigned short *)SPORT0_MCMC1)
#define pSPORT0_MCMC2		((volatile unsigned short *)SPORT0_MCMC2)
#define pSPORT0_MTCS0		((volatile unsigned long  *)SPORT0_MTCS0)
#define pSPORT0_MTCS1		((volatile unsigned long  *)SPORT0_MTCS1)
#define pSPORT0_MTCS2		((volatile unsigned long  *)SPORT0_MTCS2)
#define pSPORT0_MTCS3		((volatile unsigned long  *)SPORT0_MTCS3)
#define pSPORT0_MRCS0		((volatile unsigned long  *)SPORT0_MRCS0)
#define pSPORT0_MRCS1		((volatile unsigned long  *)SPORT0_MRCS1)
#define pSPORT0_MRCS2		((volatile unsigned long  *)SPORT0_MRCS2)
#define pSPORT0_MRCS3		((volatile unsigned long  *)SPORT0_MRCS3)

/* SPORT1 Controller		(0xFFC00900 - 0xFFC009FF) */
#define pSPORT1_TCR1		((volatile unsigned short *)SPORT1_TCR1)
#define pSPORT1_TCR2		((volatile unsigned short *)SPORT1_TCR2)
#define pSPORT1_TCLKDIV		((volatile unsigned short *)SPORT1_TCLKDIV)
#define pSPORT1_TFSDIV		((volatile unsigned short *)SPORT1_TFSDIV)
#define pSPORT1_TX		((volatile unsigned long  *)SPORT1_TX)
#define pSPORT1_RX		((volatile unsigned long  *)SPORT1_RX)
#define pSPORT1_TX32		((volatile unsigned long  *)SPORT1_TX)
#define pSPORT1_RX32		((volatile unsigned long  *)SPORT1_RX)
#define pSPORT1_TX16		((volatile unsigned short *)SPORT1_TX)
#define pSPORT1_RX16		((volatile unsigned short *)SPORT1_RX)
#define pSPORT1_RCR1		((volatile unsigned short *)SPORT1_RCR1)
#define pSPORT1_RCR2		((volatile unsigned short *)SPORT1_RCR2)
#define pSPORT1_RCLKDIV		((volatile unsigned short *)SPORT1_RCLKDIV)
#define pSPORT1_RFSDIV		((volatile unsigned short *)SPORT1_RFSDIV)
#define pSPORT1_STAT		((volatile unsigned short *)SPORT1_STAT)
#define pSPORT1_CHNL		((volatile unsigned short *)SPORT1_CHNL)
#define pSPORT1_MCMC1		((volatile unsigned short *)SPORT1_MCMC1)
#define pSPORT1_MCMC2		((volatile unsigned short *)SPORT1_MCMC2)
#define pSPORT1_MTCS0		((volatile unsigned long  *)SPORT1_MTCS0)
#define pSPORT1_MTCS1		((volatile unsigned long  *)SPORT1_MTCS1)
#define pSPORT1_MTCS2		((volatile unsigned long  *)SPORT1_MTCS2)
#define pSPORT1_MTCS3		((volatile unsigned long  *)SPORT1_MTCS3)
#define pSPORT1_MRCS0		((volatile unsigned long  *)SPORT1_MRCS0)
#define pSPORT1_MRCS1		((volatile unsigned long  *)SPORT1_MRCS1)
#define pSPORT1_MRCS2		((volatile unsigned long  *)SPORT1_MRCS2)
#define pSPORT1_MRCS3		((volatile unsigned long  *)SPORT1_MRCS3)

/* External Bus Interface Unit (0xFFC00A00 - 0xFFC00AFF) */
#define pEBIU_AMGCTL		((volatile unsigned short *)EBIU_AMGCTL)
#define pEBIU_AMBCTL0		((volatile unsigned long  *)EBIU_AMBCTL0)
#define pEBIU_AMBCTL1		((volatile unsigned long  *)EBIU_AMBCTL1)
#define pEBIU_SDGCTL		((volatile unsigned long  *)EBIU_SDGCTL)
#define pEBIU_SDBCTL		((volatile unsigned short *)EBIU_SDBCTL)
#define pEBIU_SDRRC		((volatile unsigned short *)EBIU_SDRRC)
#define pEBIU_SDSTAT		((volatile unsigned short *)EBIU_SDSTAT)

/* DMA Traffic Control Registers */
#define	pDMA_TCPER		((volatile unsigned short *)DMA_TCPER)
#define	pDMA_TCCNT		((volatile unsigned short *)DMA_TCCNT)

/* DMA Controller */
#define pDMA0_CONFIG		((volatile unsigned short *)DMA0_CONFIG)
#define pDMA0_NEXT_DESC_PTR	((void * volatile *)DMA0_NEXT_DESC_PTR)
#define pDMA0_START_ADDR	((void * volatile *)DMA0_START_ADDR)
#define pDMA0_X_COUNT		((volatile unsigned short *)DMA0_X_COUNT)
#define pDMA0_Y_COUNT		((volatile unsigned short *)DMA0_Y_COUNT)
#define pDMA0_X_MODIFY		((volatile signed   short *)DMA0_X_MODIFY)
#define pDMA0_Y_MODIFY		((volatile signed   short *)DMA0_Y_MODIFY)
#define pDMA0_CURR_DESC_PTR	((void * volatile *)DMA0_CURR_DESC_PTR)
#define pDMA0_CURR_ADDR		((void * volatile *)DMA0_CURR_ADDR)
#define pDMA0_CURR_X_COUNT	((volatile unsigned short *)DMA0_CURR_X_COUNT)
#define pDMA0_CURR_Y_COUNT	((volatile unsigned short *)DMA0_CURR_Y_COUNT)
#define pDMA0_IRQ_STATUS	((volatile unsigned short *)DMA0_IRQ_STATUS)
#define pDMA0_PERIPHERAL_MAP	((volatile unsigned short *)DMA0_PERIPHERAL_MAP)

#define pDMA1_CONFIG		((volatile unsigned short *)DMA1_CONFIG)
#define pDMA1_NEXT_DESC_PTR	((void * volatile *)DMA1_NEXT_DESC_PTR)
#define pDMA1_START_ADDR	((void * volatile *)DMA1_START_ADDR)
#define pDMA1_X_COUNT		((volatile unsigned short *)DMA1_X_COUNT)
#define pDMA1_Y_COUNT		((volatile unsigned short *)DMA1_Y_COUNT)
#define pDMA1_X_MODIFY		((volatile signed   short *)DMA1_X_MODIFY)
#define pDMA1_Y_MODIFY		((volatile signed   short *)DMA1_Y_MODIFY)
#define pDMA1_CURR_DESC_PTR	((void * volatile *)DMA1_CURR_DESC_PTR)
#define pDMA1_CURR_ADDR		((void * volatile *)DMA1_CURR_ADDR)
#define pDMA1_CURR_X_COUNT	((volatile unsigned short *)DMA1_CURR_X_COUNT)
#define pDMA1_CURR_Y_COUNT	((volatile unsigned short *)DMA1_CURR_Y_COUNT)
#define pDMA1_IRQ_STATUS	((volatile unsigned short *)DMA1_IRQ_STATUS)
#define pDMA1_PERIPHERAL_MAP	((volatile unsigned short *)DMA1_PERIPHERAL_MAP)

#define pDMA2_CONFIG		((volatile unsigned short *)DMA2_CONFIG)
#define pDMA2_NEXT_DESC_PTR	((void * volatile *)DMA2_NEXT_DESC_PTR)
#define pDMA2_START_ADDR	((void * volatile *)DMA2_START_ADDR)
#define pDMA2_X_COUNT		((volatile unsigned short *)DMA2_X_COUNT)
#define pDMA2_Y_COUNT		((volatile unsigned short *)DMA2_Y_COUNT)
#define pDMA2_X_MODIFY		((volatile signed   short *)DMA2_X_MODIFY)
#define pDMA2_Y_MODIFY		((volatile signed   short *)DMA2_Y_MODIFY)
#define pDMA2_CURR_DESC_PTR	((void * volatile *)DMA2_CURR_DESC_PTR)
#define pDMA2_CURR_ADDR		((void * volatile *)DMA2_CURR_ADDR)
#define pDMA2_CURR_X_COUNT	((volatile unsigned short *)DMA2_CURR_X_COUNT)
#define pDMA2_CURR_Y_COUNT	((volatile unsigned short *)DMA2_CURR_Y_COUNT)
#define pDMA2_IRQ_STATUS	((volatile unsigned short *)DMA2_IRQ_STATUS)
#define pDMA2_PERIPHERAL_MAP	((volatile unsigned short *)DMA2_PERIPHERAL_MAP)

#define pDMA3_CONFIG		((volatile unsigned short *)DMA3_CONFIG)
#define pDMA3_NEXT_DESC_PTR	((void * volatile *)DMA3_NEXT_DESC_PTR)
#define pDMA3_START_ADDR	((void * volatile *)DMA3_START_ADDR)
#define pDMA3_X_COUNT		((volatile unsigned short *)DMA3_X_COUNT)
#define pDMA3_Y_COUNT		((volatile unsigned short *)DMA3_Y_COUNT)
#define pDMA3_X_MODIFY		((volatile signed   short *)DMA3_X_MODIFY)
#define pDMA3_Y_MODIFY		((volatile signed   short *)DMA3_Y_MODIFY)
#define pDMA3_CURR_DESC_PTR	((void * volatile *)DMA3_CURR_DESC_PTR)
#define pDMA3_CURR_ADDR		((void * volatile *)DMA3_CURR_ADDR)
#define pDMA3_CURR_X_COUNT	((volatile unsigned short *)DMA3_CURR_X_COUNT)
#define pDMA3_CURR_Y_COUNT	((volatile unsigned short *)DMA3_CURR_Y_COUNT)
#define pDMA3_IRQ_STATUS	((volatile unsigned short *)DMA3_IRQ_STATUS)
#define pDMA3_PERIPHERAL_MAP	((volatile unsigned short *)DMA3_PERIPHERAL_MAP)

#define pDMA4_CONFIG		((volatile unsigned short *)DMA4_CONFIG)
#define pDMA4_NEXT_DESC_PTR	((void * volatile *)DMA4_NEXT_DESC_PTR)
#define pDMA4_START_ADDR	((void * volatile *)DMA4_START_ADDR)
#define pDMA4_X_COUNT		((volatile unsigned short *)DMA4_X_COUNT)
#define pDMA4_Y_COUNT		((volatile unsigned short *)DMA4_Y_COUNT)
#define pDMA4_X_MODIFY		((volatile signed   short *)DMA4_X_MODIFY)
#define pDMA4_Y_MODIFY		((volatile signed   short *)DMA4_Y_MODIFY)
#define pDMA4_CURR_DESC_PTR	((void * volatile *)DMA4_CURR_DESC_PTR)
#define pDMA4_CURR_ADDR	((void * volatile *)DMA4_CURR_ADDR)
#define pDMA4_CURR_X_COUNT	((volatile unsigned short *)DMA4_CURR_X_COUNT)
#define pDMA4_CURR_Y_COUNT	((volatile unsigned short *)DMA4_CURR_Y_COUNT)
#define pDMA4_IRQ_STATUS	((volatile unsigned short *)DMA4_IRQ_STATUS)
#define pDMA4_PERIPHERAL_MAP	((volatile unsigned short *)DMA4_PERIPHERAL_MAP)

#define pDMA5_CONFIG		((volatile unsigned short *)DMA5_CONFIG)
#define pDMA5_NEXT_DESC_PTR	((void * volatile *)DMA5_NEXT_DESC_PTR)
#define pDMA5_START_ADDR	((void * volatile *)DMA5_START_ADDR)
#define pDMA5_X_COUNT		((volatile unsigned short *)DMA5_X_COUNT)
#define pDMA5_Y_COUNT		((volatile unsigned short *)DMA5_Y_COUNT)
#define pDMA5_X_MODIFY		((volatile signed   short *)DMA5_X_MODIFY)
#define pDMA5_Y_MODIFY		((volatile signed   short *)DMA5_Y_MODIFY)
#define pDMA5_CURR_DESC_PTR	((void * volatile *)DMA5_CURR_DESC_PTR)
#define pDMA5_CURR_ADDR		((void * volatile *)DMA5_CURR_ADDR)
#define pDMA5_CURR_X_COUNT	((volatile unsigned short *)DMA5_CURR_X_COUNT)
#define pDMA5_CURR_Y_COUNT	((volatile unsigned short *)DMA5_CURR_Y_COUNT)
#define pDMA5_IRQ_STATUS	((volatile unsigned short *)DMA5_IRQ_STATUS)
#define pDMA5_PERIPHERAL_MAP	((volatile unsigned short *)DMA5_PERIPHERAL_MAP)

#define pDMA6_CONFIG		((volatile unsigned short *)DMA6_CONFIG)
#define pDMA6_NEXT_DESC_PTR	((void * volatile *)DMA6_NEXT_DESC_PTR)
#define pDMA6_START_ADDR	((void * volatile *)DMA6_START_ADDR)
#define pDMA6_X_COUNT		((volatile unsigned short *)DMA6_X_COUNT)
#define pDMA6_Y_COUNT		((volatile unsigned short *)DMA6_Y_COUNT)
#define pDMA6_X_MODIFY		((volatile signed   short *)DMA6_X_MODIFY)
#define pDMA6_Y_MODIFY		((volatile signed   short *)DMA6_Y_MODIFY)
#define pDMA6_CURR_DESC_PTR	((void * volatile *)DMA6_CURR_DESC_PTR)
#define pDMA6_CURR_ADDR		((void * volatile *)DMA6_CURR_ADDR)
#define pDMA6_CURR_X_COUNT	((volatile unsigned short *)DMA6_CURR_X_COUNT)
#define pDMA6_CURR_Y_COUNT	((volatile unsigned short *)DMA6_CURR_Y_COUNT)
#define pDMA6_IRQ_STATUS	((volatile unsigned short *)DMA6_IRQ_STATUS)
#define pDMA6_PERIPHERAL_MAP	((volatile unsigned short *)DMA6_PERIPHERAL_MAP)

#define pDMA7_CONFIG		((volatile unsigned short *)DMA7_CONFIG)
#define pDMA7_NEXT_DESC_PTR	((void * volatile *)DMA7_NEXT_DESC_PTR)
#define pDMA7_START_ADDR	((void * volatile *)DMA7_START_ADDR)
#define pDMA7_X_COUNT		((volatile unsigned short *)DMA7_X_COUNT)
#define pDMA7_Y_COUNT		((volatile unsigned short *)DMA7_Y_COUNT)
#define pDMA7_X_MODIFY		((volatile signed   short *)DMA7_X_MODIFY)
#define pDMA7_Y_MODIFY		((volatile signed   short *)DMA7_Y_MODIFY)
#define pDMA7_CURR_DESC_PTR	((void * volatile *)DMA7_CURR_DESC_PTR)
#define pDMA7_CURR_ADDR		((void * volatile *)DMA7_CURR_ADDR)
#define pDMA7_CURR_X_COUNT	((volatile unsigned short *)DMA7_CURR_X_COUNT)
#define pDMA7_CURR_Y_COUNT	((volatile unsigned short *)DMA7_CURR_Y_COUNT)
#define pDMA7_IRQ_STATUS	((volatile unsigned short *)DMA7_IRQ_STATUS)
#define pDMA7_PERIPHERAL_MAP	((volatile unsigned short *)DMA7_PERIPHERAL_MAP)

#define pDMA8_CONFIG		((volatile unsigned short *)DMA8_CONFIG)
#define pDMA8_NEXT_DESC_PTR	((void * volatile *)DMA8_NEXT_DESC_PTR)
#define pDMA8_START_ADDR	((void * volatile *)DMA8_START_ADDR)
#define pDMA8_X_COUNT		((volatile unsigned short *)DMA8_X_COUNT)
#define pDMA8_Y_COUNT		((volatile unsigned short *)DMA8_Y_COUNT)
#define pDMA8_X_MODIFY		((volatile signed   short *)DMA8_X_MODIFY)
#define pDMA8_Y_MODIFY		((volatile signed   short *)DMA8_Y_MODIFY)
#define pDMA8_CURR_DESC_PTR	((void * volatile *)DMA8_CURR_DESC_PTR)
#define pDMA8_CURR_ADDR		((void * volatile *)DMA8_CURR_ADDR)
#define pDMA8_CURR_X_COUNT	((volatile unsigned short *)DMA8_CURR_X_COUNT)
#define pDMA8_CURR_Y_COUNT	((volatile unsigned short *)DMA8_CURR_Y_COUNT)
#define pDMA8_IRQ_STATUS	((volatile unsigned short *)DMA8_IRQ_STATUS)
#define pDMA8_PERIPHERAL_MAP	((volatile unsigned short *)DMA8_PERIPHERAL_MAP)

#define pDMA9_CONFIG		((volatile unsigned short *)DMA9_CONFIG)
#define pDMA9_NEXT_DESC_PTR	((void * volatile *)DMA9_NEXT_DESC_PTR)
#define pDMA9_START_ADDR	((void * volatile *)DMA9_START_ADDR)
#define pDMA9_X_COUNT		((volatile unsigned short *)DMA9_X_COUNT)
#define pDMA9_Y_COUNT		((volatile unsigned short *)DMA9_Y_COUNT)
#define pDMA9_X_MODIFY		((volatile signed   short *)DMA9_X_MODIFY)
#define pDMA9_Y_MODIFY		((volatile signed   short *)DMA9_Y_MODIFY)
#define pDMA9_CURR_DESC_PTR	((void * volatile *)DMA9_CURR_DESC_PTR)
#define pDMA9_CURR_ADDR		((void * volatile *)DMA9_CURR_ADDR)
#define pDMA9_CURR_X_COUNT	((volatile unsigned short *)DMA9_CURR_X_COUNT)
#define pDMA9_CURR_Y_COUNT	((volatile unsigned short *)DMA9_CURR_Y_COUNT)
#define pDMA9_IRQ_STATUS	((volatile unsigned short *)DMA9_IRQ_STATUS)
#define pDMA9_PERIPHERAL_MAP	((volatile unsigned short *)DMA9_PERIPHERAL_MAP)

#define pDMA10_CONFIG		((volatile unsigned short *)DMA10_CONFIG)
#define pDMA10_NEXT_DESC_PTR	((void * volatile *)DMA10_NEXT_DESC_PTR)
#define pDMA10_START_ADDR	((void * volatile *)DMA10_START_ADDR)
#define pDMA10_X_COUNT		((volatile unsigned short *)DMA10_X_COUNT)
#define pDMA10_Y_COUNT		((volatile unsigned short *)DMA10_Y_COUNT)
#define pDMA10_X_MODIFY		((volatile signed   short *)DMA10_X_MODIFY)
#define pDMA10_Y_MODIFY		((volatile signed   short *)DMA10_Y_MODIFY)
#define pDMA10_CURR_DESC_PTR	((void * volatile *)DMA10_CURR_DESC_PTR)
#define pDMA10_CURR_ADDR	((void * volatile *)DMA10_CURR_ADDR)
#define pDMA10_CURR_X_COUNT	((volatile unsigned short *)DMA10_CURR_X_COUNT)
#define pDMA10_CURR_Y_COUNT	((volatile unsigned short *)DMA10_CURR_Y_COUNT)
#define pDMA10_IRQ_STATUS	((volatile unsigned short *)DMA10_IRQ_STATUS)
#define pDMA10_PERIPHERAL_MAP	((volatile unsigned short *)DMA10_PERIPHERAL_MAP)

#define pDMA11_CONFIG		((volatile unsigned short *)DMA11_CONFIG)
#define pDMA11_NEXT_DESC_PTR	((void * volatile *)DMA11_NEXT_DESC_PTR)
#define pDMA11_START_ADDR	((void * volatile *)DMA11_START_ADDR)
#define pDMA11_X_COUNT		((volatile unsigned short *)DMA11_X_COUNT)
#define pDMA11_Y_COUNT		((volatile unsigned short *)DMA11_Y_COUNT)
#define pDMA11_X_MODIFY		((volatile signed   short *)DMA11_X_MODIFY)
#define pDMA11_Y_MODIFY		((volatile signed   short *)DMA11_Y_MODIFY)
#define pDMA11_CURR_DESC_PTR	((void * volatile *)DMA11_CURR_DESC_PTR)
#define pDMA11_CURR_ADDR	((void * volatile *)DMA11_CURR_ADDR)
#define pDMA11_CURR_X_COUNT	((volatile unsigned short *)DMA11_CURR_X_COUNT)
#define pDMA11_CURR_Y_COUNT	((volatile unsigned short *)DMA11_CURR_Y_COUNT)
#define pDMA11_IRQ_STATUS	((volatile unsigned short *)DMA11_IRQ_STATUS)
#define pDMA11_PERIPHERAL_MAP	((volatile unsigned short *)DMA11_PERIPHERAL_MAP)

#define pMDMA_D0_CONFIG		((volatile unsigned short *)MDMA_D0_CONFIG)
#define pMDMA_D0_NEXT_DESC_PTR	((void * volatile *)MDMA_D0_NEXT_DESC_PTR)
#define pMDMA_D0_START_ADDR	((void * volatile *)MDMA_D0_START_ADDR)
#define pMDMA_D0_X_COUNT	((volatile unsigned short *)MDMA_D0_X_COUNT)
#define pMDMA_D0_Y_COUNT	((volatile unsigned short *)MDMA_D0_Y_COUNT)
#define pMDMA_D0_X_MODIFY	((volatile signed   short *)MDMA_D0_X_MODIFY)
#define pMDMA_D0_Y_MODIFY	((volatile signed   short *)MDMA_D0_Y_MODIFY)
#define pMDMA_D0_CURR_DESC_PTR	((void * volatile *)MDMA_D0_CURR_DESC_PTR)
#define pMDMA_D0_CURR_ADDR	((void * volatile *)MDMA_D0_CURR_ADDR)
#define pMDMA_D0_CURR_X_COUNT	((volatile unsigned short *)MDMA_D0_CURR_X_COUNT)
#define pMDMA_D0_CURR_Y_COUNT	((volatile unsigned short *)MDMA_D0_CURR_Y_COUNT)
#define pMDMA_D0_IRQ_STATUS	((volatile unsigned short *)MDMA_D0_IRQ_STATUS)
#define pMDMA_D0_PERIPHERAL_MAP ((volatile unsigned short *)MDMA_D0_PERIPHERAL_MAP)

#define pMDMA_S0_CONFIG		((volatile unsigned short *)MDMA_S0_CONFIG)
#define pMDMA_S0_NEXT_DESC_PTR	((void * volatile *)MDMA_S0_NEXT_DESC_PTR)
#define pMDMA_S0_START_ADDR	((void * volatile *)MDMA_S0_START_ADDR)
#define pMDMA_S0_X_COUNT	((volatile unsigned short *)MDMA_S0_X_COUNT)
#define pMDMA_S0_Y_COUNT	((volatile unsigned short *)MDMA_S0_Y_COUNT)
#define pMDMA_S0_X_MODIFY	((volatile signed   short *)MDMA_S0_X_MODIFY)
#define pMDMA_S0_Y_MODIFY	((volatile signed   short *)MDMA_S0_Y_MODIFY)
#define pMDMA_S0_CURR_DESC_PTR	((void * volatile *)MDMA_S0_CURR_DESC_PTR)
#define pMDMA_S0_CURR_ADDR	((void * volatile *)MDMA_S0_CURR_ADDR)
#define pMDMA_S0_CURR_X_COUNT	((volatile unsigned short *)MDMA_S0_CURR_X_COUNT)
#define pMDMA_S0_CURR_Y_COUNT	((volatile unsigned short *)MDMA_S0_CURR_Y_COUNT)
#define pMDMA_S0_IRQ_STATUS	((volatile unsigned short *)MDMA_S0_IRQ_STATUS)
#define pMDMA_S0_PERIPHERAL_MAP	((volatile unsigned short *)MDMA_S0_PERIPHERAL_MAP)

#define pMDMA_D1_CONFIG		((volatile unsigned short *)MDMA_D1_CONFIG)
#define pMDMA_D1_NEXT_DESC_PTR	((void * volatile *)MDMA_D1_NEXT_DESC_PTR)
#define pMDMA_D1_START_ADDR	((void * volatile *)MDMA_D1_START_ADDR)
#define pMDMA_D1_X_COUNT	((volatile unsigned short *)MDMA_D1_X_COUNT)
#define pMDMA_D1_Y_COUNT	((volatile unsigned short *)MDMA_D1_Y_COUNT)
#define pMDMA_D1_X_MODIFY	((volatile signed   short *)MDMA_D1_X_MODIFY)
#define pMDMA_D1_Y_MODIFY	((volatile signed   short *)MDMA_D1_Y_MODIFY)
#define pMDMA_D1_CURR_DESC_PTR	((void * volatile *)MDMA_D1_CURR_DESC_PTR)
#define pMDMA_D1_CURR_ADDR	((void * volatile *)MDMA_D1_CURR_ADDR)
#define pMDMA_D1_CURR_X_COUNT	((volatile unsigned short *)MDMA_D1_CURR_X_COUNT)
#define pMDMA_D1_CURR_Y_COUNT	((volatile unsigned short *)MDMA_D1_CURR_Y_COUNT)
#define pMDMA_D1_IRQ_STATUS	((volatile unsigned short *)MDMA_D1_IRQ_STATUS)
#define pMDMA_D1_PERIPHERAL_MAP	((volatile unsigned short *)MDMA_D1_PERIPHERAL_MAP)

#define pMDMA_S1_CONFIG		((volatile unsigned short *)MDMA_S1_CONFIG)
#define pMDMA_S1_NEXT_DESC_PTR	((void * volatile *)MDMA_S1_NEXT_DESC_PTR)
#define pMDMA_S1_START_ADDR	((void * volatile *)MDMA_S1_START_ADDR)
#define pMDMA_S1_X_COUNT	((volatile unsigned short *)MDMA_S1_X_COUNT)
#define pMDMA_S1_Y_COUNT	((volatile unsigned short *)MDMA_S1_Y_COUNT)
#define pMDMA_S1_X_MODIFY	((volatile signed   short *)MDMA_S1_X_MODIFY)
#define pMDMA_S1_Y_MODIFY	((volatile signed   short *)MDMA_S1_Y_MODIFY)
#define pMDMA_S1_CURR_DESC_PTR	((void * volatile *)MDMA_S1_CURR_DESC_PTR)
#define pMDMA_S1_CURR_ADDR	((void * volatile *)MDMA_S1_CURR_ADDR)
#define pMDMA_S1_CURR_X_COUNT	((volatile unsigned short *)MDMA_S1_CURR_X_COUNT)
#define pMDMA_S1_CURR_Y_COUNT	((volatile unsigned short *)MDMA_S1_CURR_Y_COUNT)
#define pMDMA_S1_IRQ_STATUS	((volatile unsigned short *)MDMA_S1_IRQ_STATUS)
#define pMDMA_S1_PERIPHERAL_MAP	((volatile unsigned short *)MDMA_S1_PERIPHERAL_MAP)

/* Parallel Peripheral Interface (0xFFC01000 - 0xFFC010FF) */
#define pPPI_CONTROL		((volatile unsigned short *)PPI_CONTROL)
#define pPPI_STATUS		((volatile unsigned short *)PPI_STATUS)
#define pPPI_DELAY		((volatile unsigned short *)PPI_DELAY)
#define pPPI_COUNT		((volatile unsigned short *)PPI_COUNT)
#define pPPI_FRAME		((volatile unsigned short *)PPI_FRAME)

/* Two-Wire Interface		(0xFFC01400 - 0xFFC014FF) */
#define pTWI_CLKDIV		((volatile unsigned short *)TWI_CLKDIV)
#define pTWI_CONTROL		((volatile unsigned short *)TWI_CONTROL)
#define pTWI_SLAVE_CTL		((volatile unsigned short *)TWI_SLAVE_CTL)
#define pTWI_SLAVE_STAT		((volatile unsigned short *)TWI_SLAVE_STAT)
#define pTWI_SLAVE_ADDR		((volatile unsigned short *)TWI_SLAVE_ADDR)
#define pTWI_MASTER_CTL		((volatile unsigned short *)TWI_MASTER_CTL)
#define pTWI_MASTER_STAT	((volatile unsigned short *)TWI_MASTER_STAT)
#define pTWI_MASTER_ADDR	((volatile unsigned short *)TWI_MASTER_ADDR)
#define pTWI_INT_STAT		((volatile unsigned short *)TWI_INT_STAT)
#define pTWI_INT_MASK		((volatile unsigned short *)TWI_INT_MASK)
#define pTWI_FIFO_CTL		((volatile unsigned short *)TWI_FIFO_CTL)
#define pTWI_FIFO_STAT		((volatile unsigned short *)TWI_FIFO_STAT)
#define pTWI_XMT_DATA8		((volatile unsigned short *)TWI_XMT_DATA8)
#define pTWI_XMT_DATA16		((volatile unsigned short *)TWI_XMT_DATA16)
#define pTWI_RCV_DATA8		((volatile unsigned short *)TWI_RCV_DATA8)
#define pTWI_RCV_DATA16		((volatile unsigned short *)TWI_RCV_DATA16)

/* General Purpose I/O Port G (0xFFC01500 - 0xFFC015FF) */
#define pPORTGIO		((volatile unsigned short *)PORTGIO)
#define pPORTGIO_CLEAR		((volatile unsigned short *)PORTGIO_CLEAR)
#define pPORTGIO_SET		((volatile unsigned short *)PORTGIO_SET)
#define pPORTGIO_TOGGLE	((volatile unsigned short *)PORTGIO_TOGGLE)
#define pPORTGIO_MASKA		((volatile unsigned short *)PORTGIO_MASKA)
#define pPORTGIO_MASKA_CLEAR	((volatile unsigned short *)PORTGIO_MASKA_CLEAR)
#define pPORTGIO_MASKA_SET	((volatile unsigned short *)PORTGIO_MASKA_SET)
#define pPORTGIO_MASKA_TOGGLE	((volatile unsigned short *)PORTGIO_MASKA_TOGGLE)
#define pPORTGIO_MASKB		((volatile unsigned short *)PORTGIO_MASKB)
#define pPORTGIO_MASKB_CLEAR	((volatile unsigned short *)PORTGIO_MASKB_CLEAR)
#define pPORTGIO_MASKB_SET	((volatile unsigned short *)PORTGIO_MASKB_SET)
#define pPORTGIO_MASKB_TOGGLE	((volatile unsigned short *)PORTGIO_MASKB_TOGGLE)
#define pPORTGIO_DIR		((volatile unsigned short *)PORTGIO_DIR)
#define pPORTGIO_POLAR		((volatile unsigned short *)PORTGIO_POLAR)
#define pPORTGIO_EDGE		((volatile unsigned short *)PORTGIO_EDGE)
#define pPORTGIO_BOTH		((volatile unsigned short *)PORTGIO_BOTH)
#define pPORTGIO_INEN		((volatile unsigned short *)PORTGIO_INEN)

/* General Purpose I/O Port H (0xFFC01700 - 0xFFC017FF) */
#define pPORTHIO		((volatile unsigned short *)PORTHIO)
#define pPORTHIO_CLEAR		((volatile unsigned short *)PORTHIO_CLEAR)
#define pPORTHIO_SET		((volatile unsigned short *)PORTHIO_SET)
#define pPORTHIO_TOGGLE		((volatile unsigned short *)PORTHIO_TOGGLE)
#define pPORTHIO_MASKA		((volatile unsigned short *)PORTHIO_MASKA)
#define pPORTHIO_MASKA_CLEAR	((volatile unsigned short *)PORTHIO_MASKA_CLEAR)
#define pPORTHIO_MASKA_SET	((volatile unsigned short *)PORTHIO_MASKA_SET)
#define pPORTHIO_MASKA_TOGGLE	((volatile unsigned short *)PORTHIO_MASKA_TOGGLE)
#define pPORTHIO_MASKB		((volatile unsigned short *)PORTHIO_MASKB)
#define pPORTHIO_MASKB_CLEAR	((volatile unsigned short *)PORTHIO_MASKB_CLEAR)
#define pPORTHIO_MASKB_SET	((volatile unsigned short *)PORTHIO_MASKB_SET)
#define pPORTHIO_MASKB_TOGGLE	((volatile unsigned short *)PORTHIO_MASKB_TOGGLE)
#define pPORTHIO_DIR		((volatile unsigned short *)PORTHIO_DIR)
#define pPORTHIO_POLAR		((volatile unsigned short *)PORTHIO_POLAR)
#define pPORTHIO_EDGE		((volatile unsigned short *)PORTHIO_EDGE)
#define pPORTHIO_BOTH		((volatile unsigned short *)PORTHIO_BOTH)
#define pPORTHIO_INEN		((volatile unsigned short *)PORTHIO_INEN)

/* UART1 Controller		(0xFFC02000 - 0xFFC020FF) */
#define pUART1_THR		((volatile unsigned short *)UART1_THR)
#define pUART1_RBR		((volatile unsigned short *)UART1_RBR)
#define pUART1_DLL		((volatile unsigned short *)UART1_DLL)
#define pUART1_IER		((volatile unsigned short *)UART1_IER)
#define pUART1_DLH		((volatile unsigned short *)UART1_DLH)
#define pUART1_IIR		((volatile unsigned short *)UART1_IIR)
#define pUART1_LCR		((volatile unsigned short *)UART1_LCR)
#define pUART1_MCR		((volatile unsigned short *)UART1_MCR)
#define pUART1_LSR		((volatile unsigned short *)UART1_LSR)
#define pUART1_MSR		((volatile unsigned short *)UART1_LSR)
#define pUART1_SCR		((volatile unsigned short *)UART1_SCR)
#define pUART1_GCTL		((volatile unsigned short *)UART1_GCTL)

/* default UART controller */
#if (CONFIG_UART_CONSOLE==1)

#define pUART_THR		pUART1_THR
#define pUART_RBR		pUART1_RBR
#define pUART_DLL		pUART1_DLL
#define pUART_IER		pUART1_IER
#define pUART_DLH		pUART1_DLH
#define pUART_IIR		pUART1_IIR
#define pUART_LCR		pUART1_LCR
#define pUART_MCR		pUART1_MCR
#define pUART_LSR		pUART1_LSR
#define pUART_MSR		pUART1_MSR
#define pUART_SCR		pUART1_SCR
#define pUART_GCTL		pUART1_GCTL

#else

#define pUART_THR		pUART0_THR
#define pUART_RBR		pUART0_RBR
#define pUART_DLL		pUART0_DLL
#define pUART_IER		pUART0_IER
#define pUART_DLH		pUART0_DLH
#define pUART_IIR		pUART0_IIR
#define pUART_LCR		pUART0_LCR
#define pUART_MCR		pUART0_MCR
#define pUART_LSR		pUART0_LSR
#define pUART_MSR		pUART0_MSR
#define pUART_SCR		pUART0_SCR
#define pUART_GCTL		pUART0_GCTL

#endif

/* CAN Controller		(0xFFC02A00 - 0xFFC02FFF) */
/* For Mailboxes 0-15 */
#define pCAN_MC1		((volatile unsigned short *)CAN_MC1)
#define pCAN_MD1		((volatile unsigned short *)CAN_MD1)
#define pCAN_TRS1		((volatile unsigned short *)CAN_TRS1)
#define pCAN_TRR1		((volatile unsigned short *)CAN_TRR1)
#define pCAN_TA1		((volatile unsigned short *)CAN_TA1)
#define pCAN_AA1		((volatile unsigned short *)CAN_AA1)
#define pCAN_RMP1		((volatile unsigned short *)CAN_RMP1)
#define pCAN_RML1		((volatile unsigned short *)CAN_RML1)
#define pCAN_MBTIF1		((volatile unsigned short *)CAN_MBTIF1)
#define pCAN_MBRIF1		((volatile unsigned short *)CAN_MBRIF1)
#define pCAN_MBIM1		((volatile unsigned short *)CAN_MBIM1)
#define pCAN_RFH1		((volatile unsigned short *)CAN_RFH1)
#define pCAN_OPSS1		((volatile unsigned short *)CAN_OPSS1)

/* For Mailboxes 16-31 */
#define pCAN_MC2		((volatile unsigned short *)CAN_MC2)
#define pCAN_MD2		((volatile unsigned short *)CAN_MD2)
#define pCAN_TRS2		((volatile unsigned short *)CAN_TRS2)
#define pCAN_TRR2		((volatile unsigned short *)CAN_TRR2)
#define pCAN_TA2		((volatile unsigned short *)CAN_TA2)
#define pCAN_AA2		((volatile unsigned short *)CAN_AA2)
#define pCAN_RMP2		((volatile unsigned short *)CAN_RMP2)
#define pCAN_RML2		((volatile unsigned short *)CAN_RML2)
#define pCAN_MBTIF2		((volatile unsigned short *)CAN_MBTIF2)
#define pCAN_MBRIF2		((volatile unsigned short *)CAN_MBRIF2)
#define pCAN_MBIM2		((volatile unsigned short *)CAN_MBIM2)
#define pCAN_RFH2		((volatile unsigned short *)CAN_RFH2)
#define pCAN_OPSS2		((volatile unsigned short *)CAN_OPSS2)

#define pCAN_CLOCK		((volatile unsigned short *)CAN_CLOCK)
#define pCAN_TIMING		((volatile unsigned short *)CAN_TIMING)
#define pCAN_DEBUG		((volatile unsigned short *)CAN_DEBUG)
#define pCAN_STATUS		((volatile unsigned short *)CAN_STATUS)
#define pCAN_CEC		((volatile unsigned short *)CAN_CEC)
#define pCAN_GIS		((volatile unsigned short *)CAN_GIS)
#define pCAN_GIM		((volatile unsigned short *)CAN_GIM)
#define pCAN_GIF		((volatile unsigned short *)CAN_GIF)
#define pCAN_CONTROL		((volatile unsigned short *)CAN_CONTROL)
#define pCAN_INTR		((volatile unsigned short *)CAN_INTR)
#define pCAN_SFCMVER		((volatile unsigned short *)CAN_SFCMVER)
#define pCAN_MBTD		((volatile unsigned short *)CAN_MBTD)
#define pCAN_EWR		((volatile unsigned short *)CAN_EWR)
#define pCAN_ESR		((volatile unsigned short *)CAN_ESR)
#define pCAN_UCREG		((volatile unsigned short *)CAN_UCREG)
#define pCAN_UCCNT		((volatile unsigned short *)CAN_UCCNT)
#define pCAN_UCRC		((volatile unsigned short *)CAN_UCRC)
#define pCAN_UCCNF		((volatile unsigned short *)CAN_UCCNF)
#define pCAN_SFCMVER2		((volatile unsigned short *)CAN_SFCMVER2)

/* Mailbox Acceptance Masks */
#define pCAN_AM00L		((volatile unsigned short *)CAN_AM00L)
#define pCAN_AM00H		((volatile unsigned short *)CAN_AM00H)
#define pCAN_AM01L		((volatile unsigned short *)CAN_AM01L)
#define pCAN_AM01H		((volatile unsigned short *)CAN_AM01H)
#define pCAN_AM02L		((volatile unsigned short *)CAN_AM02L)
#define pCAN_AM02H		((volatile unsigned short *)CAN_AM02H)
#define pCAN_AM03L		((volatile unsigned short *)CAN_AM03L)
#define pCAN_AM03H		((volatile unsigned short *)CAN_AM03H)
#define pCAN_AM04L		((volatile unsigned short *)CAN_AM04L)
#define pCAN_AM04H		((volatile unsigned short *)CAN_AM04H)
#define pCAN_AM05L		((volatile unsigned short *)CAN_AM05L)
#define pCAN_AM05H		((volatile unsigned short *)CAN_AM05H)
#define pCAN_AM06L		((volatile unsigned short *)CAN_AM06L)
#define pCAN_AM06H		((volatile unsigned short *)CAN_AM06H)
#define pCAN_AM07L		((volatile unsigned short *)CAN_AM07L)
#define pCAN_AM07H		((volatile unsigned short *)CAN_AM07H)
#define pCAN_AM08L		((volatile unsigned short *)CAN_AM08L)
#define pCAN_AM08H		((volatile unsigned short *)CAN_AM08H)
#define pCAN_AM09L		((volatile unsigned short *)CAN_AM09L)
#define pCAN_AM09H		((volatile unsigned short *)CAN_AM09H)
#define pCAN_AM10L		((volatile unsigned short *)CAN_AM10L)
#define pCAN_AM10H		((volatile unsigned short *)CAN_AM10H)
#define pCAN_AM11L		((volatile unsigned short *)CAN_AM11L)
#define pCAN_AM11H		((volatile unsigned short *)CAN_AM11H)
#define pCAN_AM12L		((volatile unsigned short *)CAN_AM12L)
#define pCAN_AM12H		((volatile unsigned short *)CAN_AM12H)
#define pCAN_AM13L		((volatile unsigned short *)CAN_AM13L)
#define pCAN_AM13H		((volatile unsigned short *)CAN_AM13H)
#define pCAN_AM14L		((volatile unsigned short *)CAN_AM14L)
#define pCAN_AM14H		((volatile unsigned short *)CAN_AM14H)
#define pCAN_AM15L		((volatile unsigned short *)CAN_AM15L)
#define pCAN_AM15H		((volatile unsigned short *)CAN_AM15H)

#define pCAN_AM16L		((volatile unsigned short *)CAN_AM16L)
#define pCAN_AM16H		((volatile unsigned short *)CAN_AM16H)
#define pCAN_AM17L		((volatile unsigned short *)CAN_AM17L)
#define pCAN_AM17H		((volatile unsigned short *)CAN_AM17H)
#define pCAN_AM18L		((volatile unsigned short *)CAN_AM18L)
#define pCAN_AM18H		((volatile unsigned short *)CAN_AM18H)
#define pCAN_AM19L		((volatile unsigned short *)CAN_AM19L)
#define pCAN_AM19H		((volatile unsigned short *)CAN_AM19H)
#define pCAN_AM20L		((volatile unsigned short *)CAN_AM20L)
#define pCAN_AM20H		((volatile unsigned short *)CAN_AM20H)
#define pCAN_AM21L		((volatile unsigned short *)CAN_AM21L)
#define pCAN_AM21H		((volatile unsigned short *)CAN_AM21H)
#define pCAN_AM22L		((volatile unsigned short *)CAN_AM22L)
#define pCAN_AM22H		((volatile unsigned short *)CAN_AM22H)
#define pCAN_AM23L		((volatile unsigned short *)CAN_AM23L)
#define pCAN_AM23H		((volatile unsigned short *)CAN_AM23H)
#define pCAN_AM24L		((volatile unsigned short *)CAN_AM24L)
#define pCAN_AM24H		((volatile unsigned short *)CAN_AM24H)
#define pCAN_AM25L		((volatile unsigned short *)CAN_AM25L)
#define pCAN_AM25H		((volatile unsigned short *)CAN_AM25H)
#define pCAN_AM26L		((volatile unsigned short *)CAN_AM26L)
#define pCAN_AM26H		((volatile unsigned short *)CAN_AM26H)
#define pCAN_AM27L		((volatile unsigned short *)CAN_AM27L)
#define pCAN_AM27H		((volatile unsigned short *)CAN_AM27H)
#define pCAN_AM28L		((volatile unsigned short *)CAN_AM28L)
#define pCAN_AM28H		((volatile unsigned short *)CAN_AM28H)
#define pCAN_AM29L		((volatile unsigned short *)CAN_AM29L)
#define pCAN_AM29H		((volatile unsigned short *)CAN_AM29H)
#define pCAN_AM30L		((volatile unsigned short *)CAN_AM30L)
#define pCAN_AM30H		((volatile unsigned short *)CAN_AM30H)
#define pCAN_AM31L		((volatile unsigned short *)CAN_AM31L)
#define pCAN_AM31H		((volatile unsigned short *)CAN_AM31H)

/* CAN Acceptance Mask Area Macros */
#define pCAN_AM_L(x)		((volatile unsigned short *)CAN_AM_L(x))
#define pCAN_AM_H(x)		((volatile unsigned short *)CAN_AM_H(x))

/* Mailbox Registers */
#define pCAN_MB00_ID1		((volatile unsigned short *)CAN_MB00_ID1)
#define pCAN_MB00_ID0		((volatile unsigned short *)CAN_MB00_ID0)
#define pCAN_MB00_TIMESTAMP	((volatile unsigned short *)CAN_MB00_TIMESTAMP)
#define pCAN_MB00_LENGTH	((volatile unsigned short *)CAN_MB00_LENGTH)
#define pCAN_MB00_DATA3		((volatile unsigned short *)CAN_MB00_DATA3)
#define pCAN_MB00_DATA2		((volatile unsigned short *)CAN_MB00_DATA2)
#define pCAN_MB00_DATA1		((volatile unsigned short *)CAN_MB00_DATA1)
#define pCAN_MB00_DATA0		((volatile unsigned short *)CAN_MB00_DATA0)

#define pCAN_MB01_ID1		((volatile unsigned short *)CAN_MB01_ID1)
#define pCAN_MB01_ID0		((volatile unsigned short *)CAN_MB01_ID0)
#define pCAN_MB01_TIMESTAMP	((volatile unsigned short *)CAN_MB01_TIMESTAMP)
#define pCAN_MB01_LENGTH	((volatile unsigned short *)CAN_MB01_LENGTH)
#define pCAN_MB01_DATA3		((volatile unsigned short *)CAN_MB01_DATA3)
#define pCAN_MB01_DATA2		((volatile unsigned short *)CAN_MB01_DATA2)
#define pCAN_MB01_DATA1		((volatile unsigned short *)CAN_MB01_DATA1)
#define pCAN_MB01_DATA0		((volatile unsigned short *)CAN_MB01_DATA0)

#define pCAN_MB02_ID1		((volatile unsigned short *)CAN_MB02_ID1)
#define pCAN_MB02_ID0		((volatile unsigned short *)CAN_MB02_ID0)
#define pCAN_MB02_TIMESTAMP	((volatile unsigned short *)CAN_MB02_TIMESTAMP)
#define pCAN_MB02_LENGTH	((volatile unsigned short *)CAN_MB02_LENGTH)
#define pCAN_MB02_DATA3		((volatile unsigned short *)CAN_MB02_DATA3)
#define pCAN_MB02_DATA2		((volatile unsigned short *)CAN_MB02_DATA2)
#define pCAN_MB02_DATA1		((volatile unsigned short *)CAN_MB02_DATA1)
#define pCAN_MB02_DATA0		((volatile unsigned short *)CAN_MB02_DATA0)

#define pCAN_MB03_ID1		((volatile unsigned short *)CAN_MB03_ID1)
#define pCAN_MB03_ID0		((volatile unsigned short *)CAN_MB03_ID0)
#define pCAN_MB03_TIMESTAMP	((volatile unsigned short *)CAN_MB03_TIMESTAMP)
#define pCAN_MB03_LENGTH	((volatile unsigned short *)CAN_MB03_LENGTH)
#define pCAN_MB03_DATA3		((volatile unsigned short *)CAN_MB03_DATA3)
#define pCAN_MB03_DATA2		((volatile unsigned short *)CAN_MB03_DATA2)
#define pCAN_MB03_DATA1		((volatile unsigned short *)CAN_MB03_DATA1)
#define pCAN_MB03_DATA0		((volatile unsigned short *)CAN_MB03_DATA0)

#define pCAN_MB04_ID1		((volatile unsigned short *)CAN_MB04_ID1)
#define pCAN_MB04_ID0		((volatile unsigned short *)CAN_MB04_ID0)
#define pCAN_MB04_TIMESTAMP	((volatile unsigned short *)CAN_MB04_TIMESTAMP)
#define pCAN_MB04_LENGTH	((volatile unsigned short *)CAN_MB04_LENGTH)
#define pCAN_MB04_DATA3		((volatile unsigned short *)CAN_MB04_DATA3)
#define pCAN_MB04_DATA2		((volatile unsigned short *)CAN_MB04_DATA2)
#define pCAN_MB04_DATA1		((volatile unsigned short *)CAN_MB04_DATA1)
#define pCAN_MB04_DATA0		((volatile unsigned short *)CAN_MB04_DATA0)

#define pCAN_MB05_ID1		((volatile unsigned short *)CAN_MB05_ID1)
#define pCAN_MB05_ID0		((volatile unsigned short *)CAN_MB05_ID0)
#define pCAN_MB05_TIMESTAMP	((volatile unsigned short *)CAN_MB05_TIMESTAMP)
#define pCAN_MB05_LENGTH	((volatile unsigned short *)CAN_MB05_LENGTH)
#define pCAN_MB05_DATA3		((volatile unsigned short *)CAN_MB05_DATA3)
#define pCAN_MB05_DATA2		((volatile unsigned short *)CAN_MB05_DATA2)
#define pCAN_MB05_DATA1		((volatile unsigned short *)CAN_MB05_DATA1)
#define pCAN_MB05_DATA0		((volatile unsigned short *)CAN_MB05_DATA0)

#define pCAN_MB06_ID1		((volatile unsigned short *)CAN_MB06_ID1)
#define pCAN_MB06_ID0		((volatile unsigned short *)CAN_MB06_ID0)
#define pCAN_MB06_TIMESTAMP	((volatile unsigned short *)CAN_MB06_TIMESTAMP)
#define pCAN_MB06_LENGTH	((volatile unsigned short *)CAN_MB06_LENGTH)
#define pCAN_MB06_DATA3		((volatile unsigned short *)CAN_MB06_DATA3)
#define pCAN_MB06_DATA2		((volatile unsigned short *)CAN_MB06_DATA2)
#define pCAN_MB06_DATA1		((volatile unsigned short *)CAN_MB06_DATA1)
#define pCAN_MB06_DATA0		((volatile unsigned short *)CAN_MB06_DATA0)

#define pCAN_MB07_ID1		((volatile unsigned short *)CAN_MB07_ID1)
#define pCAN_MB07_ID0		((volatile unsigned short *)CAN_MB07_ID0)
#define pCAN_MB07_TIMESTAMP	((volatile unsigned short *)CAN_MB07_TIMESTAMP)
#define pCAN_MB07_LENGTH	((volatile unsigned short *)CAN_MB07_LENGTH)
#define pCAN_MB07_DATA3		((volatile unsigned short *)CAN_MB07_DATA3)
#define pCAN_MB07_DATA2		((volatile unsigned short *)CAN_MB07_DATA2)
#define pCAN_MB07_DATA1		((volatile unsigned short *)CAN_MB07_DATA1)
#define pCAN_MB07_DATA0		((volatile unsigned short *)CAN_MB07_DATA0)

#define pCAN_MB08_ID1		((volatile unsigned short *)CAN_MB08_ID1)
#define pCAN_MB08_ID0		((volatile unsigned short *)CAN_MB08_ID0)
#define pCAN_MB08_TIMESTAMP	((volatile unsigned short *)CAN_MB08_TIMESTAMP)
#define pCAN_MB08_LENGTH	((volatile unsigned short *)CAN_MB08_LENGTH)
#define pCAN_MB08_DATA3		((volatile unsigned short *)CAN_MB08_DATA3)
#define pCAN_MB08_DATA2		((volatile unsigned short *)CAN_MB08_DATA2)
#define pCAN_MB08_DATA1		((volatile unsigned short *)CAN_MB08_DATA1)
#define pCAN_MB08_DATA0		((volatile unsigned short *)CAN_MB08_DATA0)

#define pCAN_MB09_ID1		((volatile unsigned short *)CAN_MB09_ID1)
#define pCAN_MB09_ID0		((volatile unsigned short *)CAN_MB09_ID0)
#define pCAN_MB09_TIMESTAMP	((volatile unsigned short *)CAN_MB09_TIMESTAMP)
#define pCAN_MB09_LENGTH	((volatile unsigned short *)CAN_MB09_LENGTH)
#define pCAN_MB09_DATA3		((volatile unsigned short *)CAN_MB09_DATA3)
#define pCAN_MB09_DATA2		((volatile unsigned short *)CAN_MB09_DATA2)
#define pCAN_MB09_DATA1		((volatile unsigned short *)CAN_MB09_DATA1)
#define pCAN_MB09_DATA0		((volatile unsigned short *)CAN_MB09_DATA0)

#define pCAN_MB10_ID1		((volatile unsigned short *)CAN_MB10_ID1)
#define pCAN_MB10_ID0		((volatile unsigned short *)CAN_MB10_ID0)
#define pCAN_MB10_TIMESTAMP	((volatile unsigned short *)CAN_MB10_TIMESTAMP)
#define pCAN_MB10_LENGTH	((volatile unsigned short *)CAN_MB10_LENGTH)
#define pCAN_MB10_DATA3		((volatile unsigned short *)CAN_MB10_DATA3)
#define pCAN_MB10_DATA2		((volatile unsigned short *)CAN_MB10_DATA2)
#define pCAN_MB10_DATA1		((volatile unsigned short *)CAN_MB10_DATA1)
#define pCAN_MB10_DATA0		((volatile unsigned short *)CAN_MB10_DATA0)

#define pCAN_MB11_ID1		((volatile unsigned short *)CAN_MB11_ID1)
#define pCAN_MB11_ID0		((volatile unsigned short *)CAN_MB11_ID0)
#define pCAN_MB11_TIMESTAMP	((volatile unsigned short *)CAN_MB11_TIMESTAMP)
#define pCAN_MB11_LENGTH	((volatile unsigned short *)CAN_MB11_LENGTH)
#define pCAN_MB11_DATA3		((volatile unsigned short *)CAN_MB11_DATA3)
#define pCAN_MB11_DATA2		((volatile unsigned short *)CAN_MB11_DATA2)
#define pCAN_MB11_DATA1		((volatile unsigned short *)CAN_MB11_DATA1)
#define pCAN_MB11_DATA0		((volatile unsigned short *)CAN_MB11_DATA0)

#define pCAN_MB12_ID1		((volatile unsigned short *)CAN_MB12_ID1)
#define pCAN_MB12_ID0		((volatile unsigned short *)CAN_MB12_ID0)
#define pCAN_MB12_TIMESTAMP	((volatile unsigned short *)CAN_MB12_TIMESTAMP)
#define pCAN_MB12_LENGTH	((volatile unsigned short *)CAN_MB12_LENGTH)
#define pCAN_MB12_DATA3		((volatile unsigned short *)CAN_MB12_DATA3)
#define pCAN_MB12_DATA2		((volatile unsigned short *)CAN_MB12_DATA2)
#define pCAN_MB12_DATA1		((volatile unsigned short *)CAN_MB12_DATA1)
#define pCAN_MB12_DATA0		((volatile unsigned short *)CAN_MB12_DATA0)

#define pCAN_MB13_ID1		((volatile unsigned short *)CAN_MB13_ID1)
#define pCAN_MB13_ID0		((volatile unsigned short *)CAN_MB13_ID0)
#define pCAN_MB13_TIMESTAMP	((volatile unsigned short *)CAN_MB13_TIMESTAMP)
#define pCAN_MB13_LENGTH	((volatile unsigned short *)CAN_MB13_LENGTH)
#define pCAN_MB13_DATA3		((volatile unsigned short *)CAN_MB13_DATA3)
#define pCAN_MB13_DATA2		((volatile unsigned short *)CAN_MB13_DATA2)
#define pCAN_MB13_DATA1		((volatile unsigned short *)CAN_MB13_DATA1)
#define pCAN_MB13_DATA0		((volatile unsigned short *)CAN_MB13_DATA0)

#define pCAN_MB14_ID1		((volatile unsigned short *)CAN_MB14_ID1)
#define pCAN_MB14_ID0		((volatile unsigned short *)CAN_MB14_ID0)
#define pCAN_MB14_TIMESTAMP	((volatile unsigned short *)CAN_MB14_TIMESTAMP)
#define pCAN_MB14_LENGTH	((volatile unsigned short *)CAN_MB14_LENGTH)
#define pCAN_MB14_DATA3		((volatile unsigned short *)CAN_MB14_DATA3)
#define pCAN_MB14_DATA2		((volatile unsigned short *)CAN_MB14_DATA2)
#define pCAN_MB14_DATA1		((volatile unsigned short *)CAN_MB14_DATA1)
#define pCAN_MB14_DATA0		((volatile unsigned short *)CAN_MB14_DATA0)

#define pCAN_MB15_ID1		((volatile unsigned short *)CAN_MB15_ID1)
#define pCAN_MB15_ID0		((volatile unsigned short *)CAN_MB15_ID0)
#define pCAN_MB15_TIMESTAMP	((volatile unsigned short *)CAN_MB15_TIMESTAMP)
#define pCAN_MB15_LENGTH	((volatile unsigned short *)CAN_MB15_LENGTH)
#define pCAN_MB15_DATA3		((volatile unsigned short *)CAN_MB15_DATA3)
#define pCAN_MB15_DATA2		((volatile unsigned short *)CAN_MB15_DATA2)
#define pCAN_MB15_DATA1		((volatile unsigned short *)CAN_MB15_DATA1)
#define pCAN_MB15_DATA0		((volatile unsigned short *)CAN_MB15_DATA0)

#define pCAN_MB16_ID1		((volatile unsigned short *)CAN_MB16_ID1)
#define pCAN_MB16_ID0		((volatile unsigned short *)CAN_MB16_ID0)
#define pCAN_MB16_TIMESTAMP	((volatile unsigned short *)CAN_MB16_TIMESTAMP)
#define pCAN_MB16_LENGTH	((volatile unsigned short *)CAN_MB16_LENGTH)
#define pCAN_MB16_DATA3		((volatile unsigned short *)CAN_MB16_DATA3)
#define pCAN_MB16_DATA2		((volatile unsigned short *)CAN_MB16_DATA2)
#define pCAN_MB16_DATA1		((volatile unsigned short *)CAN_MB16_DATA1)
#define pCAN_MB16_DATA0		((volatile unsigned short *)CAN_MB16_DATA0)

#define pCAN_MB17_ID1		((volatile unsigned short *)CAN_MB17_ID1)
#define pCAN_MB17_ID0		((volatile unsigned short *)CAN_MB17_ID0)
#define pCAN_MB17_TIMESTAMP	((volatile unsigned short *)CAN_MB17_TIMESTAMP)
#define pCAN_MB17_LENGTH	((volatile unsigned short *)CAN_MB17_LENGTH)
#define pCAN_MB17_DATA3		((volatile unsigned short *)CAN_MB17_DATA3)
#define pCAN_MB17_DATA2		((volatile unsigned short *)CAN_MB17_DATA2)
#define pCAN_MB17_DATA1		((volatile unsigned short *)CAN_MB17_DATA1)
#define pCAN_MB17_DATA0		((volatile unsigned short *)CAN_MB17_DATA0)

#define pCAN_MB18_ID1		((volatile unsigned short *)CAN_MB18_ID1)
#define pCAN_MB18_ID0		((volatile unsigned short *)CAN_MB18_ID0)
#define pCAN_MB18_TIMESTAMP	((volatile unsigned short *)CAN_MB18_TIMESTAMP)
#define pCAN_MB18_LENGTH	((volatile unsigned short *)CAN_MB18_LENGTH)
#define pCAN_MB18_DATA3		((volatile unsigned short *)CAN_MB18_DATA3)
#define pCAN_MB18_DATA2		((volatile unsigned short *)CAN_MB18_DATA2)
#define pCAN_MB18_DATA1		((volatile unsigned short *)CAN_MB18_DATA1)
#define pCAN_MB18_DATA0		((volatile unsigned short *)CAN_MB18_DATA0)

#define pCAN_MB19_ID1		((volatile unsigned short *)CAN_MB19_ID1)
#define pCAN_MB19_ID0		((volatile unsigned short *)CAN_MB19_ID0)
#define pCAN_MB19_TIMESTAMP	((volatile unsigned short *)CAN_MB19_TIMESTAMP)
#define pCAN_MB19_LENGTH	((volatile unsigned short *)CAN_MB19_LENGTH)
#define pCAN_MB19_DATA3		((volatile unsigned short *)CAN_MB19_DATA3)
#define pCAN_MB19_DATA2		((volatile unsigned short *)CAN_MB19_DATA2)
#define pCAN_MB19_DATA1		((volatile unsigned short *)CAN_MB19_DATA1)
#define pCAN_MB19_DATA0		((volatile unsigned short *)CAN_MB19_DATA0)

#define pCAN_MB20_ID1		((volatile unsigned short *)CAN_MB20_ID1)
#define pCAN_MB20_ID0		((volatile unsigned short *)CAN_MB20_ID0)
#define pCAN_MB20_TIMESTAMP	((volatile unsigned short *)CAN_MB20_TIMESTAMP)
#define pCAN_MB20_LENGTH	((volatile unsigned short *)CAN_MB20_LENGTH)
#define pCAN_MB20_DATA3		((volatile unsigned short *)CAN_MB20_DATA3)
#define pCAN_MB20_DATA2		((volatile unsigned short *)CAN_MB20_DATA2)
#define pCAN_MB20_DATA1		((volatile unsigned short *)CAN_MB20_DATA1)
#define pCAN_MB20_DATA0		((volatile unsigned short *)CAN_MB20_DATA0)

#define pCAN_MB21_ID1		((volatile unsigned short *)CAN_MB21_ID1)
#define pCAN_MB21_ID0		((volatile unsigned short *)CAN_MB21_ID0)
#define pCAN_MB21_TIMESTAMP	((volatile unsigned short *)CAN_MB21_TIMESTAMP)
#define pCAN_MB21_LENGTH	((volatile unsigned short *)CAN_MB21_LENGTH)
#define pCAN_MB21_DATA3		((volatile unsigned short *)CAN_MB21_DATA3)
#define pCAN_MB21_DATA2		((volatile unsigned short *)CAN_MB21_DATA2)
#define pCAN_MB21_DATA1		((volatile unsigned short *)CAN_MB21_DATA1)
#define pCAN_MB21_DATA0		((volatile unsigned short *)CAN_MB21_DATA0)

#define pCAN_MB22_ID1		((volatile unsigned short *)CAN_MB22_ID1)
#define pCAN_MB22_ID0		((volatile unsigned short *)CAN_MB22_ID0)
#define pCAN_MB22_TIMESTAMP	((volatile unsigned short *)CAN_MB22_TIMESTAMP)
#define pCAN_MB22_LENGTH	((volatile unsigned short *)CAN_MB22_LENGTH)
#define pCAN_MB22_DATA3		((volatile unsigned short *)CAN_MB22_DATA3)
#define pCAN_MB22_DATA2		((volatile unsigned short *)CAN_MB22_DATA2)
#define pCAN_MB22_DATA1		((volatile unsigned short *)CAN_MB22_DATA1)
#define pCAN_MB22_DATA0		((volatile unsigned short *)CAN_MB22_DATA0)

#define pCAN_MB23_ID1		((volatile unsigned short *)CAN_MB23_ID1)
#define pCAN_MB23_ID0		((volatile unsigned short *)CAN_MB23_ID0)
#define pCAN_MB23_TIMESTAMP	((volatile unsigned short *)CAN_MB23_TIMESTAMP)
#define pCAN_MB23_LENGTH	((volatile unsigned short *)CAN_MB23_LENGTH)
#define pCAN_MB23_DATA3		((volatile unsigned short *)CAN_MB23_DATA3)
#define pCAN_MB23_DATA2		((volatile unsigned short *)CAN_MB23_DATA2)
#define pCAN_MB23_DATA1		((volatile unsigned short *)CAN_MB23_DATA1)
#define pCAN_MB23_DATA0		((volatile unsigned short *)CAN_MB23_DATA0)

#define pCAN_MB24_ID1		((volatile unsigned short *)CAN_MB24_ID1)
#define pCAN_MB24_ID0		((volatile unsigned short *)CAN_MB24_ID0)
#define pCAN_MB24_TIMESTAMP	((volatile unsigned short *)CAN_MB24_TIMESTAMP)
#define pCAN_MB24_LENGTH	((volatile unsigned short *)CAN_MB24_LENGTH)
#define pCAN_MB24_DATA3		((volatile unsigned short *)CAN_MB24_DATA3)
#define pCAN_MB24_DATA2		((volatile unsigned short *)CAN_MB24_DATA2)
#define pCAN_MB24_DATA1		((volatile unsigned short *)CAN_MB24_DATA1)
#define pCAN_MB24_DATA0		((volatile unsigned short *)CAN_MB24_DATA0)

#define pCAN_MB25_ID1		((volatile unsigned short *)CAN_MB25_ID1)
#define pCAN_MB25_ID0		((volatile unsigned short *)CAN_MB25_ID0)
#define pCAN_MB25_TIMESTAMP	((volatile unsigned short *)CAN_MB25_TIMESTAMP)
#define pCAN_MB25_LENGTH	((volatile unsigned short *)CAN_MB25_LENGTH)
#define pCAN_MB25_DATA3		((volatile unsigned short *)CAN_MB25_DATA3)
#define pCAN_MB25_DATA2		((volatile unsigned short *)CAN_MB25_DATA2)
#define pCAN_MB25_DATA1		((volatile unsigned short *)CAN_MB25_DATA1)
#define pCAN_MB25_DATA0		((volatile unsigned short *)CAN_MB25_DATA0)

#define pCAN_MB26_ID1		((volatile unsigned short *)CAN_MB26_ID1)
#define pCAN_MB26_ID0		((volatile unsigned short *)CAN_MB26_ID0)
#define pCAN_MB26_TIMESTAMP	((volatile unsigned short *)CAN_MB26_TIMESTAMP)
#define pCAN_MB26_LENGTH	((volatile unsigned short *)CAN_MB26_LENGTH)
#define pCAN_MB26_DATA3		((volatile unsigned short *)CAN_MB26_DATA3)
#define pCAN_MB26_DATA2		((volatile unsigned short *)CAN_MB26_DATA2)
#define pCAN_MB26_DATA1		((volatile unsigned short *)CAN_MB26_DATA1)
#define pCAN_MB26_DATA0		((volatile unsigned short *)CAN_MB26_DATA0)

#define pCAN_MB27_ID1		((volatile unsigned short *)CAN_MB27_ID1)
#define pCAN_MB27_ID0		((volatile unsigned short *)CAN_MB27_ID0)
#define pCAN_MB27_TIMESTAMP	((volatile unsigned short *)CAN_MB27_TIMESTAMP)
#define pCAN_MB27_LENGTH	((volatile unsigned short *)CAN_MB27_LENGTH)
#define pCAN_MB27_DATA3		((volatile unsigned short *)CAN_MB27_DATA3)
#define pCAN_MB27_DATA2		((volatile unsigned short *)CAN_MB27_DATA2)
#define pCAN_MB27_DATA1		((volatile unsigned short *)CAN_MB27_DATA1)
#define pCAN_MB27_DATA0		((volatile unsigned short *)CAN_MB27_DATA0)

#define pCAN_MB28_ID1		((volatile unsigned short *)CAN_MB28_ID1)
#define pCAN_MB28_ID0		((volatile unsigned short *)CAN_MB28_ID0)
#define pCAN_MB28_TIMESTAMP	((volatile unsigned short *)CAN_MB28_TIMESTAMP)
#define pCAN_MB28_LENGTH	((volatile unsigned short *)CAN_MB28_LENGTH)
#define pCAN_MB28_DATA3		((volatile unsigned short *)CAN_MB28_DATA3)
#define pCAN_MB28_DATA2		((volatile unsigned short *)CAN_MB28_DATA2)
#define pCAN_MB28_DATA1		((volatile unsigned short *)CAN_MB28_DATA1)
#define pCAN_MB28_DATA0		((volatile unsigned short *)CAN_MB28_DATA0)

#define pCAN_MB29_ID1		((volatile unsigned short *)CAN_MB29_ID1)
#define pCAN_MB29_ID0		((volatile unsigned short *)CAN_MB29_ID0)
#define pCAN_MB29_TIMESTAMP	((volatile unsigned short *)CAN_MB29_TIMESTAMP)
#define pCAN_MB29_LENGTH	((volatile unsigned short *)CAN_MB29_LENGTH)
#define pCAN_MB29_DATA3		((volatile unsigned short *)CAN_MB29_DATA3)
#define pCAN_MB29_DATA2		((volatile unsigned short *)CAN_MB29_DATA2)
#define pCAN_MB29_DATA1		((volatile unsigned short *)CAN_MB29_DATA1)
#define pCAN_MB29_DATA0		((volatile unsigned short *)CAN_MB29_DATA0)

#define pCAN_MB30_ID1		((volatile unsigned short *)CAN_MB30_ID1)
#define pCAN_MB30_ID0		((volatile unsigned short *)CAN_MB30_ID0)
#define pCAN_MB30_TIMESTAMP	((volatile unsigned short *)CAN_MB30_TIMESTAMP)
#define pCAN_MB30_LENGTH	((volatile unsigned short *)CAN_MB30_LENGTH)
#define pCAN_MB30_DATA3		((volatile unsigned short *)CAN_MB30_DATA3)
#define pCAN_MB30_DATA2		((volatile unsigned short *)CAN_MB30_DATA2)
#define pCAN_MB30_DATA1		((volatile unsigned short *)CAN_MB30_DATA1)
#define pCAN_MB30_DATA0		((volatile unsigned short *)CAN_MB30_DATA0)

#define pCAN_MB31_ID1		((volatile unsigned short *)CAN_MB31_ID1)
#define pCAN_MB31_ID0		((volatile unsigned short *)CAN_MB31_ID0)
#define pCAN_MB31_TIMESTAMP	((volatile unsigned short *)CAN_MB31_TIMESTAMP)
#define pCAN_MB31_LENGTH	((volatile unsigned short *)CAN_MB31_LENGTH)
#define pCAN_MB31_DATA3		((volatile unsigned short *)CAN_MB31_DATA3)
#define pCAN_MB31_DATA2		((volatile unsigned short *)CAN_MB31_DATA2)
#define pCAN_MB31_DATA1		((volatile unsigned short *)CAN_MB31_DATA1)
#define pCAN_MB31_DATA0		((volatile unsigned short *)CAN_MB31_DATA0)

/* CAN Mailbox Area Macros */
#define pCAN_MB_ID1(x)		((volatile unsigned short *)CAN_MB_ID1(x))
#define pCAN_MB_ID0(x)		((volatile unsigned short *)CAN_MB_ID0(x))
#define pCAN_MB_TIMESTAMP(x)	((volatile unsigned short *)CAN_MB_TIMESTAMP(x))
#define pCAN_MB_LENGTH(x)	((volatile unsigned short *)CAN_MB_LENGTH(x))
#define pCAN_MB_DATA3(x)	((volatile unsigned short *)CAN_MB_DATA3(x))
#define pCAN_MB_DATA2(x)	((volatile unsigned short *)CAN_MB_DATA2(x))
#define pCAN_MB_DATA1(x)	((volatile unsigned short *)CAN_MB_DATA1(x))
#define pCAN_MB_DATA0(x)	((volatile unsigned short *)CAN_MB_DATA0(x))

/* Pin Control Registers	(0xFFC03200 - 0xFFC032FF) */
#define pPORTF_FER		((volatile unsigned short *)PORTF_FER)
#define pPORTG_FER		((volatile unsigned short *)PORTG_FER)
#define pPORTH_FER		((volatile unsigned short *)PORTH_FER)
#define pPORT_MUX		((volatile unsigned short *)PORT_MUX)

#define PORTF_UART0_TX		0x0001
#define PORTF_UART0_RX		0x0002

#define PORT_MUX_PFDE		0x0040	/* 0: Enable UART0 RX, UART0 TX; 1: Enable DMAR0, DMAr1 */

/* Handshake MDMA Registers	(0xFFC03300 - 0xFFC033FF) */
#define pHMDMA0_CONTROL		((volatile unsigned short *)HMDMA0_CONTROL)
#define pHMDMA0_ECINIT		((volatile unsigned short *)HMDMA0_ECINIT)
#define pHMDMA0_BCINIT		((volatile unsigned short *)HMDMA0_BCINIT)
#define pHMDMA0_ECURGENT	((volatile unsigned short *)HMDMA0_ECURGENT)
#define pHMDMA0_ECOVERFLOW	((volatile unsigned short *)HMDMA0_ECOVERFLOW)
#define pHMDMA0_ECOUNT		((volatile unsigned short *)HMDMA0_ECOUNT)
#define pHMDMA0_BCOUNT		((volatile unsigned short *)HMDMA0_BCOUNT)

#define pHMDMA1_CONTROL		((volatile unsigned short *)HMDMA1_CONTROL)
#define pHMDMA1_ECINIT		((volatile unsigned short *)HMDMA1_ECINIT)
#define pHMDMA1_BCINIT		((volatile unsigned short *)HMDMA1_BCINIT)
#define pHMDMA1_ECURGENT	((volatile unsigned short *)HMDMA1_ECURGENT)
#define pHMDMA1_ECOVERFLOW	((volatile unsigned short *)HMDMA1_ECOVERFLOW)
#define pHMDMA1_ECOUNT		((volatile unsigned short *)HMDMA1_ECOUNT)
#define pHMDMA1_BCOUNT		((volatile unsigned short *)HMDMA1_BCOUNT)

#endif				/* _CDEF_BF534_H */