]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - arch/m68k/include/asm/m5441x.h
ColdFire: Add MCF5441x CPU support
[karo-tx-uboot.git] / arch / m68k / include / asm / m5441x.h
1 /*
2  * MCF5441X Internal Memory Map
3  *
4  * Copyright 2010-2012 Freescale Semiconductor, Inc.
5  * TsiChung Liew (Tsi-Chung.Liew@freescale.com)
6  *
7  * See file CREDITS for list of people who contributed to this
8  * project.
9  *
10  * This program is free software; you can redistribute it and/or
11  * modify it under the terms of the GNU General Public License as
12  * published by the Free Software Foundation; either version 2 of
13  * the License, or (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, write to the Free Software
22  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
23  * MA 02111-1307 USA
24  */
25
26 #ifndef __MCF5441X__
27 #define __MCF5441X__
28
29 /* Interrupt Controller (INTC) */
30 #define INT0_LO_RSVD0                   (0)
31 #define INT0_LO_EPORT1                  (1)
32 #define INT0_LO_EPORT2                  (2)
33 #define INT0_LO_EPORT3                  (3)
34 #define INT0_LO_EPORT4                  (4)
35 #define INT0_LO_EPORT5                  (5)
36 #define INT0_LO_EPORT6                  (6)
37 #define INT0_LO_EPORT7                  (7)
38 #define INT0_LO_EDMA_00         (8)
39 #define INT0_LO_EDMA_01         (9)
40 #define INT0_LO_EDMA_02         (10)
41 #define INT0_LO_EDMA_03         (11)
42 #define INT0_LO_EDMA_04         (12)
43 #define INT0_LO_EDMA_05         (13)
44 #define INT0_LO_EDMA_06         (14)
45 #define INT0_LO_EDMA_07         (15)
46 #define INT0_LO_EDMA_08         (16)
47 #define INT0_LO_EDMA_09         (17)
48 #define INT0_LO_EDMA_10         (18)
49 #define INT0_LO_EDMA_11         (19)
50 #define INT0_LO_EDMA_12         (20)
51 #define INT0_LO_EDMA_13         (21)
52 #define INT0_LO_EDMA_14         (22)
53 #define INT0_LO_EDMA_15         (23)
54 #define INT0_LO_EDMA_ERR                (24)
55 #define INT0_LO_SCM                     (25)
56 #define INT0_LO_UART0                   (26)
57 #define INT0_LO_UART1                   (27)
58 #define INT0_LO_UART2                   (28)
59 #define INT0_LO_UART3                   (29)
60 #define INT0_LO_I2C0                    (30)
61 #define INT0_LO_DSPI0                   (31)
62 #define INT0_HI_DTMR0                   (32)
63 #define INT0_HI_DTMR1                   (33)
64 #define INT0_HI_DTMR2                   (34)
65 #define INT0_HI_DTMR3                   (35)
66 #define INT0_HI_MACNET0_TXF             (36)
67 #define INT0_HI_MACNET0_TXB             (37)
68 #define INT0_HI_MACNET0_UN              (38)
69 #define INT0_HI_MACNET0_RL              (39)
70 #define INT0_HI_MACNET0_RXF             (40)
71 #define INT0_HI_MACNET0_RXB             (41)
72 #define INT0_HI_MACNET0_MII             (42)
73 #define INT0_HI_MACNET0_LC              (43)
74 /* not used 44 */
75 #define INT0_HI_MACNET0_GRA             (45)
76 #define INT0_HI_MACNET0_EBERR           (46)
77 #define INT0_HI_MACNET0_BABT            (47)
78 #define INT0_HI_MACNET0_BABR            (48)
79 #define INT0_HI_MACNET1_TXF             (49)
80 #define INT0_HI_MACNET1_TXB             (50)
81 #define INT0_HI_MACNET1_UN              (51)
82 #define INT0_HI_MACNET1_RL              (52)
83 #define INT0_HI_MACNET1_RXF             (53)
84 #define INT0_HI_MACNET1_RXB             (54)
85 #define INT0_HI_MACNET1_MII             (55)
86 #define INT0_HI_MACNET1_LC              (56)
87 /* not used 57 */
88 #define INT0_HI_MACNET1_GRA             (58)
89 #define INT0_HI_MACNET1_EBERR           (59)
90 #define INT0_HI_MACNET1_BABT            (60)
91 #define INT0_HI_MACNET1_BABR            (61)
92 #define INT0_HI_SCMIR                   (62)
93 #define INT0_HI_OW                      (63)
94
95 #define INT1_LO_CAN0_IFG                (0)
96 #define INT1_LO_CAN0_BOFF               (1)
97 /* not used 2 */
98 #define INT1_LO_CAN0_TXRXWRN            (3)
99 #define INT1_LO_CAN1_IFG                (4)
100 #define INT1_LO_CAN1_BOFF               (5)
101 /* not used 6 */
102 #define INT1_LO_CAN1_TXRXWRN            (7)
103 #define INT1_LO_EDMA_16         (8)
104 #define INT1_LO_EDMA_17         (9)
105 #define INT1_LO_EDMA_18         (10)
106 #define INT1_LO_EDMA_19         (11)
107 #define INT1_LO_EDMA_20         (12)
108 #define INT1_LO_EDMA_21         (13)
109 #define INT1_LO_EDMA_22         (14)
110 #define INT1_LO_EDMA_23         (15)
111 #define INT1_LO_EDMA_24         (16)
112 #define INT1_LO_EDMA_25         (17)
113 #define INT1_LO_EDMA_26         (18)
114 #define INT1_LO_EDMA_27         (19)
115 #define INT1_LO_EDMA_28         (20)
116 #define INT1_LO_EDMA_29         (21)
117 #define INT1_LO_EDMA_30         (22)
118 #define INT1_LO_EDMA_31         (23)
119 #define INT1_LO_EDMA_32         (24)
120 #define INT1_LO_EDMA_33         (25)
121 #define INT1_LO_EDMA_34         (26)
122 #define INT1_LO_EDMA_35         (27)
123 #define INT1_LO_EDMA_36         (28)
124 #define INT1_LO_EDMA_37         (29)
125 #define INT1_LO_EDMA_38         (30)
126 #define INT1_LO_EDMA_39         (31)
127 #define INT1_LO_EDMA_40         (32)
128 #define INT1_HI_EDMA_41         (33)
129 #define INT1_HI_EDMA_42         (34)
130 #define INT1_HI_EDMA_43         (35)
131 #define INT1_HI_EDMA_44         (36)
132 #define INT1_HI_EDMA_45         (37)
133 #define INT1_HI_EDMA_46         (38)
134 #define INT1_HI_EDMA_47         (39)
135 #define INT1_HI_EDMA_48         (40)
136 #define INT1_HI_EDMA_49         (41)
137 #define INT1_HI_EDMA_50         (42)
138 #define INT1_HI_EDMA_51         (43)
139 #define INT1_HI_EDMA_52         (44)
140 #define INT1_HI_EDMA_53         (45)
141 #define INT1_HI_EDMA_54         (46)
142 #define INT1_HI_EDMA_55         (47)
143 #define INT1_HI_UART4                   (48)
144 #define INT1_HI_UART5                   (49)
145 #define INT1_HI_UART6                   (50)
146 #define INT1_HI_UART7                   (51)
147 #define INT1_HI_UART8                   (52)
148 #define INT1_HI_UART9                   (53)
149 #define INT1_HI_DSPI1                   (54)
150 #define INT1_HI_DSPI2                   (55)
151 #define INT1_HI_DSPI3                   (56)
152 #define INT1_HI_I2C1                    (57)
153 #define INT1_HI_I2C2                    (58)
154 #define INT1_HI_I2C3                    (59)
155 #define INT1_HI_I2C4                    (60)
156 #define INT1_HI_I2C5                    (61)
157
158 #define INT2_LO_EDMA56_63               (0)
159 #define INT2_LO_PWM_SM0SR_CF            (1)
160 #define INT2_LO_PWM_SM1SR_CF            (2)
161 #define INT2_LO_PWM_SM2SR_CF            (3)
162 #define INT2_LO_PWM_SM3SR_CF            (4)
163 #define INT2_LO_PWM_SM0SR_RF            (5)
164 #define INT2_LO_PWM_SM1SR_RF            (6)
165 #define INT2_LO_PWM_SM2SR_RF            (7)
166 #define INT2_LO_PWM_SM3SR_RF            (8)
167 #define INT2_LO_PWM_FSR         (9)
168 #define INT2_LO_PWM_SMSR_REF            (10)
169 #define INT2_LO_PLL_SR_LOCF             (11)
170 #define INT2_LO_PLL_SR_LOLF             (12)
171 #define INT2_LO_PIT0_PIF                (13)
172 #define INT2_LO_PIT1_PIF                (14)
173 #define INT2_LO_PIT2_PIF                (15)
174 #define INT2_LO_PIT3_PIF                (16)
175 #define INT2_LO_USBOTG_USBSTS           (17)
176 #define INT2_LO_USBH_USBSTS             (18)
177 /* not used 19-20 */
178 #define INT2_LO_SSI0                    (21)
179 #define INT2_LO_SSI1                    (22)
180 #define INT2_LO_NFC                     (23)
181 /* not used 24-25 */
182 #define INT2_LO_RTC                     (26)
183 #define INT2_LO_CCM_UOCSR               (27)
184 #define INT2_LO_RNG_EI                  (28)
185 #define INT2_LO_SIM1_DATA               (29)
186 #define INT2_LO_SIM1                    (30)
187 #define INT2_LO_SDHC                    (31)
188 /* not used 32-37 */
189 #define INT2_HI_L2SW_BERR               (38)
190 #define INT2_HI_L2SW_RXB                (39)
191 #define INT2_HI_L2SW_RXF                (40)
192 #define INT2_HI_L2SW_TXB                (41)
193 #define INT2_HI_L2SW_TXF                (42)
194 #define INT2_HI_L2SW_QM         (43)
195 #define INT2_HI_L2SW_OD0                (44)
196 #define INT2_HI_L2SW_OD1                (45)
197 #define INT2_HI_L2SW_OD2                (46)
198 #define INT2_HI_L2SW_LRN                (47)
199 #define INT2_HI_MACNET0_TS              (48)
200 #define INT2_HI_MACNET0_WAKE            (49)
201 #define INT2_HI_MACNET0_PLR             (50)
202 /* not used 51-54 */
203 #define INT2_HI_MACNET1_TS              (51)
204 #define INT2_HI_MACNET1_WAKE            (52)
205 #define INT2_HI_MACNET1_PLR             (53)
206
207 /* Serial Boot Facility (SBF) */
208 #define SBF_SBFCR_BLDIV(x)              (((x)&0x000F))
209 #define SBF_SBFCR_FR                    (0x0010)
210
211 /* Reset Controller Module (RCM) */
212 #define RCM_RCR_SOFTRST         (0x80)
213 #define RCM_RCR_FRCRSTOUT               (0x40)
214
215 #define RCM_RSR_SOFT                    (0x20)
216 #define RCM_RSR_LOC                     (0x10)
217 #define RCM_RSR_POR                     (0x08)
218 #define RCM_RSR_EXT                     (0x04)
219 #define RCM_RSR_WDR_CORE                (0x02)
220 #define RCM_RSR_LOL                     (0x01)
221
222 /* Chip Configuration Module (CCM) */
223 #define CCM_CCR_BOOTMOD         (0xC000)
224 #define CCM_CCR_PLLMULT         (0x0FC0)
225 #define CCM_CCR_BOOTPS                  (0x0030)
226 #define CCM_CCR_BOOTPS_32               (0x0000)
227 #define CCM_CCR_BOOTPS_16               (0x0020)
228 #define CCM_CCR_BOOTPS_8                (0x0010)
229 #define CCM_CCR_BOOTPS_         (0x0000)
230 #define CCM_CCR_ALESEL                  (0x0008)
231 #define CCM_CCR_OSCMOD                  (0x0004)
232 #define CCM_CCR_PLLMOD                  (0x0002)
233 #define CCM_CCR_BOOTMEM         (0x0001)
234
235 #define CCM_CIR_PIN_MASK                (0xFFC0)
236 #define CCM_CIR_PRN_MASK                (0x003F)
237 #define CCM_CIR_PIN_MCF54410            (0x9F<<6)
238 #define CCM_CIR_PIN_MCF54415            (0xA0<<6)
239 #define CCM_CIR_PIN_MCF54416            (0xA1<<6)
240 #define CCM_CIR_PIN_MCF54417            (0xA2<<6)
241 #define CCM_CIR_PIN_MCF54418            (0xA3<<6)
242
243 #define CCM_MISCCR_PWM_EXTCLK(x)        (((x)&(0x0003)<<14)
244 #define CCM_MISCCR_PWM_EXTCLK_MASK      (0x3FFF)
245 #define CCM_MISCCR_PWM_EXTCLK_TMR0      (0x0000)
246 #define CCM_MISCCR_PWM_EXTCLK_TMR1      (0x4000)
247 #define CCM_MISCCR_PWM_EXTCLK_TMR2      (0x8000)
248 #define CCM_MISCCR_PWM_EXTCLK_TMR3      (0xC000)
249 #define CCM_MISCCR_LIMP         (0x1000)
250 #define CCM_MISCCR_BME                  (0x0800)
251 #define CCM_MISCCR_BMT(x)               (((x)&0x0007)<<8)
252 #define CCM_MISCCR_BMT_65536            (0)
253 #define CCM_MISCCR_BMT_32768            (1)
254 #define CCM_MISCCR_BMT_16384            (2)
255 #define CCM_MISCCR_BMT_8192             (3)
256 #define CCM_MISCCR_BMT_4096             (4)
257 #define CCM_MISCCR_BMT_2048             (5)
258 #define CCM_MISCCR_BMT_1024             (6)
259 #define CCM_MISCCR_BMT_512              (7)
260 #define CCM_MISCCR_SDHCSRC              (0x0040)
261 #define CCM_MISCCR_SSI1SRC              (0x0020)
262 #define CCM_MISCCR_SSI0SRC              (0x0010)
263 #define CCM_MISCCR_USBHOC               (0x0008)
264 #define CCM_MISCCR_USBOOC               (0x0004)
265 #define CCM_MISCCR_USBPUE               (0x0002)
266 #define CCM_MISCCR_USBSRC               (0x0001)
267
268 #define CCM_CDRH_SSI0DIV(x)             (((x)&0x00FF)<<8)
269 #define CCM_CDRH_SSI0DIV_MASK           (0x00FF)
270 #define CCM_CDRH_SSI1DIV(x)             (((x)&0x00FF))
271 #define CCM_CDRH_SSI1DIV_MASK           (0xFF00)
272 #define CCM_CDRL_LPDIV(x)               (((x)&0x000F)<<8)
273 #define CCM_CDRL_LPDIV_MASK             (0xFF0F)
274 #define CCM_CDR_LPDIV(x)                CCM_CDRL_LPDIV(x)
275
276 #define CCM_UOCSR_DPPD                  (0x2000)
277 #define CCM_UOCSR_DMPD                  (0x1000)
278 #define CCM_UOCSR_DRV_VBUS              (0x0800)
279 #define CCM_UOCSR_CRG_VBUS              (0x0400)
280 #define CCM_UOCSR_DCR_VBUS              (0x0200)
281 #define CCM_UOCSR_DPPU                  (0x0100)
282 #define CCM_UOCSR_AVLD                  (0x0080)
283 #define CCM_UOCSR_BVLD                  (0x0040)
284 #define CCM_UOCSR_VVLD                  (0x0020)
285 #define CCM_UOCSR_SEND                  (0x0010)
286 #define CCM_UOCSR_PWRFLT                (0x0008)
287 #define CCM_UOCSR_WKUP                  (0x0004)
288 #define CCM_UOCSR_UOMIE         (0x0002)
289 #define CCM_UOCSR_XPDE                  (0x0001)
290
291 #define CCM_UHCSR_DRV_VBUS              (0x0010)
292 #define CCM_UHCSR_PWRFLT                (0x0008)
293 #define CCM_UHCSR_WKUP                  (0x0004)
294 #define CCM_UHCSR_UOMIE         (0x0002)
295 #define CCM_UHCSR_XPDE                  (0x0001)
296
297 #define CCM_MISCCR3_TMR_ENET            (0x1000)
298 #define CCM_MISCCR3_ENETCLK(x)          (((x)&7)<<8)
299 #define CCM_MISCCR3_ENETCLK_MASK        (0xF8FF)
300 #define CCM_MISCCR3_ENETCLK_MII (0x0700)
301 #define CCM_MISCCR3_ENETCLK_OSC (0x0600)
302 #define CCM_MISCCR3_ENETCLK_USB (0x0500)
303 #define CCM_MISCCR3_ENETCLK_TMR3        (0x0400)
304 #define CCM_MISCCR3_ENETCLK_TMR2        (0x0300)
305 #define CCM_MISCCR3_ENETCLK_TMR1        (0x0200)
306 #define CCM_MISCCR3_ENETCLK_TMR0        (0x0100)
307 #define CCM_MISCCR3_ENETCLK_INTBUS      (0x0000)
308
309 #define CCM_MISCCR2_EXTCLKBYP           (0x8000)
310 #define CCM_MISCCR2_DDR2CLK             (0x4000)
311 #define CCM_MISCCR2_RGPIO_HALF          (0x2000)
312 #define CCM_MISCCR2_SWTSCR              (0x1000)
313 #define CCM_MISCCR2_PLLMODE(x)          (((x)&7)<<8)
314 #define CCM_MISCCR2_PLLMODE_MASK        (0xF8FF)
315 #define CCM_MISCCR2_DCCBYP              (0x0080)
316 #define CCM_MISCCR2_DAC1SEL             (0x0040)
317 #define CCM_MISCCR2_DAC0SEL             (0x0020)
318 #define CCM_MISCCR2_ADCEN               (0x0010)
319 #define CCM_MISCCR2_ADC7SEL             (0x0008)
320 #define CCM_MISCCR2_ADC3SEL             (0x0004)
321 #define CCM_MISCCR2_FBHALF              (0x0002)
322 #define CCM_MISCCR2_ULPI                (0x0001)
323
324 #define CCM_FNACR_PCR(x)                (((x)&0x0F)<<24)
325 #define CCM_FNACR_PCR_MASK              (0xF0FFFFFF)
326 #define CCM_FNACR_MCC(x)                ((x)&0xFFFF)
327 #define CCM_FNACR_MCC_MASK              (0xFFFF0000)
328
329 /* General Purpose I/O Module (GPIO) */
330 #define GPIO_PAR_FBCTL_ALE(x)           (((x)&3)<<6)
331 #define GPIO_PAR_FBCTL_ALE_MASK (0x3F)
332 #define GPIO_PAR_FBCTL_ALE_FB_ALE       (0xC0)
333 #define GPIO_PAR_FBCTL_ALE_FB_TS        (0x80)
334 #define GPIO_PAR_FBCTL_ALE_GPIO (0x00)
335 #define GPIO_PAR_FBCTL_OE(x)            (((x)&3)<<4)
336 #define GPIO_PAR_FBCTL_OE_MASK          (0xCF)
337 #define GPIO_PAR_FBCTL_OE_FB_OE (0x30)
338 #define GPIO_PAR_FBCTL_OE_FB_TBST       (0x20)
339 #define GPIO_PAR_FBCTL_OE_NFC_RE        (0x20)
340 #define GPIO_PAR_FBCTL_OE_GPIO          (0x00)
341 #define GPIO_PAR_FBCTL_FBCLK            (0x08)
342 #define GPIO_PAR_FBCTL_RW               (0x04)
343 #define GPIO_PAR_FBCTL_TA(x)            ((x)&3)
344 #define GPIO_PAR_FBCTL_TA_MASK          (0xFC)
345 #define GPIO_PAR_FBCTL_TA_TA            (0x03)
346 #define GPIO_PAR_FBCTL_TA_NFC_RB        (0x01)
347 #define GPIO_PAR_FBCTL_TA_GPIO          (0x00)
348
349 #define GPIO_PAR_BE_BS3(x)              (((x)&0x03)<<6)
350 #define GPIO_PAR_BE_BE3_MASK            (0x3F)
351 #define GPIO_PAR_BE_BE3_BE3             (0xC0)
352 #define GPIO_PAR_BE_BE3_CS3             (0x80)
353 #define GPIO_PAR_BE_BE3_FB_A1           (0x40)
354 #define GPIO_PAR_BE_BE3_NFC_ALE (0x40)
355 #define GPIO_PAR_BE_BE3_GPIO            (0x00)
356 #define GPIO_PAR_BE_BS2(x)              (((x)&0x03)<<4)
357 #define GPIO_PAR_BE_BE2_MASK            (0xCF)
358 #define GPIO_PAR_BE_BE2_BE2             (0x30)
359 #define GPIO_PAR_BE_BE2_CS2             (0x20)
360 #define GPIO_PAR_BE_BE2_FB_A0           (0x10)
361 #define GPIO_PAR_BE_BE2_NFC_CLE (0x10)
362 #define GPIO_PAR_BE_BE2_GPIO            (0x00)
363 #define GPIO_PAR_BE_BS1(x)              (((x)&0x03)<<2)
364 #define GPIO_PAR_BE_BE1_MASK            (0xF3)
365 #define GPIO_PAR_BE_BE1_BE1             (0x0C)
366 #define GPIO_PAR_BE_BE1_FB_TSZ1 (0x08)
367 #define GPIO_PAR_BE_BE1_GPIO            (0x00)
368 #define GPIO_PAR_BE_BS0(x)              ((x)&0x03)
369 #define GPIO_PAR_BE_BE0_MASK            (0xFC)
370 #define GPIO_PAR_BE_BE0_BE0             (0x03)
371 #define GPIO_PAR_BE_BE0_FB_TSZ0 (0x02)
372 #define GPIO_PAR_BE_BE0_GPIO            (0x00)
373
374 #define GPIO_PAR_CS_CS5(x)              (((x)&0x03)<<6)
375 #define GPIO_PAR_CS_CS5_MASK            (0x3F)
376 #define GPIO_PAR_CS_CS5_CS5             (0xC0)
377 #define GPIO_PAR_CS_CS5_DACK1           (0x80)
378 #define GPIO_PAR_CS_CS5_GPIO            (0x00)
379 #define GPIO_PAR_CS_CS4(x)              (((x)&0x03)<<4)
380 #define GPIO_PAR_CS_CS4_MASK            (0xCF)
381 #define GPIO_PAR_CS_CS4_CS4             (0x30)
382 #define GPIO_PAR_CS_CS4_DREQ1           (0x20)
383 #define GPIO_PAR_CS_CS4_GPIO            (0x00)
384 #define GPIO_PAR_CS_CS1(x)              (((x)&0x03)<<2)
385 #define GPIO_PAR_CS_CS1_MASK            (0xF3)
386 #define GPIO_PAR_CS_CS1_CS1             (0x0C)
387 #define GPIO_PAR_CS_CS1_NFC_CE          (0x04)
388 #define GPIO_PAR_CS_CS1_GPIO            (0x00)
389 #define GPIO_PAR_CS_CS0_CS0             (0x01)
390
391 #define GPIO_PAR_CANI2C_I2C0SCL(x)      (((x)&0x03)<<6)
392 #define GPIO_PAR_CANI2C_I2C0SCL_MASK    (0x3F)
393 #define GPIO_PAR_CANI2C_I2C0SCL_I2C0SCL (0xC0)
394 #define GPIO_PAR_CANI2C_I2C0SCL_U8TXD   (0x80)
395 #define GPIO_PAR_CANI2C_I2C0SCL_CAN0TX  (0x40)
396 #define GPIO_PAR_CANI2C_I2C0SCL_GPIO    (0x00)
397 #define GPIO_PAR_CANI2C_I2C0SDA(x)      (((x)&0x03)<<4)
398 #define GPIO_PAR_CANI2C_I2C0SDA_MASK    (0xCF)
399 #define GPIO_PAR_CANI2C_I2C0SDA_I2C0SDA (0x30)
400 #define GPIO_PAR_CANI2C_I2C0SDA_U8RXD   (0x20)
401 #define GPIO_PAR_CANI2C_I2C0SDA_CAN0RX  (0x10)
402 #define GPIO_PAR_CANI2C_I2C0SDA_GPIO    (0x00)
403 #define GPIO_PAR_CANI2C_CAN1TX(x)       (((x)&0x03)<<2)
404 #define GPIO_PAR_CANI2C_CAN1TX_MASK     (0xF3)
405 #define GPIO_PAR_CANI2C_CAN1TX_CAN1TX   (0x0C)
406 #define GPIO_PAR_CANI2C_CAN1TX_U9TXD    (0x08)
407 #define GPIO_PAR_CANI2C_CAN1TX_I2C1SCL  (0x04)
408 #define GPIO_PAR_CANI2C_CAN1TX_GPIO     (0x00)
409 #define GPIO_PAR_CANI2C_CAN1RX(x)       ((x)&0x03)
410 #define GPIO_PAR_CANI2C_CAN1RX_MASK     (0xFC)
411 #define GPIO_PAR_CANI2C_CAN1RX_CAN1RX   (0x03)
412 #define GPIO_PAR_CANI2C_CAN1RX_U9RXD    (0x02)
413 #define GPIO_PAR_CANI2C_CAN1RX_I2C1SDA  (0x01)
414 #define GPIO_PAR_CANI2C_CAN1RX_GPIO     (0x00)
415
416 #define GPIO_PAR_IRQH_IRQ7              (0x10)
417 #define GPIO_PAR_IRQH_IRQ4(x)           (((x)&0x03)<<2)
418 #define GPIO_PAR_IRQH_IRQ4_MASK (0xF3)
419 #define GPIO_PAR_IRQH_IRQ4_IRQ4 (0x0C)
420 #define GPIO_PAR_IRQH_IRQ4_DREQ0        (0x08)
421 #define GPIO_PAR_IRQH_IRQ4_GPIO (0x00)
422 #define GPIO_PAR_IRQH_IRQ1              (0x03)
423
424 #define GPIO_PAR_IRQL_IRQ6(x)           (((x)&0x03)<<6)
425 #define GPIO_PAR_IRQL_IRQ6_MASK (0x3F)
426 #define GPIO_PAR_IRQL_IRQ6_IRQ6 (0xC0)
427 #define GPIO_PAR_IRQL_IRQ6_USBCLKIN     (0x40)
428 #define GPIO_PAR_IRQL_IRQ6_GPIO (0x00)
429 #define GPIO_PAR_IRQL_IRQ3(x)           (((x)&0x03)<<4)
430 #define GPIO_PAR_IRQL_IRQ3_MASK (0xCF)
431 #define GPIO_PAR_IRQL_IRQ3_IRQ3 (0x30)
432 #define GPIO_PAR_IRQL_IRQ3_DSPI0_PCS3   (0x20)
433 #define GPIO_PAR_IRQL_IRQ3_USB1_VBUS_EN (0x10)
434 #define GPIO_PAR_IRQL_IRQ3_GPIO (0x00)
435 #define GPIO_PAR_IRQL_IRQ2(x)           (((x)&0x03)<<2)
436 #define GPIO_PAR_IRQL_IRQ2_MASK (0xF3)
437 #define GPIO_PAR_IRQL_IRQ2_IRQ2 (0x0C)
438 #define GPIO_PAR_IRQL_IRQ2_DSPI0_PCS2   (0x08)
439 #define GPIO_PAR_IRQL_IRQ2_USB1_VBUS_OC (0x04)
440 #define GPIO_PAR_IRQL_IRQ2_GPIO (0x00)
441
442 #define GPIO_PAR_DSPI0_SIN(x)           (((x)&0x03)<<6)
443 #define GPIO_PAR_DSPI0_SIN_MASK (0x3F)
444 #define GPIO_PAR_DSPI0_SIN_DSPI0SIN     (0xC0)
445 #define GPIO_PAR_DSPI0_SIN_SBF_DI       (0xC0)
446 #define GPIO_PAR_DSPI0_SIN_U3RXD        (0x80)
447 #define GPIO_PAR_DSPI0_SIN_SDHC_CMD     (0x40)
448 #define GPIO_PAR_DSPI0_SIN_GPIO (0x00)
449 #define GPIO_PAR_DSPI0_SOUT(x)          (((x)&0x03)<<4)
450 #define GPIO_PAR_DSPI0_SOUT_MASK        (0xCF)
451 #define GPIO_PAR_DSPI0_SOUT_DSPI0SOUT   (0x30)
452 #define GPIO_PAR_DSPI0_SOUT_SBF_DO      (0x30)
453 #define GPIO_PAR_DSPI0_SOUT_U3TXD       (0x20)
454 #define GPIO_PAR_DSPI0_SOUT_SDHC_DAT0   (0x10)
455 #define GPIO_PAR_DSPI0_SOUT_GPIO        (0x00)
456 #define GPIO_PAR_DSPI0_SCK(x)           (((x)&0x03)<<2)
457 #define GPIO_PAR_DSPI0_SCK_MASK (0xF3)
458 #define GPIO_PAR_DSPI0_SCK_DSPI0SCK     (0x0C)
459 #define GPIO_PAR_DSPI0_SCK_SBF_CK       (0x0C)
460 #define GPIO_PAR_DSPI0_SCK_I2C3SCL      (0x08)
461 #define GPIO_PAR_DSPI0_SCK_SDHC_CLK     (0x04)
462 #define GPIO_PAR_DSPI0_SCK_GPIO (0x00)
463 #define GPIO_PAR_DSPI0_PCS0(x)          ((x)&0x03)
464 #define GPIO_PAR_DSPI0_PCS0_MASK        (0xFC)
465 #define GPIO_PAR_DSPI0_PCS0_DSPI0PCS0   (0x03)
466 #define GPIO_PAR_DSPI0_PCS0_SS          (0x03)
467 #define GPIO_PAR_DSPI0_PCS0_I2C3SDA     (0x02)
468 #define GPIO_PAR_DSPI0_PCS0_SDHC_DAT3   (0x01)
469 #define GPIO_PAR_DSPI0_PCS0_GPIO        (0x00)
470
471 #define GPIO_PAR_DSPIOW_DSPI0PSC1       (0x80)
472 #define GPIO_PAR_DSPIOW_SBF_CS          (0x80)
473 #define GPIO_PAR_DSPIOW_OWDAT           (((x)&0x03)<<4)
474 #define GPIO_PAR_DSPIOW_OWDAT_MASK      (0xCF)
475 #define GPIO_PAR_DSPIOW_OWDAT_OWDAT     (0x30)
476 #define GPIO_PAR_DSPIOW_OWDAT_DACK0     (0x20)
477 #define GPIO_PAR_DSPIOW_OWDAT_GPIO      (0x00)
478
479 #define GPIO_PAR_TIMER_T3IN(x)          (((x)&0x03)<<6)
480 #define GPIO_PAR_TIMER_T3IN_MASK        (0x3F)
481 #define GPIO_PAR_TIMER_T3IN_T3IN        (0xC0)
482 #define GPIO_PAR_TIMER_T3IN_EXTA3       (0xC0)
483 #define GPIO_PAR_TIMER_T3IN_T3OUT       (0x80)
484 #define GPIO_PAR_TIMER_T3IN_USB0_VBUSEN (0x40)
485 #define GPIO_PAR_TIMER_T3IN_ULIPI_DIR   (0x40)
486 #define GPIO_PAR_TIMER_T3IN_GPIO        (0x00)
487 #define GPIO_PAR_TIMER_T2IN(x)          (((x)&0x03)<<4)
488 #define GPIO_PAR_TIMER_T2IN_MASK        (0xCF)
489 #define GPIO_PAR_TIMER_T2IN_T2IN        (0x30)
490 #define GPIO_PAR_TIMER_T2IN_EXTA2       (0x30)
491 #define GPIO_PAR_TIMER_T2IN_T2OUT       (0x20)
492 #define GPIO_PAR_TIMER_T2IN_SDHC_DAT2   (0x10)
493 #define GPIO_PAR_TIMER_T2IN_GPIO        (0x00)
494 #define GPIO_PAR_TIMER_T1IN(x)          (((x)&0x03)<<2)
495 #define GPIO_PAR_TIMER_T1IN_MASK        (0xF3)
496 #define GPIO_PAR_TIMER_T1IN_T1IN        (0x0C)
497 #define GPIO_PAR_TIMER_T1IN_EXTA1       (0x0C)
498 #define GPIO_PAR_TIMER_T1IN_T1OUT       (0x08)
499 #define GPIO_PAR_TIMER_T1IN_SDHC_DAT1   (0x04)
500 #define GPIO_PAR_TIMER_T1IN_GPIO        (0x00)
501 #define GPIO_PAR_TIMER_T0IN(x)          ((x)&0x03)
502 #define GPIO_PAR_TIMER_T0IN_MASK        (0xFC)
503 #define GPIO_PAR_TIMER_T0IN_T0IN        (0x03)
504 #define GPIO_PAR_TIMER_T0IN_EXTA0       (0x03)
505 #define GPIO_PAR_TIMER_T0IN_T0OUT       (0x02)
506 #define GPIO_PAR_TIMER_T0IN_USBO_VBUSOC (0x01)
507 #define GPIO_PAR_TIMER_T0IN_ULPI_NXT    (0x01)
508 #define GPIO_PAR_TIMER_T0IN_GPIO        (0x00)
509
510 #define GPIO_PAR_UART2_U2CTS(x) (((x)&0x03)<<6)
511 #define GPIO_PAR_UART2_U2CTS_MASK       (0x3F)
512 #define GPIO_PAR_UART2_U2CTS_U2CTS      (0xC0)
513 #define GPIO_PAR_UART2_U2CTS_U6TXD      (0x80)
514 #define GPIO_PAR_UART2_U2CTS_SSI1_BCLK  (0x40)
515 #define GPIO_PAR_UART2_U2CTS_GPIO       (0x00)
516 #define GPIO_PAR_UART2_U2RTS(x) (((x)&0x03)<<4)
517 #define GPIO_PAR_UART2_U2RTS_MASK       (0xCF)
518 #define GPIO_PAR_UART2_U2RTS_U2RTS      (0x30)
519 #define GPIO_PAR_UART2_U2RTS_U6RXD      (0x20)
520 #define GPIO_PAR_UART2_U2RTS_SSI1_FS    (0x10)
521 #define GPIO_PAR_UART2_U2RTS_GPIO       (0x00)
522 #define GPIO_PAR_UART2_U2RXD(x) (((x)&0x03)<<2)
523 #define GPIO_PAR_UART2_U2RXD_MASK       (0xF3)
524 #define GPIO_PAR_UART2_U2RXD_U2RXD      (0x0C)
525 #define GPIO_PAR_UART2_U2RXD_PWM_A3     (0x08)
526 #define GPIO_PAR_UART2_U2RXD_SSI1_RXD   (0x04)
527 #define GPIO_PAR_UART2_U2RXD_GPIO       (0x00)
528 #define GPIO_PAR_UART2_U2TXD(x) ((x)&0x03)
529 #define GPIO_PAR_UART2_U2TXD_MASK       (0xFC)
530 #define GPIO_PAR_UART2_U2TXD_U2TXD      (0x03)
531 #define GPIO_PAR_UART2_U2TXD_PWM_B3     (0x02)
532 #define GPIO_PAR_UART2_U2TXD_SSI1_TXD   (0x01)
533 #define GPIO_PAR_UART2_U2TXD_GPIO       (0x00)
534
535 #define GPIO_PAR_UART1_U1CTS(x) (((x)&0x03)<<6)
536 #define GPIO_PAR_UART1_U1CTS_MASK       (0x3F)
537 #define GPIO_PAR_UART1_U1CTS_U1CTS      (0xC0)
538 #define GPIO_PAR_UART1_U1CTS_U5TXD      (0x80)
539 #define GPIO_PAR_UART1_U1CTS_DSPI3_SCK  (0x40)
540 #define GPIO_PAR_UART1_U1CTS_GPIO       (0x00)
541 #define GPIO_PAR_UART1_U1RTS(x) (((x)&0x03)<<4)
542 #define GPIO_PAR_UART1_U1RTS_MASK       (0xCF)
543 #define GPIO_PAR_UART1_U1RTS_U1RTS      (0x30)
544 #define GPIO_PAR_UART1_U1RTS_U5RXD      (0x20)
545 #define GPIO_PAR_UART1_U1RTS_DSPI3_PCS0 (0x10)
546 #define GPIO_PAR_UART1_U1RTS_GPIO       (0x00)
547 #define GPIO_PAR_UART1_U1RXD(x) (((x)&0x03)<<2)
548 #define GPIO_PAR_UART1_U1RXD_MASK       (0xF3)
549 #define GPIO_PAR_UART1_U1RXD_U1RXD      (0x0C)
550 #define GPIO_PAR_UART1_U1RXD_I2C5SDA    (0x08)
551 #define GPIO_PAR_UART1_U1RXD_DSPI3_SIN  (0x04)
552 #define GPIO_PAR_UART1_U1RXD_GPIO       (0x00)
553 #define GPIO_PAR_UART1_U1TXD(x) ((x)&0x03)
554 #define GPIO_PAR_UART1_U1TXD_MASK       (0xFC)
555 #define GPIO_PAR_UART1_U1TXD_U1TXD      (0x03)
556 #define GPIO_PAR_UART1_U1TXD_I2C5SCL    (0x02)
557 #define GPIO_PAR_UART1_U1TXD_DSPI3_SOUT (0x01)
558 #define GPIO_PAR_UART1_U1TXD_GPIO       (0x00)
559
560 #define GPIO_PAR_UART0_U0CTS(x) (((x)&0x03)<<6)
561 #define GPIO_PAR_UART0_U0CTS_MASK       (0x3F)
562 #define GPIO_PAR_UART0_U0CTS_U0CTS      (0xC0)
563 #define GPIO_PAR_UART0_U0CTS_U4TXD      (0x80)
564 #define GPIO_PAR_UART0_U0CTS_DSPI2_SCK  (0x40)
565 #define GPIO_PAR_UART0_U0CTS_GPIO       (0x00)
566 #define GPIO_PAR_UART0_U0RTS(x) (((x)&0x03)<<4)
567 #define GPIO_PAR_UART0_U0RTS_MASK       (0xCF)
568 #define GPIO_PAR_UART0_U0RTS_U0RTS      (0x30)
569 #define GPIO_PAR_UART0_U0RTS_U4RXD      (0x20)
570 #define GPIO_PAR_UART0_U0RTS_DSPI2_PCS0 (0x10)
571 #define GPIO_PAR_UART0_U0RTS_GPIO       (0x00)
572 #define GPIO_PAR_UART0_U0RXD(x) (((x)&0x03)<<2)
573 #define GPIO_PAR_UART0_U0RXD_MASK       (0xF3)
574 #define GPIO_PAR_UART0_U0RXD_U0RXD      (0x0C)
575 #define GPIO_PAR_UART0_U0RXD_I2C4SDA    (0x08)
576 #define GPIO_PAR_UART0_U0RXD_DSPI2_SIN  (0x04)
577 #define GPIO_PAR_UART0_U0RXD_GPIO       (0x00)
578 #define GPIO_PAR_UART0_U0TXD(x) ((x)&0x03)
579 #define GPIO_PAR_UART0_U0TXD_MASK       (0xFC)
580 #define GPIO_PAR_UART0_U0TXD_U0TXD      (0x03)
581 #define GPIO_PAR_UART0_U0TXD_I2C4SCL    (0x02)
582 #define GPIO_PAR_UART0_U0TXD_DSPI2_SOUT (0x01)
583 #define GPIO_PAR_UART0_U0TXD_GPIO       (0x00)
584
585 #define GPIO_PAR_SDHCH_DAT3(x)          (((x)&0x03)<<6)
586 #define GPIO_PAR_SDHCH_DAT3_MASK        (0x3F)
587 #define GPIO_PAR_SDHCH_DAT3_DAT3        (0xC0)
588 #define GPIO_PAR_SDHCH_DAT3_PWM_A1      (0x80)
589 #define GPIO_PAR_SDHCH_DAT3_DSPI1_PCS0  (0x40)
590 #define GPIO_PAR_SDHCH_DAT3_GPIO        (0x00)
591 #define GPIO_PAR_SDHCH_DAT2(x)          (((x)&0x03)<<4)
592 #define GPIO_PAR_SDHCH_DAT2_MASK        (0xCF)
593 #define GPIO_PAR_SDHCH_DAT2_DAT2        (0x30)
594 #define GPIO_PAR_SDHCH_DAT2_PWM_B1      (0x20)
595 #define GPIO_PAR_SDHCH_DAT2_DSPI1_PCS2  (0x10)
596 #define GPIO_PAR_SDHCH_DAT2_GPIO        (0x00)
597 #define GPIO_PAR_SDHCH_DAT1(x)          (((x)&0x03)<<2)
598 #define GPIO_PAR_SDHCH_DAT1_MASK        (0xF3)
599 #define GPIO_PAR_SDHCH_DAT1_DAT1        (0x0C)
600 #define GPIO_PAR_SDHCH_DAT1_PWM_A2      (0x08)
601 #define GPIO_PAR_SDHCH_DAT1_DSPI1_PCS1  (0x04)
602 #define GPIO_PAR_SDHCH_DAT1_GPIO        (0x00)
603 #define GPIO_PAR_SDHCH_DAT0(x)          ((x)&0x03)
604 #define GPIO_PAR_SDHCH_DAT0_MASK        (0xFC)
605 #define GPIO_PAR_SDHCH_DAT0_DAT0        (0x03)
606 #define GPIO_PAR_SDHCH_DAT0_PWM_B2      (0x02)
607 #define GPIO_PAR_SDHCH_DAT0_DSPI1_SOUT  (0x01)
608 #define GPIO_PAR_SDHCH_DAT0_GPIO        (0x00)
609
610 #define GPIO_PAR_SDHCL_CMD(x)           (((x)&0x03)<<2)
611 #define GPIO_PAR_SDHCL_CMD_MASK (0xF3)
612 #define GPIO_PAR_SDHCL_CMD_CMD          (0x0C)
613 #define GPIO_PAR_SDHCL_CMD_PWM_A0       (0x08)
614 #define GPIO_PAR_SDHCL_CMD_DSPI1_SIN    (0x04)
615 #define GPIO_PAR_SDHCL_CMD_GPIO (0x00)
616 #define GPIO_PAR_SDHCL_CLK(x)           ((x)&0x03)
617 #define GPIO_PAR_SDHCL_CLK_MASK (0xFC)
618 #define GPIO_PAR_SDHCL_CLK_CLK          (0x03)
619 #define GPIO_PAR_SDHCL_CLK_PWM_B0       (0x02)
620 #define GPIO_PAR_SDHCL_CLK_DSPI1_SCK    (0x01)
621 #define GPIO_PAR_SDHCL_CLK_GPIO (0x00)
622
623 #define GPIO_PAR_SIMP0H_DAT(x)          (((x)&0x03)<<6)
624 #define GPIO_PAR_SIMP0H_DAT_MASK        (0x3F)
625 #define GPIO_PAR_SIMP0H_DAT_DAT (0xC0)
626 #define GPIO_PAR_SIMP0H_DAT_PWM_FAULT2  (0x80)
627 #define GPIO_PAR_SIMP0H_DAT_SDHC_DAT7   (0x40)
628 #define GPIO_PAR_SIMP0H_DAT_GPIO        (0x00)
629 #define GPIO_PAR_SIMP0H_VEN(x)          (((x)&0x03)<<4)
630 #define GPIO_PAR_SIMP0H_VEN_MASK        (0xCF)
631 #define GPIO_PAR_SIMP0H_VEN_VEN (0x30)
632 #define GPIO_PAR_SIMP0H_VEN_PWM_FAULT0  (0x20)
633 #define GPIO_PAR_SIMP0H_VEN_GPIO        (0x00)
634 #define GPIO_PAR_SIMP0H_RST(x)          (((x)&0x03)<<2)
635 #define GPIO_PAR_SIMP0H_RST_MASK        (0xF3)
636 #define GPIO_PAR_SIMP0H_RST_RST (0x0C)
637 #define GPIO_PAR_SIMP0H_RST_PWM_FORCE   (0x08)
638 #define GPIO_PAR_SIMP0H_RST_SDHC_DAT6   (0x04)
639 #define GPIO_PAR_SIMP0H_RST_GPIO        (0x00)
640 #define GPIO_PAR_SIMP0H_PD(x)           ((x)&0x03)
641 #define GPIO_PAR_SIMP0H_PD_MASK (0xFC)
642 #define GPIO_PAR_SIMP0H_PD_PD           (0x03)
643 #define GPIO_PAR_SIMP0H_PD_PWM_SYNC     (0x02)
644 #define GPIO_PAR_SIMP0H_PD_SDHC_DAT5    (0x01)
645 #define GPIO_PAR_SIMP0H_PD_GPIO (0x00)
646
647 #define GPIO_PAR_SIMP0L_CLK(x)          ((x)&0x03)
648 #define GPIO_PAR_SIMP0L_CLK_MASK        (0xFC)
649 #define GPIO_PAR_SIMP0L_CLK_CLK (0x03)
650 #define GPIO_PAR_SIMP0L_CLK_PWM_FAULT1  (0x02)
651 #define GPIO_PAR_SIMP0L_CLK_SDHC_DAT4   (0x01)
652 #define GPIO_PAR_SIMP0L_CLK_GPIO        (0x00)
653
654 #define GPIO_PAR_SSI0H_RXD(x)           (((x)&0x03)<<6)
655 #define GPIO_PAR_SSI0H_RXD_MASK (0x3F)
656 #define GPIO_PAR_SSI0H_RXD_RXD          (0xC0)
657 #define GPIO_PAR_SSI0H_RXD_I2C2SDA      (0x80)
658 #define GPIO_PAR_SSI0H_RXD_SIM1_VEN     (0x40)
659 #define GPIO_PAR_SSI0H_RXD_GPIO (0x00)
660 #define GPIO_PAR_SSI0H_TXD(x)           (((x)&0x03)<<4)
661 #define GPIO_PAR_SSI0H_TXD_MASK (0xCF)
662 #define GPIO_PAR_SSI0H_TXD_TXD          (0x30)
663 #define GPIO_PAR_SSI0H_TXD_I2C2SCL      (0x20)
664 #define GPIO_PAR_SSI0H_TXD_SIM1_DAT     (0x10)
665 #define GPIO_PAR_SSI0H_TXD_GPIO (0x00)
666 #define GPIO_PAR_SSI0H_FS(x)            (((x)&0x03)<<2)
667 #define GPIO_PAR_SSI0H_FS_MASK          (0xF3)
668 #define GPIO_PAR_SSI0H_FS_FS            (0x0C)
669 #define GPIO_PAR_SSI0H_FS_U7TXD (0x08)
670 #define GPIO_PAR_SSI0H_FS_SIM1_RST      (0x04)
671 #define GPIO_PAR_SSI0H_FS_GPIO          (0x00)
672 #define GPIO_PAR_SSI0H_MCLK(x)          ((x)&0x03)
673 #define GPIO_PAR_SSI0H_MCLK_MASK        (0xFC)
674 #define GPIO_PAR_SSI0H_MCLK_MCLK        (0x03)
675 #define GPIO_PAR_SSI0H_MCLK_SSI_CLKIN   (0x02)
676 #define GPIO_PAR_SSI0H_MCLK_SIM1_CLK    (0x01)
677 #define GPIO_PAR_SSI0H_MCLK_GPIO        (0x00)
678
679 #define GPIO_PAR_SSI0L_BCLK(x)          ((x)&0x03)
680 #define GPIO_PAR_SSI0L_BCLK_MASK        (0xFC)
681 #define GPIO_PAR_SSI0L_BCLK_BCLK        (0x03)
682 #define GPIO_PAR_SSI0L_BCLK_U7RXD       (0x02)
683 #define GPIO_PAR_SSI0L_BCLK_SIM1_PD     (0x01)
684 #define GPIO_PAR_SSI0L_BCLK_GPIO        (0x00)
685
686 #define GPIO_PAR_DEBUGH1_DAT3           (0x40)
687 #define GPIO_PAR_DEBUGH1_DAT2           (0x10)
688 #define GPIO_PAR_DEBUGH1_DAT1           (0x04)
689 #define GPIO_PAR_DEBUGH1_DAT0           (0x01)
690
691 #define GPIO_PAR_DEBUGH0_PST3           (0x40)
692 #define GPIO_PAR_DEBUGH0_PST2           (0x10)
693 #define GPIO_PAR_DEBUGH0_PST1           (0x04)
694 #define GPIO_PAR_DEBUGH0_PST0           (0x01)
695
696 #define GPIO_PODR_G4_VAL                (0x01 << 4)
697 #define GPIO_PODR_G4_MASK               (0xff & ~GPIO_PODR_G4_VAL)
698 #define GPIO_PDDR_G4_OUTPUT             (0x01 << 4)
699 #define GPIO_PDDR_G4_MASK               (0xff & ~GPIO_PDDR_G4_OUTPUT)
700
701 #define GPIO_PAR_DEBUGL_ALLPST          (0x01)
702
703 #define GPIO_PAR_FEC_FEC(x)             ((x)&0x0F)
704 #define GPIO_PAR_FEC_FEC_MASK           (0xF0)
705 #define GPIO_PAR_FEC_FEC_GPIO           (0x0D)
706 #define GPIO_PAR_FEC_FEC_RMII1          (0x0C)
707 #define GPIO_PAR_FEC_FEC_RMII1FUL       (0x0B)
708 #define GPIO_PAR_FEC_FEC_RMII_ULPI      (0x0A)
709 #define GPIO_PAR_FEC_FEC_RMII0          (0x09)
710 #define GPIO_PAR_FEC_FEC_RMII0FUL_ULPI  (0x08)
711 #define GPIO_PAR_FEC_FEC_RMII0FUL       (0x07)
712 #define GPIO_PAR_FEC_FEC_RMII0_1FUL     (0x06)
713 #define GPIO_PAR_FEC_FEC_RMII0FUL_1     (0x05)  /* 0:Full 1: */
714 /* Both 0&1: MDC, MDIO, COL & TXER - GPIO */
715 #define GPIO_PAR_FEC_FEC_RMII0_1        (0x04)
716 #define GPIO_PAR_FEC_FEC_RMII0FUL_1FUL  (0x03)
717 #define GPIO_PAR_FEC_FEC_MII            (0x01)  /* MDC & MDIO - GPIO */
718 #define GPIO_PAR_FEC_FEC_MIIFUL (0x00)
719
720
721 /* TC: Need to edit here.... */
722
723 /* Mode Select Control */
724 #define GPIO_MSCR_SDRAM_MSC(x)          ((x)&0x03)
725 #define GPIO_MSCR_SDRAM_MSC_MASK        (0xFC)
726
727 /* Slew Rate Control */
728
729 #define GPIO_SRCR_FB3_FB3(x)            ((x)&0x03)
730 #define GPIO_SRCR_FB3_FB3_MASK          (0xFC)
731
732 #define GPIO_SRCR_FB2_FB2(x)            ((x)&0x03)
733 #define GPIO_SRCR_FB2_FB2_MASK          (0xFC)
734
735 #define GPIO_SRCR_FB1_FB1(x)            ((x)&0x03)
736 #define GPIO_SRCR_FB1_FB1_MASK          (0xFC)
737
738 #define GPIO_SRCR_FB4_FB5(x)            (((x)&0x03)<<2)
739 #define GPIO_SRCR_FB4_FB5_MASK          (0xF3)
740 #define GPIO_SRCR_FB4_FB4(x)            ((x)&0x03)
741 #define GPIO_SRCR_FB4_FB4_MASK          (0xFC)
742
743 #define GPIO_SRCR_DSPIOW_OWDAT(x)       (((x)&0x03)<<4)
744 #define GPIO_SRCR_DSPIOW_OWDAT_MASK     (0xCF)
745 #define GPIO_SRCR_DSPIOW_DSPI0(x)       ((x)&0x03)
746 #define GPIO_SRCR_DSPIOW_DSPI0_MASK     (0xFC)
747
748 #define GPIO_SRCR_CANI2C_CAN1(x)        (((x)&0x03)<<2)
749 #define GPIO_SRCR_CANI2C_CAN1_MASK      (0xF3)
750 #define GPIO_SRCR_CANI2C_I2C0(x)        ((x)&0x03)
751 #define GPIO_SRCR_CANI2C_I2C0_MASK      (0xFC)
752
753 #define GPIO_SRCR_IRQ0_IRQ0(x)          ((x)&0x03)
754 #define GPIO_SRCR_IRQ0_IRQ0_MASK        (0xFC)
755
756 #define GPIO_SRCR_TIMER_TMR3(x) (((x)&0x03)<<6)
757 #define GPIO_SRCR_TIMER_TMR3_MASK       (0x3F)
758 #define GPIO_SRCR_TIMER_TMR2(x) (((x)&0x03)<<4)
759 #define GPIO_SRCR_TIMER_TMR2_MASK       (0xCF)
760 #define GPIO_SRCR_TIMER_TMR1(x) (((x)&0x03)<<2)
761 #define GPIO_SRCR_TIMER_TMR1_MASK       (0xF3)
762 #define GPIO_SRCR_TIMER_TMR0(x) ((x)&0x03)
763 #define GPIO_SRCR_TIMER_TMR0_MASK       (0xFC)
764
765 #define GPIO_SRCR_UART_U2(x)            (((x)&0x03)<<4)
766 #define GPIO_SRCR_UART_U2_MASK          (0xCF)
767 #define GPIO_SRCR_UART_U1(x)            (((x)&0x03)<<2)
768 #define GPIO_SRCR_UART_U1_MASK          (0xF3)
769 #define GPIO_SRCR_UART_U0(x)            ((x)&0x03)
770 #define GPIO_SRCR_UART_U0_MASK          (0xFC)
771
772 #define GPIO_SRCR_FEC_RMII0(x)          (((x)&0x03)<<2)
773 #define GPIO_SRCR_FEC_RMII0_MASK        (0xF3)
774 #define GPIO_SRCR_FEC_RMII1(x)          ((x)&0x03)
775 #define GPIO_SRCR_FEC_RMII1_MASK        (0xFC)
776
777 #define GPIO_SRCR_SDHC_SDHC(x)          ((x)&0x03)
778 #define GPIO_SRCR_SDHC_SDHC_MASK        (0xFC)
779
780 #define GPIO_SRCR_SIM0_SIMP0(x) ((x)&0x03)
781 #define GPIO_SRCR_SIM0_SIMP0_MASK       (0xFC)
782
783 #define GPIO_SRCR_SSI0_SSI0(x)          ((x)&0x03)
784 #define GPIO_SRCR_SSI0_SSI0_MASK        (0xFC)
785
786 #define GPIO_PCR_URTS_U2                (0x0004)
787 #define GPIO_PCR_URTS_U1                (0x0002)
788 #define GPIO_PCR_URTS_U0                (0x0001)
789
790 #define GPIO_PCR_UCTS_U2                (0x0004)
791 #define GPIO_PCR_UCTS_U1                (0x0002)
792 #define GPIO_PCR_UCTS_U0                (0x0001)
793
794 #define GPIO_UTXD_WOM_U9                (0x0200)
795 #define GPIO_UTXD_WOM_U8                (0x0100)
796 #define GPIO_UTXD_WOM_U7                (0x0080)
797 #define GPIO_UTXD_WOM_U6                (0x0040)
798 #define GPIO_UTXD_WOM_U5                (0x0020)
799 #define GPIO_UTXD_WOM_U4                (0x0010)
800 #define GPIO_UTXD_WOM_U3                (0x0008)
801 #define GPIO_UTXD_WOM_U2                (0x0004)
802 #define GPIO_UTXD_WOM_U1                (0x0002)
803 #define GPIO_UTXD_WOM_U0                (0x0001)
804
805 #define GPIO_URXD_WOM_U9(x)             (((x)&3)<<18)
806 #define GPIO_URXD_WOM_U9_MASK           (0xFFF3FFFF)
807 #define GPIO_URXD_WOM_U8(x)             (((x)&3)<<16)
808 #define GPIO_URXD_WOM_U8_MASK           (0xFFFCFFFF)
809 #define GPIO_URXD_WOM_U7(x)             (((x)&3)<<14)
810 #define GPIO_URXD_WOM_U7_MASK           (0xFFFF3FFF)
811 #define GPIO_URXD_WOM_U6(x)             (((x)&3)<<12)
812 #define GPIO_URXD_WOM_U6_MASK           (0xFFFFCFFF)
813 #define GPIO_URXD_WOM_U5(x)             (((x)&3)<<10)
814 #define GPIO_URXD_WOM_U5_MASK           (0xFFFFF3FF)
815 #define GPIO_URXD_WOM_U4(x)             (((x)&3)<<8)
816 #define GPIO_URXD_WOM_U4_MASK           (0xFFFFFCFF)
817 #define GPIO_URXD_WOM_U3(x)             (((x)&3)<<6)
818 #define GPIO_URXD_WOM_U3_MASK           (0xFFFFFF3F)
819 #define GPIO_URXD_WOM_U2(x)             (((x)&3)<<4)
820 #define GPIO_URXD_WOM_U2_MASK           (0xFFFFFFCF)
821 #define GPIO_URXD_WOM_U1(x)             (((x)&3)<<2)
822 #define GPIO_URXD_WOM_U1_MASK           (0xFFFFFFF3)
823 #define GPIO_URXD_WOM_U0(x)             ((x)&3)
824 #define GPIO_URXD_WOM_U0_MASK           (0xFFFFFFFC)
825
826 #define GPIO_HCR1_PG4_0(x)              (((x)&0x1F)<<27)
827 #define GPIO_HCR1_PG4_0_MASK            (0x07FFFFFF)
828 #define GPIO_HCR1_PF7_3(x)              (((x)&0x1F)<<22)
829 #define GPIO_HCR1_PF7_3_MASK            (0xF83FFFFF)
830 #define GPIO_HCR1_PE6_0(x)              (((x)&0x7F)<<15)
831 #define GPIO_HCR1_PE6_0_MASK            (0xFFC07FFF)
832 #define GPIO_HCR1_PD7_3(x)              (((x)&0x1F)<<10)
833 #define GPIO_HCR1_PD7_3_MASK            (0xFFFF83FF)
834 #define GPIO_HCR1_PC7_1(x)              (((x)&0x7F)<<3)
835 #define GPIO_HCR1_PC7_1_MASK            (0xFFFFFC07)
836 #define GPIO_HCR1_PB2_0(x)              ((x)&7)
837 #define GPIO_HCR1_PB2_0_MASK            (0xFFFFFFF8)
838
839 #define GPIO_HCR0_PK3                   (0x00000400)
840 #define GPIO_HCR0_PK0                   (0x00000200)
841 #define GPIO_HCR0_PD2_0(x)              (((x)&7)<<6)
842 #define GPIO_HCR0_PD2_0_MASK            (0xFFFFFE3F)
843 #define GPIO_HCR0_PE7                   (0x00000020)
844 #define GPIO_HCR0_PH7_3(x)              ((x)&0x1F)
845 #define GPIO_HCR0_PH7_3_MASK(x) (0xFFFFFFE0)
846
847 /* SDRAM Controller (SDRAMC) */
848
849 /* Phase Locked Loop (PLL) */
850 #define PLL_CR_LOCIRQ                   (0x00040000)
851 #define PLL_CR_LOCRE                    (0x00020000)
852 #define PLL_CR_LOCEN                    (0x00010000)
853 #define PLL_CR_LOLIRQ                   (0x00004000)
854 #define PLL_CR_LOLRE                    (0x00002000)
855 #define PLL_CR_LOLEN                    (0x00001000)
856 #define PLL_CR_REFDIV(x)                (((x)&7)<<8)
857 #define PLL_CR_REFDIV_MASK              (0xFFFFF8FF)
858 #define PLL_CR_FBKDIV(x)                ((x)&0x3F)
859 #define PLL_CR_FBKDIV_MASK              (0xFFFFFFC0)
860 #define PLL_CR_FBKDIV_BITS              (0x3F)
861
862 #define PLL_DR_OUTDIV5(x)               (((x)&0x1F)<<21)
863 #define PLL_DR_OUTDIV5_MASK             (0xFC1FFFFF)
864 #define PLL_DR_OUTDIV5_BITS             (0x03E00000)
865 #define PLL_DR_OUTDIV4(x)               (((x)&0x1F)<<16)
866 #define PLL_DR_OUTDIV4_MASK             (0xFFE0FFFF)
867 #define PLL_DR_OUTDIV4_BITS             (0x001F0000)
868 #define PLL_DR_OUTDIV3(x)               (((x)&0x1F)<<10)
869 #define PLL_DR_OUTDIV3_MASK             (0xFFFF83FF)
870 #define PLL_DR_OUTDIV3_BITS             (0x00007C00)
871 #define PLL_DR_OUTDIV2(x)               (((x)&0x1F)<<5)
872 #define PLL_DR_OUTDIV2_MASK             (0xFFFFFC1F)
873 #define PLL_DR_OUTDIV2_BITS             (0x000003E0)
874 #define PLL_DR_OUTDIV1(x)               ((x)&0x1F)
875 #define PLL_DR_OUTDIV1_MASK             (0xFFFFFFE0)
876 #define PLL_DR_OUTDIV1_BITS             (0x0000001F)
877
878 #define PLL_SR_LOCF                     (0x00000200)
879 #define PLL_SR_LOC                      (0x00000100)
880 #define PLL_SR_LOLF                     (0x00000040)
881 #define PLL_SR_LOCKS                    (0x00000020)
882 #define PLL_SR_LOCK                     (0x00000010)
883 #define PLL_PSR_LOCK                    PLL_SR_LOCK     /* compatible with 5x */
884 #define PLL_SR_MODE(x)                  ((x)&7)
885 #define PLL_SR_MODE_MASK                (0xFFFFFFF8)
886
887 #endif                          /* __MCF5441X__ */