]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/lwIP_MCF5235_GCC/include/arch/mcf523x/mcf523x_timer.h
Add FreeRTOS-Plus directory.
[freertos] / FreeRTOS / Demo / lwIP_MCF5235_GCC / include / arch / mcf523x / mcf523x_timer.h
1 /*\r
2  * These files are taken from the MCF523X source code example package\r
3  * which is available on the Freescale website. Freescale explicitly \r
4  * grants the redistribution and modification of these source files.\r
5  * The complete licensing information is available in the file \r
6  * LICENSE_FREESCALE.TXT.\r
7  *\r
8  * File:        mcf523x_timer.h\r
9  * Purpose:     Register and bit definitions for the MCF523X\r
10  *\r
11  * Notes:       \r
12  *      \r
13  */\r
14 \r
15 #ifndef __MCF523X_TIMER_H__\r
16 #define __MCF523X_TIMER_H__\r
17 \r
18 /*********************************************************************\r
19 *\r
20 * DMA Timers (TIMER)\r
21 *\r
22 *********************************************************************/\r
23 \r
24 /* Register read/write macros */\r
25 #define MCF_TIMER_DTMR0       (*(vuint16*)(void*)(&__IPSBAR[0x000400]))\r
26 #define MCF_TIMER_DTXMR0      (*(vuint8 *)(void*)(&__IPSBAR[0x000402]))\r
27 #define MCF_TIMER_DTER0       (*(vuint8 *)(void*)(&__IPSBAR[0x000403]))\r
28 #define MCF_TIMER_DTRR0       (*(vuint32*)(void*)(&__IPSBAR[0x000404]))\r
29 #define MCF_TIMER_DTCR0       (*(vuint32*)(void*)(&__IPSBAR[0x000408]))\r
30 #define MCF_TIMER_DTCN0       (*(vuint32*)(void*)(&__IPSBAR[0x00040C]))\r
31 #define MCF_TIMER_DTMR1       (*(vuint16*)(void*)(&__IPSBAR[0x000440]))\r
32 #define MCF_TIMER_DTXMR1      (*(vuint8 *)(void*)(&__IPSBAR[0x000442]))\r
33 #define MCF_TIMER_DTER1       (*(vuint8 *)(void*)(&__IPSBAR[0x000443]))\r
34 #define MCF_TIMER_DTRR1       (*(vuint32*)(void*)(&__IPSBAR[0x000444]))\r
35 #define MCF_TIMER_DTCR1       (*(vuint32*)(void*)(&__IPSBAR[0x000448]))\r
36 #define MCF_TIMER_DTCN1       (*(vuint32*)(void*)(&__IPSBAR[0x00044C]))\r
37 #define MCF_TIMER_DTMR2       (*(vuint16*)(void*)(&__IPSBAR[0x000480]))\r
38 #define MCF_TIMER_DTXMR2      (*(vuint8 *)(void*)(&__IPSBAR[0x000482]))\r
39 #define MCF_TIMER_DTER2       (*(vuint8 *)(void*)(&__IPSBAR[0x000483]))\r
40 #define MCF_TIMER_DTRR2       (*(vuint32*)(void*)(&__IPSBAR[0x000484]))\r
41 #define MCF_TIMER_DTCR2       (*(vuint32*)(void*)(&__IPSBAR[0x000488]))\r
42 #define MCF_TIMER_DTCN2       (*(vuint32*)(void*)(&__IPSBAR[0x00048C]))\r
43 #define MCF_TIMER_DTMR3       (*(vuint16*)(void*)(&__IPSBAR[0x0004C0]))\r
44 #define MCF_TIMER_DTXMR3      (*(vuint8 *)(void*)(&__IPSBAR[0x0004C2]))\r
45 #define MCF_TIMER_DTER3       (*(vuint8 *)(void*)(&__IPSBAR[0x0004C3]))\r
46 #define MCF_TIMER_DTRR3       (*(vuint32*)(void*)(&__IPSBAR[0x0004C4]))\r
47 #define MCF_TIMER_DTCR3       (*(vuint32*)(void*)(&__IPSBAR[0x0004C8]))\r
48 #define MCF_TIMER_DTCN3       (*(vuint32*)(void*)(&__IPSBAR[0x0004CC]))\r
49 #define MCF_TIMER_DTMR(x)     (*(vuint16*)(void*)(&__IPSBAR[0x000400+((x)*0x040)]))\r
50 #define MCF_TIMER_DTXMR(x)    (*(vuint8 *)(void*)(&__IPSBAR[0x000402+((x)*0x040)]))\r
51 #define MCF_TIMER_DTER(x)     (*(vuint8 *)(void*)(&__IPSBAR[0x000403+((x)*0x040)]))\r
52 #define MCF_TIMER_DTRR(x)     (*(vuint32*)(void*)(&__IPSBAR[0x000404+((x)*0x040)]))\r
53 #define MCF_TIMER_DTCR(x)     (*(vuint32*)(void*)(&__IPSBAR[0x000408+((x)*0x040)]))\r
54 #define MCF_TIMER_DTCN(x)     (*(vuint32*)(void*)(&__IPSBAR[0x00040C+((x)*0x040)]))\r
55 \r
56 /* Bit definitions and macros for MCF_TIMER_DTMR */\r
57 #define MCF_TIMER_DTMR_RST          (0x0001)\r
58 #define MCF_TIMER_DTMR_CLK(x)       (((x)&0x0003)<<1)\r
59 #define MCF_TIMER_DTMR_FRR          (0x0008)\r
60 #define MCF_TIMER_DTMR_ORRI         (0x0010)\r
61 #define MCF_TIMER_DTMR_OM           (0x0020)\r
62 #define MCF_TIMER_DTMR_CE(x)        (((x)&0x0003)<<6)\r
63 #define MCF_TIMER_DTMR_PS(x)        (((x)&0x00FF)<<8)\r
64 #define MCF_TIMER_DTMR_CE_ANY       (0x00C0)\r
65 #define MCF_TIMER_DTMR_CE_FALL      (0x0080)\r
66 #define MCF_TIMER_DTMR_CE_RISE      (0x0040)\r
67 #define MCF_TIMER_DTMR_CE_NONE      (0x0000)\r
68 #define MCF_TIMER_DTMR_CLK_DTIN     (0x0006)\r
69 #define MCF_TIMER_DTMR_CLK_DIV16    (0x0004)\r
70 #define MCF_TIMER_DTMR_CLK_DIV1     (0x0002)\r
71 #define MCF_TIMER_DTMR_CLK_STOP     (0x0000)\r
72 \r
73 /* Bit definitions and macros for MCF_TIMER_DTXMR */\r
74 #define MCF_TIMER_DTXMR_MODE16      (0x01)\r
75 #define MCF_TIMER_DTXMR_DMAEN       (0x80)\r
76 \r
77 /* Bit definitions and macros for MCF_TIMER_DTER */\r
78 #define MCF_TIMER_DTER_CAP          (0x01)\r
79 #define MCF_TIMER_DTER_REF          (0x02)\r
80 \r
81 /********************************************************************/\r
82 \r
83 #endif /* __MCF523X_TIMER_H__ */\r