1 |
578 |
jeremybenn |
/* Coldfire C Header File
|
2 |
|
|
* Copyright Freescale Semiconductor Inc
|
3 |
|
|
* All rights reserved.
|
4 |
|
|
*
|
5 |
|
|
* 2007/03/19 Revision: 0.91
|
6 |
|
|
*/
|
7 |
|
|
|
8 |
|
|
#ifndef __MCF52235_SCM_H__
|
9 |
|
|
#define __MCF52235_SCM_H__
|
10 |
|
|
|
11 |
|
|
|
12 |
|
|
/*********************************************************************
|
13 |
|
|
*
|
14 |
|
|
* System Control Module (SCM)
|
15 |
|
|
*
|
16 |
|
|
*********************************************************************/
|
17 |
|
|
|
18 |
|
|
/* Register read/write macros */
|
19 |
|
|
#define MCF_SCM_RAMBAR (*(vuint32*)(&__IPSBAR[0x8]))
|
20 |
|
|
#define MCF_SCM_PPMRH (*(vuint32*)(&__IPSBAR[0xC]))
|
21 |
|
|
#define MCF_SCM_CRSR (*(vuint8 *)(&__IPSBAR[0x10]))
|
22 |
|
|
#define MCF_SCM_CWCR (*(vuint8 *)(&__IPSBAR[0x11]))
|
23 |
|
|
#define MCF_SCM_CWSR (*(vuint8 *)(&__IPSBAR[0x13]))
|
24 |
|
|
#define MCF_SCM_DMAREQC (*(vuint32*)(&__IPSBAR[0x14]))
|
25 |
|
|
#define MCF_SCM_PPMRL (*(vuint32*)(&__IPSBAR[0x18]))
|
26 |
|
|
#define MCF_SCM_MPARK (*(vuint32*)(&__IPSBAR[0x1C]))
|
27 |
|
|
#define MCF_SCM_MPR (*(vuint8 *)(&__IPSBAR[0x20]))
|
28 |
|
|
#define MCF_SCM_PPMRS (*(vuint8 *)(&__IPSBAR[0x21]))
|
29 |
|
|
#define MCF_SCM_PPMRC (*(vuint8 *)(&__IPSBAR[0x22]))
|
30 |
|
|
#define MCF_SCM_IPSBMT (*(vuint8 *)(&__IPSBAR[0x23]))
|
31 |
|
|
#define MCF_SCM_PACR0 (*(vuint8 *)(&__IPSBAR[0x24]))
|
32 |
|
|
#define MCF_SCM_PACR1 (*(vuint8 *)(&__IPSBAR[0x25]))
|
33 |
|
|
#define MCF_SCM_PACR2 (*(vuint8 *)(&__IPSBAR[0x26]))
|
34 |
|
|
#define MCF_SCM_PACR3 (*(vuint8 *)(&__IPSBAR[0x27]))
|
35 |
|
|
#define MCF_SCM_PACR4 (*(vuint8 *)(&__IPSBAR[0x28]))
|
36 |
|
|
#define MCF_SCM_PACR5 (*(vuint8 *)(&__IPSBAR[0x29]))
|
37 |
|
|
#define MCF_SCM_PACR6 (*(vuint8 *)(&__IPSBAR[0x2A]))
|
38 |
|
|
#define MCF_SCM_PACR7 (*(vuint8 *)(&__IPSBAR[0x2B]))
|
39 |
|
|
#define MCF_SCM_PACR8 (*(vuint8 *)(&__IPSBAR[0x2C]))
|
40 |
|
|
#define MCF_SCM_GPACR0 (*(vuint8 *)(&__IPSBAR[0x30]))
|
41 |
|
|
#define MCF_SCM_GPACR1 (*(vuint8 *)(&__IPSBAR[0x31]))
|
42 |
|
|
#define MCF_SCM_PACR(x) (*(vuint8 *)(&__IPSBAR[0x24 + ((x)*0x1)]))
|
43 |
|
|
#define MCF_SCM_GPACR(x) (*(vuint8 *)(&__IPSBAR[0x30 + ((x)*0x1)]))
|
44 |
|
|
|
45 |
|
|
/* Other macros */
|
46 |
|
|
#define MCF_SCM_IPSBAR (*(vuint32*)(&__IPSBAR[0x0]))
|
47 |
|
|
#define MCF_SCM_IPSBAR_V (0x1)
|
48 |
|
|
#define MCF_SCM_IPSBAR_BA(x) ((x)&0xC0000000)
|
49 |
|
|
|
50 |
|
|
|
51 |
|
|
/* Bit definitions and macros for MCF_SCM_RAMBAR */
|
52 |
|
|
#define MCF_SCM_RAMBAR_BDE (0x200)
|
53 |
|
|
#define MCF_SCM_RAMBAR_BA(x) ((x)&0xFFFF0000)
|
54 |
|
|
|
55 |
|
|
/* Bit definitions and macros for MCF_SCM_PPMRH */
|
56 |
|
|
#define MCF_SCM_PPMRH_CDPORTS (0x1)
|
57 |
|
|
#define MCF_SCM_PPMRH_CDEPORT (0x2)
|
58 |
|
|
#define MCF_SCM_PPMRH_CDPIT0 (0x8)
|
59 |
|
|
#define MCF_SCM_PPMRH_CDPIT1 (0x10)
|
60 |
|
|
#define MCF_SCM_PPMRH_CDADC (0x80)
|
61 |
|
|
#define MCF_SCM_PPMRH_CDGPT (0x100)
|
62 |
|
|
#define MCF_SCM_PPMRH_CDPWM (0x200)
|
63 |
|
|
#define MCF_SCM_PPMRH_CDFCAN (0x400)
|
64 |
|
|
#define MCF_SCM_PPMRH_CDCFM (0x800)
|
65 |
|
|
#define MCF_SCM_PPMRH_CDEPHY (0x1000)
|
66 |
|
|
#define MCF_SCM_PPMRH_CDRNGA (0x2000)
|
67 |
|
|
|
68 |
|
|
/* Bit definitions and macros for MCF_SCM_CRSR */
|
69 |
|
|
#define MCF_SCM_CRSR_CWDR (0x20)
|
70 |
|
|
#define MCF_SCM_CRSR_EXT (0x80)
|
71 |
|
|
|
72 |
|
|
/* Bit definitions and macros for MCF_SCM_CWCR */
|
73 |
|
|
#define MCF_SCM_CWCR_CWTIF (0x1)
|
74 |
|
|
#define MCF_SCM_CWCR_CWTAVAL (0x2)
|
75 |
|
|
#define MCF_SCM_CWCR_CWTA (0x4)
|
76 |
|
|
#define MCF_SCM_CWCR_CWT(x) (((x)&0x7)<<0x3)
|
77 |
|
|
#define MCF_SCM_CWCR_CWT_2_9 (0)
|
78 |
|
|
#define MCF_SCM_CWCR_CWT_2_11 (0x8)
|
79 |
|
|
#define MCF_SCM_CWCR_CWT_2_13 (0x10)
|
80 |
|
|
#define MCF_SCM_CWCR_CWT_2_15 (0x18)
|
81 |
|
|
#define MCF_SCM_CWCR_CWT_2_19 (0x20)
|
82 |
|
|
#define MCF_SCM_CWCR_CWT_2_23 (0x28)
|
83 |
|
|
#define MCF_SCM_CWCR_CWT_2_27 (0x30)
|
84 |
|
|
#define MCF_SCM_CWCR_CWT_2_31 (0x38)
|
85 |
|
|
#define MCF_SCM_CWCR_CWRI (0x40)
|
86 |
|
|
#define MCF_SCM_CWCR_CWE (0x80)
|
87 |
|
|
|
88 |
|
|
/* Bit definitions and macros for MCF_SCM_CWSR */
|
89 |
|
|
#define MCF_SCM_CWSR_CWSR(x) (((x)&0xFF)<<0)
|
90 |
|
|
|
91 |
|
|
/* Bit definitions and macros for MCF_SCM_DMAREQC */
|
92 |
|
|
#define MCF_SCM_DMAREQC_DMAC0(x) (((x)&0xF)<<0)
|
93 |
|
|
#define MCF_SCM_DMAREQC_DMAC1(x) (((x)&0xF)<<0x4)
|
94 |
|
|
#define MCF_SCM_DMAREQC_DMAC2(x) (((x)&0xF)<<0x8)
|
95 |
|
|
#define MCF_SCM_DMAREQC_DMAC3(x) (((x)&0xF)<<0xC)
|
96 |
|
|
|
97 |
|
|
/* Bit definitions and macros for MCF_SCM_PPMRL */
|
98 |
|
|
#define MCF_SCM_PPMRL_CDG (0x2)
|
99 |
|
|
#define MCF_SCM_PPMRL_CDDMA (0x10)
|
100 |
|
|
#define MCF_SCM_PPMRL_CDUART0 (0x20)
|
101 |
|
|
#define MCF_SCM_PPMRL_CDUART1 (0x40)
|
102 |
|
|
#define MCF_SCM_PPMRL_CDUART2 (0x80)
|
103 |
|
|
#define MCF_SCM_PPMRL_CDI2C (0x200)
|
104 |
|
|
#define MCF_SCM_PPMRL_CDQSPI (0x400)
|
105 |
|
|
#define MCF_SCM_PPMRL_CDRTC (0x1000)
|
106 |
|
|
#define MCF_SCM_PPMRL_CDTMR0 (0x2000)
|
107 |
|
|
#define MCF_SCM_PPMRL_CDTMR1 (0x4000)
|
108 |
|
|
#define MCF_SCM_PPMRL_CDTMR2 (0x8000)
|
109 |
|
|
#define MCF_SCM_PPMRL_CDTMR3 (0x10000)
|
110 |
|
|
#define MCF_SCM_PPMRL_CDINTC0 (0x20000)
|
111 |
|
|
#define MCF_SCM_PPMRL_CDINTC1 (0x40000)
|
112 |
|
|
#define MCF_SCM_PPMRL_CDFEC0 (0x200000)
|
113 |
|
|
|
114 |
|
|
/* Bit definitions and macros for MCF_SCM_MPARK */
|
115 |
|
|
#define MCF_SCM_MPARK_LCKOUT_TIME(x) (((x)&0xF)<<0x8)
|
116 |
|
|
#define MCF_SCM_MPARK_PRKLAST (0x1000)
|
117 |
|
|
#define MCF_SCM_MPARK_TIMEOUT (0x2000)
|
118 |
|
|
#define MCF_SCM_MPARK_FIXED (0x4000)
|
119 |
|
|
#define MCF_SCM_MPARK_M1_PRTY(x) (((x)&0x3)<<0x10)
|
120 |
|
|
#define MCF_SCM_MPARK_M0_PRTY(x) (((x)&0x3)<<0x12)
|
121 |
|
|
#define MCF_SCM_MPARK_M2_PRTY(x) (((x)&0x3)<<0x14)
|
122 |
|
|
#define MCF_SCM_MPARK_BCR24BIT (0x1000000)
|
123 |
|
|
#define MCF_SCM_MPARK_M2_P_EN (0x2000000)
|
124 |
|
|
|
125 |
|
|
/* Bit definitions and macros for MCF_SCM_MPR */
|
126 |
|
|
#define MCF_SCM_MPR_MPR(x) (((x)&0xF)<<0)
|
127 |
|
|
|
128 |
|
|
/* Bit definitions and macros for MCF_SCM_PPMRS */
|
129 |
|
|
#define MCF_SCM_PPMRS_PPMRS(x) (((x)&0x7F)<<0)
|
130 |
|
|
#define MCF_SCM_PPMRS_DISABLE_ALL (0x40)
|
131 |
|
|
#define MCF_SCM_PPMRS_DISABLE_CFM (0x2B)
|
132 |
|
|
#define MCF_SCM_PPMRS_DISABLE_CAN (0x2A)
|
133 |
|
|
#define MCF_SCM_PPMRS_DISABLE_PWM (0x29)
|
134 |
|
|
#define MCF_SCM_PPMRS_DISABLE_GPT (0x28)
|
135 |
|
|
#define MCF_SCM_PPMRS_DISABLE_ADC (0x27)
|
136 |
|
|
#define MCF_SCM_PPMRS_DISABLE_PIT1 (0x24)
|
137 |
|
|
#define MCF_SCM_PPMRS_DISABLE_PIT0 (0x23)
|
138 |
|
|
#define MCF_SCM_PPMRS_DISABLE_EPORT (0x21)
|
139 |
|
|
#define MCF_SCM_PPMRS_DISABLE_PORTS (0x20)
|
140 |
|
|
#define MCF_SCM_PPMRS_DISABLE_INTC (0x11)
|
141 |
|
|
#define MCF_SCM_PPMRS_DISABLE_DTIM3 (0x10)
|
142 |
|
|
#define MCF_SCM_PPMRS_DISABLE_DTIM2 (0xF)
|
143 |
|
|
#define MCF_SCM_PPMRS_DISABLE_DTIM1 (0xE)
|
144 |
|
|
#define MCF_SCM_PPMRS_DISABLE_DTIM0 (0xD)
|
145 |
|
|
#define MCF_SCM_PPMRS_DISABLE_QSPI (0xA)
|
146 |
|
|
#define MCF_SCM_PPMRS_DISABLE_I2C (0x9)
|
147 |
|
|
#define MCF_SCM_PPMRS_DISABLE_UART2 (0x7)
|
148 |
|
|
#define MCF_SCM_PPMRS_DISABLE_UART1 (0x6)
|
149 |
|
|
#define MCF_SCM_PPMRS_DISABLE_UART0 (0x5)
|
150 |
|
|
#define MCF_SCM_PPMRS_DISABLE_DMA (0x4)
|
151 |
|
|
#define MCF_SCM_PPMRS_SET_CDG (0x1)
|
152 |
|
|
|
153 |
|
|
/* Bit definitions and macros for MCF_SCM_PPMRC */
|
154 |
|
|
#define MCF_SCM_PPMRC_PPMRC(x) (((x)&0x7F)<<0)
|
155 |
|
|
#define MCF_SCM_PPMRC_ENABLE_ALL (0x40)
|
156 |
|
|
#define MCF_SCM_PPMRC_ENABLE_CFM (0x2B)
|
157 |
|
|
#define MCF_SCM_PPMRC_ENABLE_CAN (0x2A)
|
158 |
|
|
#define MCF_SCM_PPMRC_ENABLE_PWM (0x29)
|
159 |
|
|
#define MCF_SCM_PPMRC_ENABLE_GPT (0x28)
|
160 |
|
|
#define MCF_SCM_PPMRC_ENABLE_ADC (0x27)
|
161 |
|
|
#define MCF_SCM_PPMRC_ENABLE_PIT1 (0x24)
|
162 |
|
|
#define MCF_SCM_PPMRC_ENABLE_PIT0 (0x23)
|
163 |
|
|
#define MCF_SCM_PPMRC_ENABLE_EPORT (0x21)
|
164 |
|
|
#define MCF_SCM_PPMRC_ENABLE_PORTS (0x20)
|
165 |
|
|
#define MCF_SCM_PPMRC_ENABLE_INTC (0x11)
|
166 |
|
|
#define MCF_SCM_PPMRC_ENABLE_DTIM3 (0x10)
|
167 |
|
|
#define MCF_SCM_PPMRC_ENABLE_DTIM2 (0xF)
|
168 |
|
|
#define MCF_SCM_PPMRC_ENABLE_DTIM1 (0xE)
|
169 |
|
|
#define MCF_SCM_PPMRC_ENABLE_DTIM0 (0xD)
|
170 |
|
|
#define MCF_SCM_PPMRC_ENABLE_QSPI (0xA)
|
171 |
|
|
#define MCF_SCM_PPMRC_ENABLE_I2C (0x9)
|
172 |
|
|
#define MCF_SCM_PPMRC_ENABLE_UART2 (0x7)
|
173 |
|
|
#define MCF_SCM_PPMRC_ENABLE_UART1 (0x6)
|
174 |
|
|
#define MCF_SCM_PPMRC_ENABLE_UART0 (0x5)
|
175 |
|
|
#define MCF_SCM_PPMRC_ENABLE_DMA (0x4)
|
176 |
|
|
#define MCF_SCM_PPMRC_CLEAR_CDG (0x1)
|
177 |
|
|
|
178 |
|
|
/* Bit definitions and macros for MCF_SCM_IPSBMT */
|
179 |
|
|
#define MCF_SCM_IPSBMT_BMT(x) (((x)&0x7)<<0)
|
180 |
|
|
#define MCF_SCM_IPSBMT_BMT_CYCLES_1024 (0)
|
181 |
|
|
#define MCF_SCM_IPSBMT_BMT_CYCLES_512 (0x1)
|
182 |
|
|
#define MCF_SCM_IPSBMT_BMT_CYCLES_256 (0x2)
|
183 |
|
|
#define MCF_SCM_IPSBMT_BMT_CYCLES_128 (0x3)
|
184 |
|
|
#define MCF_SCM_IPSBMT_BMT_CYCLES_64 (0x4)
|
185 |
|
|
#define MCF_SCM_IPSBMT_BMT_CYCLES_32 (0x5)
|
186 |
|
|
#define MCF_SCM_IPSBMT_BMT_CYCLES_16 (0x6)
|
187 |
|
|
#define MCF_SCM_IPSBMT_BMT_CYCLES_8 (0x7)
|
188 |
|
|
#define MCF_SCM_IPSBMT_BME (0x8)
|
189 |
|
|
|
190 |
|
|
/* Bit definitions and macros for MCF_SCM_PACR */
|
191 |
|
|
#define MCF_SCM_PACR_ACCESS_CTRL0(x) (((x)&0x7)<<0)
|
192 |
|
|
#define MCF_SCM_PACR_LOCK0 (0x8)
|
193 |
|
|
#define MCF_SCM_PACR_ACCESS_CTRL1(x) (((x)&0x7)<<0x4)
|
194 |
|
|
#define MCF_SCM_PACR_LOCK1 (0x80)
|
195 |
|
|
|
196 |
|
|
/* Bit definitions and macros for MCF_SCM_GPACR */
|
197 |
|
|
#define MCF_SCM_GPACR_ACCESS_CTRL(x) (((x)&0xF)<<0)
|
198 |
|
|
#define MCF_SCM_GPACR_LOCK (0x80)
|
199 |
|
|
|
200 |
|
|
|
201 |
|
|
#endif /* __MCF52235_SCM_H__ */
|