Replace __attribute references with __attribute__
[platform/kernel/u-boot.git] / include / asm-m68k / m5329.h
1 /*
2  * mcf5329.h -- Definitions for Freescale Coldfire 5329
3  *
4  * Copyright (C) 2004-2007 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 mcf5329_h
27 #define mcf5329_h
28 /****************************************************************************/
29
30 /*********************************************************************
31 * System Control Module (SCM)
32 *********************************************************************/
33 /* Bit definitions and macros for SCM_MPR */
34 #define SCM_MPR_MPROT0(x)               (((x)&0x0F)<<28)
35 #define SCM_MPR_MPROT1(x)               (((x)&0x0F)<<24)
36 #define SCM_MPR_MPROT2(x)               (((x)&0x0F)<<20)
37 #define SCM_MPR_MPROT4(x)               (((x)&0x0F)<<12)
38 #define SCM_MPR_MPROT5(x)               (((x)&0x0F)<<8)
39 #define SCM_MPR_MPROT6(x)               (((x)&0x0F)<<4)
40 #define MPROT_MTR                       4
41 #define MPROT_MTW                       2
42 #define MPROT_MPL                       1
43
44 /* Bit definitions and macros for SCM_BMT */
45 #define BMT_BME                         (0x08)
46 #define BMT_8                           (0x07)
47 #define BMT_16                          (0x06)
48 #define BMT_32                          (0x05)
49 #define BMT_64                          (0x04)
50 #define BMT_128                         (0x03)
51 #define BMT_256                         (0x02)
52 #define BMT_512                         (0x01)
53 #define BMT_1024                        (0x00)
54
55 /* Bit definitions and macros for SCM_PACRA */
56 #define SCM_PACRA_PACR0(x)              (((x)&0x0F)<<28)
57 #define SCM_PACRA_PACR1(x)              (((x)&0x0F)<<24)
58 #define SCM_PACRA_PACR2(x)              (((x)&0x0F)<<20)
59 #define PACR_SP 4
60 #define PACR_WP 2
61 #define PACR_TP 1
62
63 /* Bit definitions and macros for SCM_PACRB */
64 #define SCM_PACRB_PACR8(x)              (((x)&0x0F)<<28)
65 #define SCM_PACRB_PACR12(x)             (((x)&0x0F)<<12)
66
67 /* Bit definitions and macros for SCM_PACRC */
68 #define SCM_PACRC_PACR16(x)             (((x)&0x0F)<<28)
69 #define SCM_PACRC_PACR17(x)             (((x)&0x0F)<<24)
70 #define SCM_PACRC_PACR18(x)             (((x)&0x0F)<<20)
71 #define SCM_PACRC_PACR19(x)             (((x)&0x0F)<<16)
72 #define SCM_PACRC_PACR21(x)             (((x)&0x0F)<<8)
73 #define SCM_PACRC_PACR22(x)             (((x)&0x0F)<<4)
74 #define SCM_PACRC_PACR23(x)             (((x)&0x0F)<<0)
75
76 /* Bit definitions and macros for SCM_PACRD */
77 #define SCM_PACRD_PACR24(x)             (((x)&0x0F)<<28)
78 #define SCM_PACRD_PACR25(x)             (((x)&0x0F)<<24)
79 #define SCM_PACRD_PACR26(x)             (((x)&0x0F)<<20)
80 #define SCM_PACRD_PACR28(x)             (((x)&0x0F)<<12)
81 #define SCM_PACRD_PACR29(x)             (((x)&0x0F)<<8)
82 #define SCM_PACRD_PACR30(x)             (((x)&0x0F)<<4)
83 #define SCM_PACRD_PACR31(x)             (((x)&0x0F)<<0)
84
85 /* Bit definitions and macros for SCM_PACRE */
86 #define SCM_PACRE_PACR32(x)             (((x)&0x0F)<<28)
87 #define SCM_PACRE_PACR33(x)             (((x)&0x0F)<<24)
88 #define SCM_PACRE_PACR34(x)             (((x)&0x0F)<<20)
89 #define SCM_PACRE_PACR35(x)             (((x)&0x0F)<<16)
90 #define SCM_PACRE_PACR36(x)             (((x)&0x0F)<<12)
91 #define SCM_PACRE_PACR37(x)             (((x)&0x0F)<<8)
92 #define SCM_PACRE_PACR38(x)             (((x)&0x0F)<<4)
93
94 /* Bit definitions and macros for SCM_PACRF */
95 #define SCM_PACRF_PACR40(x)             (((x)&0x0F)<<28)
96 #define SCM_PACRF_PACR41(x)             (((x)&0x0F)<<24)
97 #define SCM_PACRF_PACR42(x)             (((x)&0x0F)<<20)
98 #define SCM_PACRF_PACR43(x)             (((x)&0x0F)<<16)
99 #define SCM_PACRF_PACR44(x)             (((x)&0x0F)<<12)
100 #define SCM_PACRF_PACR45(x)             (((x)&0x0F)<<8)
101 #define SCM_PACRF_PACR46(x)             (((x)&0x0F)<<4)
102 #define SCM_PACRF_PACR47(x)             (((x)&0x0F)<<0)
103
104 /* Bit definitions and macros for SCM_PACRG */
105 #define SCM_PACRG_PACR48(x)             (((x)&0x0F)<<28)
106
107 /* Bit definitions and macros for SCM_PACRH */
108 #define SCM_PACRH_PACR56(x)             (((x)&0x0F)<<28)
109 #define SCM_PACRH_PACR57(x)             (((x)&0x0F)<<24)
110 #define SCM_PACRH_PACR58(x)             (((x)&0x0F)<<20)
111
112 /* PACRn Assignments */
113 #define PACR0(x)                        SCM_PACRA_PACR0(x)
114 #define PACR1(x)                        SCM_PACRA_PACR1(x)
115 #define PACR2(x)                        SCM_PACRA_PACR2(x)
116 #define PACR8(x)                        SCM_PACRB_PACR8(x)
117 #define PACR12(x)                       SCM_PACRB_PACR12(x)
118 #define PACR16(x)                       SCM_PACRC_PACR16(x)
119 #define PACR17(x)                       SCM_PACRC_PACR17(x)
120 #define PACR18(x)                       SCM_PACRC_PACR18(x)
121 #define PACR19(x)                       SCM_PACRC_PACR19(x)
122 #define PACR21(x)                       SCM_PACRC_PACR21(x)
123 #define PACR22(x)                       SCM_PACRC_PACR22(x)
124 #define PACR23(x)                       SCM_PACRC_PACR23(x)
125 #define PACR24(x)                       SCM_PACRD_PACR24(x)
126 #define PACR25(x)                       SCM_PACRD_PACR25(x)
127 #define PACR26(x)                       SCM_PACRD_PACR26(x)
128 #define PACR28(x)                       SCM_PACRD_PACR28(x)
129 #define PACR29(x)                       SCM_PACRD_PACR29(x)
130 #define PACR30(x)                       SCM_PACRD_PACR30(x)
131 #define PACR31(x)                       SCM_PACRD_PACR31(x)
132 #define PACR32(x)                       SCM_PACRE_PACR32(x)
133 #define PACR33(x)                       SCM_PACRE_PACR33(x)
134 #define PACR34(x)                       SCM_PACRE_PACR34(x)
135 #define PACR35(x)                       SCM_PACRE_PACR35(x)
136 #define PACR36(x)                       SCM_PACRE_PACR36(x)
137 #define PACR37(x)                       SCM_PACRE_PACR37(x)
138 #define PACR38(x)                       SCM_PACRE_PACR38(x)
139 #define PACR40(x)                       SCM_PACRF_PACR40(x)
140 #define PACR41(x)                       SCM_PACRF_PACR41(x)
141 #define PACR42(x)                       SCM_PACRF_PACR42(x)
142 #define PACR43(x)                       SCM_PACRF_PACR43(x)
143 #define PACR44(x)                       SCM_PACRF_PACR44(x)
144 #define PACR45(x)                       SCM_PACRF_PACR45(x)
145 #define PACR46(x)                       SCM_PACRF_PACR46(x)
146 #define PACR47(x)                       SCM_PACRF_PACR47(x)
147 #define PACR48(x)                       SCM_PACRG_PACR48(x)
148 #define PACR56(x)                       SCM_PACRH_PACR56(x)
149 #define PACR57(x)                       SCM_PACRH_PACR57(x)
150 #define PACR58(x)                       SCM_PACRH_PACR58(x)
151
152 /* Bit definitions and macros for SCM_CWCR */
153 #define CWCR_RO                         (0x8000)
154 #define CWCR_CWR_WH                     (0x0100)
155 #define CWCR_CWE                        (0x0080)
156 #define CWRI_WINDOW                     (0x0060)
157 #define CWRI_RESET                      (0x0040)
158 #define CWRI_INT_RESET                  (0x0020)
159 #define CWRI_INT                        (0x0000)
160 #define CWCR_CWT(x)                     (((x)&0x001F))
161
162 /* Bit definitions and macros for SCM_ISR */
163 #define SCMISR_CFEI                     (0x02)
164 #define SCMISR_CWIC                     (0x01)
165
166 /* Bit definitions and macros for SCM_BCR */
167 #define BCR_GBR                         (0x00000200)
168 #define BCR_GBW                         (0x00000100)
169 #define BCR_S7                          (0x00000080)
170 #define BCR_S6                          (0x00000040)
171 #define BCR_S4                          (0x00000010)
172 #define BCR_S1                          (0x00000002)
173
174 /* Bit definitions and macros for SCM_CFIER */
175 #define CFIER_ECFEI                     (0x01)
176
177 /* Bit definitions and macros for SCM_CFLOC */
178 #define CFLOC_LOC                       (0x80)
179
180 /* Bit definitions and macros for SCM_CFATR */
181 #define CFATR_WRITE                     (0x80)
182 #define CFATR_SZ32                      (0x20)
183 #define CFATR_SZ16                      (0x10)
184 #define CFATR_SZ08                      (0x00)
185 #define CFATR_CACHE                     (0x08)
186 #define CFATR_MODE                      (0x02)
187 #define CFATR_TYPE                      (0x01)
188
189 /*********************************************************************
190 * Reset Controller Module (RCM)
191 *********************************************************************/
192
193 /* Bit definitions and macros for RCR */
194 #define RCM_RCR_FRCRSTOUT               (0x40)
195 #define RCM_RCR_SOFTRST                 (0x80)
196
197 /* Bit definitions and macros for RSR */
198 #define RCM_RSR_LOL                     (0x01)
199 #define RCM_RSR_WDR_CORE                (0x02)
200 #define RCM_RSR_EXT                     (0x04)
201 #define RCM_RSR_POR                     (0x08)
202 #define RCM_RSR_SOFT                    (0x20)
203
204 /*********************************************************************
205 * Interrupt Controller (INTC)
206 *********************************************************************/
207 #define INTC0_EPORT                     INTC_IPRL_INT1
208
209 #define INT0_LO_RSVD0                   (0)
210 #define INT0_LO_EPORT1                  (1)
211 #define INT0_LO_EPORT2                  (2)
212 #define INT0_LO_EPORT3                  (3)
213 #define INT0_LO_EPORT4                  (4)
214 #define INT0_LO_EPORT5                  (5)
215 #define INT0_LO_EPORT6                  (6)
216 #define INT0_LO_EPORT7                  (7)
217 #define INT0_LO_EDMA_00                 (8)
218 #define INT0_LO_EDMA_01                 (9)
219 #define INT0_LO_EDMA_02                 (10)
220 #define INT0_LO_EDMA_03                 (11)
221 #define INT0_LO_EDMA_04                 (12)
222 #define INT0_LO_EDMA_05                 (13)
223 #define INT0_LO_EDMA_06                 (14)
224 #define INT0_LO_EDMA_07                 (15)
225 #define INT0_LO_EDMA_08                 (16)
226 #define INT0_LO_EDMA_09                 (17)
227 #define INT0_LO_EDMA_10                 (18)
228 #define INT0_LO_EDMA_11                 (19)
229 #define INT0_LO_EDMA_12                 (20)
230 #define INT0_LO_EDMA_13                 (21)
231 #define INT0_LO_EDMA_14                 (22)
232 #define INT0_LO_EDMA_15                 (23)
233 #define INT0_LO_EDMA_ERR                (24)
234 #define INT0_LO_SCM                     (25)
235 #define INT0_LO_UART0                   (26)
236 #define INT0_LO_UART1                   (27)
237 #define INT0_LO_UART2                   (28)
238 #define INT0_LO_RSVD1                   (29)
239 #define INT0_LO_I2C                     (30)
240 #define INT0_LO_QSPI                    (31)
241 #define INT0_HI_DTMR0                   (32)
242 #define INT0_HI_DTMR1                   (33)
243 #define INT0_HI_DTMR2                   (34)
244 #define INT0_HI_DTMR3                   (35)
245 #define INT0_HI_FEC_TXF                 (36)
246 #define INT0_HI_FEC_TXB                 (37)
247 #define INT0_HI_FEC_UN                  (38)
248 #define INT0_HI_FEC_RL                  (39)
249 #define INT0_HI_FEC_RXF                 (40)
250 #define INT0_HI_FEC_RXB                 (41)
251 #define INT0_HI_FEC_MII                 (42)
252 #define INT0_HI_FEC_LC                  (43)
253 #define INT0_HI_FEC_HBERR               (44)
254 #define INT0_HI_FEC_GRA                 (45)
255 #define INT0_HI_FEC_EBERR               (46)
256 #define INT0_HI_FEC_BABT                (47)
257 #define INT0_HI_FEC_BABR                (48)
258 /* 49 - 61 Reserved */
259 #define INT0_HI_SCM                     (62)
260
261 /*********************************************************************
262 * Watchdog Timer Modules (WTM)
263 *********************************************************************/
264 /* Bit definitions and macros for WTM_WCR */
265 #define WTM_WCR_WAIT                    (0x0008)
266 #define WTM_WCR_DOZE                    (0x0004)
267 #define WTM_WCR_HALTED                  (0x0002)
268 #define WTM_WCR_EN                      (0x0001)
269
270 /*********************************************************************
271 * Chip Configuration Module (CCM)
272 *********************************************************************/
273 /* Bit definitions and macros for CCM_CCR */
274 #define CCM_CCR_CSC(x)                  (((x)&0x0003)<<8|0x0001)
275 #define CCM_CCR_LIMP                    (0x0041)
276 #define CCM_CCR_LOAD                    (0x0021)
277 #define CCM_CCR_BOOTPS(x)               (((x)&0x0003)<<3|0x0001)
278 #define CCM_CCR_OSC_MODE                (0x0005)
279 #define CCM_CCR_PLL_MODE                (0x0003)
280 #define CCM_CCR_RESERVED                (0x0001)
281
282 /* Bit definitions and macros for CCM_RCON */
283 #define CCM_RCON_CSC(x)                 (((x)&0x0003)<<8|0x0001)
284 #define CCM_RCON_LIMP                   (0x0041)
285 #define CCM_RCON_LOAD                   (0x0021)
286 #define CCM_RCON_BOOTPS(x)              (((x)&0x0003)<<3|0x0001)
287 #define CCM_RCON_OSC_MODE               (0x0005)
288 #define CCM_RCON_PLL_MODE               (0x0003)
289 #define CCM_RCON_RESERVED               (0x0001)
290
291 /* Bit definitions and macros for CCM_CIR */
292 #define CCM_CIR_PIN(x)                  (((x)&0x03FF)<<6)
293 #define CCM_CIR_PRN(x)                  ((x)&0x003F)
294
295 /* Bit definitions and macros for CCM_MISCCR */
296 #define CCM_MISCCR_PLL_LOCK             (0x2000)
297 #define CCM_MISCCR_LIMP                 (0x1000)
298 #define CCM_MISCCR_LCD_CHEN             (0x0100)
299 #define CCM_MISCCR_SSI_PUE              (0x0080)
300 #define CCM_MISCCR_SSI_PUS              (0x0040)
301 #define CCM_MISCCR_TIM_DMA              (0x0020)
302 #define CCM_MISCCR_SSI_SRC              (0x0010)
303 #define CCM_MISCCR_USBDIV               (0x0002)
304 #define CCM_MISCCR_USBSRC               (0x0001)
305
306 /* Bit definitions and macros for CCM_CDR */
307 #define CCM_CDR_LPDIV(x)                (((x)&0x000F)<<8)
308 #define CCM_CDR_SSIDIV(x)               ((x)&0x000F)
309
310 /* Bit definitions and macros for CCM_UHCSR */
311 #define CCM_UHCSR_PORTIND(x)            (((x)&0x0003)<<14)
312 #define CCM_UHCSR_WKUP                  (0x0004)
313 #define CCM_UHCSR_UHMIE                 (0x0002)
314 #define CCM_UHCSR_XPDE                  (0x0001)
315
316 /* Bit definitions and macros for CCM_UOCSR */
317 #define CCM_UOCSR_PORTIND(x)            (((x)&0x0003)<<14)
318 #define CCM_UOCSR_DPPD                  (0x2000)
319 #define CCM_UOCSR_DMPD                  (0x1000)
320 #define CCM_UOCSR_DRV_VBUS              (0x0800)
321 #define CCM_UOCSR_CRG_VBUS              (0x0400)
322 #define CCM_UOCSR_DCR_VBUS              (0x0200)
323 #define CCM_UOCSR_DPPU                  (0x0100)
324 #define CCM_UOCSR_AVLD                  (0x0080)
325 #define CCM_UOCSR_BVLD                  (0x0040)
326 #define CCM_UOCSR_VVLD                  (0x0020)
327 #define CCM_UOCSR_SEND                  (0x0010)
328 #define CCM_UOCSR_PWRFLT                (0x0008)
329 #define CCM_UOCSR_WKUP                  (0x0004)
330 #define CCM_UOCSR_UOMIE                 (0x0002)
331 #define CCM_UOCSR_XPDE                  (0x0001)
332
333 /* not done yet */
334 /*********************************************************************
335 * General Purpose I/O (GPIO)
336 *********************************************************************/
337 /* Bit definitions and macros for GPIO_PODR_FECH_L */
338 #define GPIO_PODR_FECH_L7               (0x80)
339 #define GPIO_PODR_FECH_L6               (0x40)
340 #define GPIO_PODR_FECH_L5               (0x20)
341 #define GPIO_PODR_FECH_L4               (0x10)
342 #define GPIO_PODR_FECH_L3               (0x08)
343 #define GPIO_PODR_FECH_L2               (0x04)
344 #define GPIO_PODR_FECH_L1               (0x02)
345 #define GPIO_PODR_FECH_L0               (0x01)
346
347 /* Bit definitions and macros for GPIO_PODR_SSI */
348 #define GPIO_PODR_SSI_4                 (0x10)
349 #define GPIO_PODR_SSI_3                 (0x08)
350 #define GPIO_PODR_SSI_2                 (0x04)
351 #define GPIO_PODR_SSI_1                 (0x02)
352 #define GPIO_PODR_SSI_0                 (0x01)
353
354 /* Bit definitions and macros for GPIO_PODR_BUSCTL */
355 #define GPIO_PODR_BUSCTL_3              (0x08)
356 #define GPIO_PODR_BUSCTL_2              (0x04)
357 #define GPIO_PODR_BUSCTL_1              (0x02)
358 #define GPIO_PODR_BUSCTL_0              (0x01)
359
360 /* Bit definitions and macros for GPIO_PODR_BE */
361 #define GPIO_PODR_BE_3                  (0x08)
362 #define GPIO_PODR_BE_2                  (0x04)
363 #define GPIO_PODR_BE_1                  (0x02)
364 #define GPIO_PODR_BE_0                  (0x01)
365
366 /* Bit definitions and macros for GPIO_PODR_CS */
367 #define GPIO_PODR_CS_5                  (0x20)
368 #define GPIO_PODR_CS_4                  (0x10)
369 #define GPIO_PODR_CS_3                  (0x08)
370 #define GPIO_PODR_CS_2                  (0x04)
371 #define GPIO_PODR_CS_1                  (0x02)
372
373 /* Bit definitions and macros for GPIO_PODR_PWM */
374 #define GPIO_PODR_PWM_5                 (0x20)
375 #define GPIO_PODR_PWM_4                 (0x10)
376 #define GPIO_PODR_PWM_3                 (0x08)
377 #define GPIO_PODR_PWM_2                 (0x04)
378
379 /* Bit definitions and macros for GPIO_PODR_FECI2C */
380 #define GPIO_PODR_FECI2C_3              (0x08)
381 #define GPIO_PODR_FECI2C_2              (0x04)
382 #define GPIO_PODR_FECI2C_1              (0x02)
383 #define GPIO_PODR_FECI2C_0              (0x01)
384
385 /* Bit definitions and macros for GPIO_PODR_UART */
386 #define GPIO_PODR_UART_7                (0x80)
387 #define GPIO_PODR_UART_6                (0x40)
388 #define GPIO_PODR_UART_5                (0x20)
389 #define GPIO_PODR_UART_4                (0x10)
390 #define GPIO_PODR_UART_3                (0x08)
391 #define GPIO_PODR_UART_2                (0x04)
392 #define GPIO_PODR_UART_1                (0x02)
393 #define GPIO_PODR_UART_0                (0x01)
394
395 /* Bit definitions and macros for GPIO_PODR_QSPI */
396 #define GPIO_PODR_QSPI_5                (0x20)
397 #define GPIO_PODR_QSPI_4                (0x10)
398 #define GPIO_PODR_QSPI_3                (0x08)
399 #define GPIO_PODR_QSPI_2                (0x04)
400 #define GPIO_PODR_QSPI_1                (0x02)
401 #define GPIO_PODR_QSPI_0                (0x01)
402
403 /* Bit definitions and macros for GPIO_PODR_TIMER */
404 #define GPIO_PODR_TIMER_3               (0x08)
405 #define GPIO_PODR_TIMER_2               (0x04)
406 #define GPIO_PODR_TIMER_1               (0x02)
407 #define GPIO_PODR_TIMER_0               (0x01)
408
409 /* Bit definitions and macros for GPIO_PODR_LCDDATAH */
410 #define GPIO_PODR_LCDDATAH_1            (0x02)
411 #define GPIO_PODR_LCDDATAH_0            (0x01)
412
413 /* Bit definitions and macros for GPIO_PODR_LCDDATAM */
414 #define GPIO_PODR_LCDDATAM_7            (0x80)
415 #define GPIO_PODR_LCDDATAM_6            (0x40)
416 #define GPIO_PODR_LCDDATAM_5            (0x20)
417 #define GPIO_PODR_LCDDATAM_4            (0x10)
418 #define GPIO_PODR_LCDDATAM_3            (0x08)
419 #define GPIO_PODR_LCDDATAM_2            (0x04)
420 #define GPIO_PODR_LCDDATAM_1            (0x02)
421 #define GPIO_PODR_LCDDATAM_0            (0x01)
422
423 /* Bit definitions and macros for GPIO_PODR_LCDDATAL */
424 #define GPIO_PODR_LCDDATAL_7            (0x80)
425 #define GPIO_PODR_LCDDATAL_6            (0x40)
426 #define GPIO_PODR_LCDDATAL_5            (0x20)
427 #define GPIO_PODR_LCDDATAL_4            (0x10)
428 #define GPIO_PODR_LCDDATAL_3            (0x08)
429 #define GPIO_PODR_LCDDATAL_2            (0x04)
430 #define GPIO_PODR_LCDDATAL_1            (0x02)
431 #define GPIO_PODR_LCDDATAL_0            (0x01)
432
433 /* Bit definitions and macros for GPIO_PODR_LCDCTLH */
434 #define GPIO_PODR_LCDCTLH_0             (0x01)
435
436 /* Bit definitions and macros for GPIO_PODR_LCDCTLL */
437 #define GPIO_PODR_LCDCTLL_7             (0x80)
438 #define GPIO_PODR_LCDCTLL_6             (0x40)
439 #define GPIO_PODR_LCDCTLL_5             (0x20)
440 #define GPIO_PODR_LCDCTLL_4             (0x10)
441 #define GPIO_PODR_LCDCTLL_3             (0x08)
442 #define GPIO_PODR_LCDCTLL_2             (0x04)
443 #define GPIO_PODR_LCDCTLL_1             (0x02)
444 #define GPIO_PODR_LCDCTLL_0             (0x01)
445
446 /* Bit definitions and macros for GPIO_PDDR_FECH */
447 #define GPIO_PDDR_FECH_L7               (0x80)
448 #define GPIO_PDDR_FECH_L6               (0x40)
449 #define GPIO_PDDR_FECH_L5               (0x20)
450 #define GPIO_PDDR_FECH_L4               (0x10)
451 #define GPIO_PDDR_FECH_L3               (0x08)
452 #define GPIO_PDDR_FECH_L2               (0x04)
453 #define GPIO_PDDR_FECH_L1               (0x02)
454 #define GPIO_PDDR_FECH_L0               (0x01)
455
456 /* Bit definitions and macros for GPIO_PDDR_SSI */
457 #define GPIO_PDDR_SSI_4                 (0x10)
458 #define GPIO_PDDR_SSI_3                 (0x08)
459 #define GPIO_PDDR_SSI_2                 (0x04)
460 #define GPIO_PDDR_SSI_1                 (0x02)
461 #define GPIO_PDDR_SSI_0                 (0x01)
462
463 /* Bit definitions and macros for GPIO_PDDR_BUSCTL */
464 #define GPIO_PDDR_BUSCTL_3              (0x08)
465 #define GPIO_PDDR_BUSCTL_2              (0x04)
466 #define GPIO_PDDR_BUSCTL_1              (0x02)
467 #define GPIO_PDDR_BUSCTL_0              (0x01)
468
469 /* Bit definitions and macros for GPIO_PDDR_BE */
470 #define GPIO_PDDR_BE_3                  (0x08)
471 #define GPIO_PDDR_BE_2                  (0x04)
472 #define GPIO_PDDR_BE_1                  (0x02)
473 #define GPIO_PDDR_BE_0                  (0x01)
474
475 /* Bit definitions and macros for GPIO_PDDR_CS */
476 #define GPIO_PDDR_CS_1                  (0x02)
477 #define GPIO_PDDR_CS_2                  (0x04)
478 #define GPIO_PDDR_CS_3                  (0x08)
479 #define GPIO_PDDR_CS_4                  (0x10)
480 #define GPIO_PDDR_CS_5                  (0x20)
481
482 /* Bit definitions and macros for GPIO_PDDR_PWM */
483 #define GPIO_PDDR_PWM_2                 (0x04)
484 #define GPIO_PDDR_PWM_3                 (0x08)
485 #define GPIO_PDDR_PWM_4                 (0x10)
486 #define GPIO_PDDR_PWM_5                 (0x20)
487
488 /* Bit definitions and macros for GPIO_PDDR_FECI2C */
489 #define GPIO_PDDR_FECI2C_0              (0x01)
490 #define GPIO_PDDR_FECI2C_1              (0x02)
491 #define GPIO_PDDR_FECI2C_2              (0x04)
492 #define GPIO_PDDR_FECI2C_3              (0x08)
493
494 /* Bit definitions and macros for GPIO_PDDR_UART */
495 #define GPIO_PDDR_UART_0                (0x01)
496 #define GPIO_PDDR_UART_1                (0x02)
497 #define GPIO_PDDR_UART_2                (0x04)
498 #define GPIO_PDDR_UART_3                (0x08)
499 #define GPIO_PDDR_UART_4                (0x10)
500 #define GPIO_PDDR_UART_5                (0x20)
501 #define GPIO_PDDR_UART_6                (0x40)
502 #define GPIO_PDDR_UART_7                (0x80)
503
504 /* Bit definitions and macros for GPIO_PDDR_QSPI */
505 #define GPIO_PDDR_QSPI_0                (0x01)
506 #define GPIO_PDDR_QSPI_1                (0x02)
507 #define GPIO_PDDR_QSPI_2                (0x04)
508 #define GPIO_PDDR_QSPI_3                (0x08)
509 #define GPIO_PDDR_QSPI_4                (0x10)
510 #define GPIO_PDDR_QSPI_5                (0x20)
511
512 /* Bit definitions and macros for GPIO_PDDR_TIMER */
513 #define GPIO_PDDR_TIMER_0               (0x01)
514 #define GPIO_PDDR_TIMER_1               (0x02)
515 #define GPIO_PDDR_TIMER_2               (0x04)
516 #define GPIO_PDDR_TIMER_3               (0x08)
517
518 /* Bit definitions and macros for GPIO_PDDR_LCDDATAH */
519 #define GPIO_PDDR_LCDDATAH_0            (0x01)
520 #define GPIO_PDDR_LCDDATAH_1            (0x02)
521
522 /* Bit definitions and macros for GPIO_PDDR_LCDDATAM */
523 #define GPIO_PDDR_LCDDATAM_0            (0x01)
524 #define GPIO_PDDR_LCDDATAM_1            (0x02)
525 #define GPIO_PDDR_LCDDATAM_2            (0x04)
526 #define GPIO_PDDR_LCDDATAM_3            (0x08)
527 #define GPIO_PDDR_LCDDATAM_4            (0x10)
528 #define GPIO_PDDR_LCDDATAM_5            (0x20)
529 #define GPIO_PDDR_LCDDATAM_6            (0x40)
530 #define GPIO_PDDR_LCDDATAM_7            (0x80)
531
532 /* Bit definitions and macros for GPIO_PDDR_LCDDATAL */
533 #define GPIO_PDDR_LCDDATAL_0            (0x01)
534 #define GPIO_PDDR_LCDDATAL_1            (0x02)
535 #define GPIO_PDDR_LCDDATAL_2            (0x04)
536 #define GPIO_PDDR_LCDDATAL_3            (0x08)
537 #define GPIO_PDDR_LCDDATAL_4            (0x10)
538 #define GPIO_PDDR_LCDDATAL_5            (0x20)
539 #define GPIO_PDDR_LCDDATAL_6            (0x40)
540 #define GPIO_PDDR_LCDDATAL_7            (0x80)
541
542 /* Bit definitions and macros for GPIO_PDDR_LCDCTLH */
543 #define GPIO_PDDR_LCDCTLH_0             (0x01)
544
545 /* Bit definitions and macros for GPIO_PDDR_LCDCTLL */
546 #define GPIO_PDDR_LCDCTLL_0             (0x01)
547 #define GPIO_PDDR_LCDCTLL_1             (0x02)
548 #define GPIO_PDDR_LCDCTLL_2             (0x04)
549 #define GPIO_PDDR_LCDCTLL_3             (0x08)
550 #define GPIO_PDDR_LCDCTLL_4             (0x10)
551 #define GPIO_PDDR_LCDCTLL_5             (0x20)
552 #define GPIO_PDDR_LCDCTLL_6             (0x40)
553 #define GPIO_PDDR_LCDCTLL_7             (0x80)
554
555 /* Bit definitions and macros for GPIO_PPDSDR_FECH */
556 #define GPIO_PPDSDR_FECH_L0             (0x01)
557 #define GPIO_PPDSDR_FECH_L1             (0x02)
558 #define GPIO_PPDSDR_FECH_L2             (0x04)
559 #define GPIO_PPDSDR_FECH_L3             (0x08)
560 #define GPIO_PPDSDR_FECH_L4             (0x10)
561 #define GPIO_PPDSDR_FECH_L5             (0x20)
562 #define GPIO_PPDSDR_FECH_L6             (0x40)
563 #define GPIO_PPDSDR_FECH_L7             (0x80)
564
565 /* Bit definitions and macros for GPIO_PPDSDR_SSI */
566 #define GPIO_PPDSDR_SSI_0               (0x01)
567 #define GPIO_PPDSDR_SSI_1               (0x02)
568 #define GPIO_PPDSDR_SSI_2               (0x04)
569 #define GPIO_PPDSDR_SSI_3               (0x08)
570 #define GPIO_PPDSDR_SSI_4               (0x10)
571
572 /* Bit definitions and macros for GPIO_PPDSDR_BUSCTL */
573 #define GPIO_PPDSDR_BUSCTL_0            (0x01)
574 #define GPIO_PPDSDR_BUSCTL_1            (0x02)
575 #define GPIO_PPDSDR_BUSCTL_2            (0x04)
576 #define GPIO_PPDSDR_BUSCTL_3            (0x08)
577
578 /* Bit definitions and macros for GPIO_PPDSDR_BE */
579 #define GPIO_PPDSDR_BE_0                (0x01)
580 #define GPIO_PPDSDR_BE_1                (0x02)
581 #define GPIO_PPDSDR_BE_2                (0x04)
582 #define GPIO_PPDSDR_BE_3                (0x08)
583
584 /* Bit definitions and macros for GPIO_PPDSDR_CS */
585 #define GPIO_PPDSDR_CS_1                (0x02)
586 #define GPIO_PPDSDR_CS_2                (0x04)
587 #define GPIO_PPDSDR_CS_3                (0x08)
588 #define GPIO_PPDSDR_CS_4                (0x10)
589 #define GPIO_PPDSDR_CS_5                (0x20)
590
591 /* Bit definitions and macros for GPIO_PPDSDR_PWM */
592 #define GPIO_PPDSDR_PWM_2               (0x04)
593 #define GPIO_PPDSDR_PWM_3               (0x08)
594 #define GPIO_PPDSDR_PWM_4               (0x10)
595 #define GPIO_PPDSDR_PWM_5               (0x20)
596
597 /* Bit definitions and macros for GPIO_PPDSDR_FECI2C */
598 #define GPIO_PPDSDR_FECI2C_0            (0x01)
599 #define GPIO_PPDSDR_FECI2C_1            (0x02)
600 #define GPIO_PPDSDR_FECI2C_2            (0x04)
601 #define GPIO_PPDSDR_FECI2C_3            (0x08)
602
603 /* Bit definitions and macros for GPIO_PPDSDR_UART */
604 #define GPIO_PPDSDR_UART_0              (0x01)
605 #define GPIO_PPDSDR_UART_1              (0x02)
606 #define GPIO_PPDSDR_UART_2              (0x04)
607 #define GPIO_PPDSDR_UART_3              (0x08)
608 #define GPIO_PPDSDR_UART_4              (0x10)
609 #define GPIO_PPDSDR_UART_5              (0x20)
610 #define GPIO_PPDSDR_UART_6              (0x40)
611 #define GPIO_PPDSDR_UART_7              (0x80)
612
613 /* Bit definitions and macros for GPIO_PPDSDR_QSPI */
614 #define GPIO_PPDSDR_QSPI_0              (0x01)
615 #define GPIO_PPDSDR_QSPI_1              (0x02)
616 #define GPIO_PPDSDR_QSPI_2              (0x04)
617 #define GPIO_PPDSDR_QSPI_3              (0x08)
618 #define GPIO_PPDSDR_QSPI_4              (0x10)
619 #define GPIO_PPDSDR_QSPI_5              (0x20)
620
621 /* Bit definitions and macros for GPIO_PPDSDR_TIMER */
622 #define GPIO_PPDSDR_TIMER_0             (0x01)
623 #define GPIO_PPDSDR_TIMER_1             (0x02)
624 #define GPIO_PPDSDR_TIMER_2             (0x04)
625 #define GPIO_PPDSDR_TIMER_3             (0x08)
626
627 /* Bit definitions and macros for GPIO_PPDSDR_LCDDATAH */
628 #define GPIO_PPDSDR_LCDDATAH_0          (0x01)
629 #define GPIO_PPDSDR_LCDDATAH_1          (0x02)
630
631 /* Bit definitions and macros for GPIO_PPDSDR_LCDDATAM */
632 #define GPIO_PPDSDR_LCDDATAM_0          (0x01)
633 #define GPIO_PPDSDR_LCDDATAM_1          (0x02)
634 #define GPIO_PPDSDR_LCDDATAM_2          (0x04)
635 #define GPIO_PPDSDR_LCDDATAM_3          (0x08)
636 #define GPIO_PPDSDR_LCDDATAM_4          (0x10)
637 #define GPIO_PPDSDR_LCDDATAM_5          (0x20)
638 #define GPIO_PPDSDR_LCDDATAM_6          (0x40)
639 #define GPIO_PPDSDR_LCDDATAM_7          (0x80)
640
641 /* Bit definitions and macros for GPIO_PPDSDR_LCDDATAL */
642 #define GPIO_PPDSDR_LCDDATAL_0          (0x01)
643 #define GPIO_PPDSDR_LCDDATAL_1          (0x02)
644 #define GPIO_PPDSDR_LCDDATAL_2          (0x04)
645 #define GPIO_PPDSDR_LCDDATAL_3          (0x08)
646 #define GPIO_PPDSDR_LCDDATAL_4          (0x10)
647 #define GPIO_PPDSDR_LCDDATAL_5          (0x20)
648 #define GPIO_PPDSDR_LCDDATAL_6          (0x40)
649 #define GPIO_PPDSDR_LCDDATAL_7          (0x80)
650
651 /* Bit definitions and macros for GPIO_PPDSDR_LCDCTLH */
652 #define GPIO_PPDSDR_LCDCTLH_0           (0x01)
653
654 /* Bit definitions and macros for GPIO_PPDSDR_LCDCTLL */
655 #define GPIO_PPDSDR_LCDCTLL_0           (0x01)
656 #define GPIO_PPDSDR_LCDCTLL_1           (0x02)
657 #define GPIO_PPDSDR_LCDCTLL_2           (0x04)
658 #define GPIO_PPDSDR_LCDCTLL_3           (0x08)
659 #define GPIO_PPDSDR_LCDCTLL_4           (0x10)
660 #define GPIO_PPDSDR_LCDCTLL_5           (0x20)
661 #define GPIO_PPDSDR_LCDCTLL_6           (0x40)
662 #define GPIO_PPDSDR_LCDCTLL_7           (0x80)
663
664 /* Bit definitions and macros for GPIO_PCLRR_FECH */
665 #define GPIO_PCLRR_FECH_L0              (0x01)
666 #define GPIO_PCLRR_FECH_L1              (0x02)
667 #define GPIO_PCLRR_FECH_L2              (0x04)
668 #define GPIO_PCLRR_FECH_L3              (0x08)
669 #define GPIO_PCLRR_FECH_L4              (0x10)
670 #define GPIO_PCLRR_FECH_L5              (0x20)
671 #define GPIO_PCLRR_FECH_L6              (0x40)
672 #define GPIO_PCLRR_FECH_L7              (0x80)
673
674 /* Bit definitions and macros for GPIO_PCLRR_SSI */
675 #define GPIO_PCLRR_SSI_0                (0x01)
676 #define GPIO_PCLRR_SSI_1                (0x02)
677 #define GPIO_PCLRR_SSI_2                (0x04)
678 #define GPIO_PCLRR_SSI_3                (0x08)
679 #define GPIO_PCLRR_SSI_4                (0x10)
680
681 /* Bit definitions and macros for GPIO_PCLRR_BUSCTL */
682 #define GPIO_PCLRR_BUSCTL_L0            (0x01)
683 #define GPIO_PCLRR_BUSCTL_L1            (0x02)
684 #define GPIO_PCLRR_BUSCTL_L2            (0x04)
685 #define GPIO_PCLRR_BUSCTL_L3            (0x08)
686
687 /* Bit definitions and macros for GPIO_PCLRR_BE */
688 #define GPIO_PCLRR_BE_0                 (0x01)
689 #define GPIO_PCLRR_BE_1                 (0x02)
690 #define GPIO_PCLRR_BE_2                 (0x04)
691 #define GPIO_PCLRR_BE_3                 (0x08)
692
693 /* Bit definitions and macros for GPIO_PCLRR_CS */
694 #define GPIO_PCLRR_CS_1                 (0x02)
695 #define GPIO_PCLRR_CS_2                 (0x04)
696 #define GPIO_PCLRR_CS_3                 (0x08)
697 #define GPIO_PCLRR_CS_4                 (0x10)
698 #define GPIO_PCLRR_CS_5                 (0x20)
699
700 /* Bit definitions and macros for GPIO_PCLRR_PWM */
701 #define GPIO_PCLRR_PWM_2                (0x04)
702 #define GPIO_PCLRR_PWM_3                (0x08)
703 #define GPIO_PCLRR_PWM_4                (0x10)
704 #define GPIO_PCLRR_PWM_5                (0x20)
705
706 /* Bit definitions and macros for GPIO_PCLRR_FECI2C */
707 #define GPIO_PCLRR_FECI2C_0             (0x01)
708 #define GPIO_PCLRR_FECI2C_1             (0x02)
709 #define GPIO_PCLRR_FECI2C_2             (0x04)
710 #define GPIO_PCLRR_FECI2C_3             (0x08)
711
712 /* Bit definitions and macros for GPIO_PCLRR_UART */
713 #define GPIO_PCLRR_UART0                (0x01)
714 #define GPIO_PCLRR_UART1                (0x02)
715 #define GPIO_PCLRR_UART2                (0x04)
716 #define GPIO_PCLRR_UART3                (0x08)
717 #define GPIO_PCLRR_UART4                (0x10)
718 #define GPIO_PCLRR_UART5                (0x20)
719 #define GPIO_PCLRR_UART6                (0x40)
720 #define GPIO_PCLRR_UART7                (0x80)
721
722 /* Bit definitions and macros for GPIO_PCLRR_QSPI */
723 #define GPIO_PCLRR_QSPI0                (0x01)
724 #define GPIO_PCLRR_QSPI1                (0x02)
725 #define GPIO_PCLRR_QSPI2                (0x04)
726 #define GPIO_PCLRR_QSPI3                (0x08)
727 #define GPIO_PCLRR_QSPI4                (0x10)
728 #define GPIO_PCLRR_QSPI5                (0x20)
729
730 /* Bit definitions and macros for GPIO_PCLRR_TIMER */
731 #define GPIO_PCLRR_TIMER0               (0x01)
732 #define GPIO_PCLRR_TIMER1               (0x02)
733 #define GPIO_PCLRR_TIMER2               (0x04)
734 #define GPIO_PCLRR_TIMER3               (0x08)
735
736 /* Bit definitions and macros for GPIO_PCLRR_LCDDATAH */
737 #define GPIO_PCLRR_LCDDATAH0            (0x01)
738 #define GPIO_PCLRR_LCDDATAH1            (0x02)
739
740 /* Bit definitions and macros for GPIO_PCLRR_LCDDATAM */
741 #define GPIO_PCLRR_LCDDATAM0            (0x01)
742 #define GPIO_PCLRR_LCDDATAM1            (0x02)
743 #define GPIO_PCLRR_LCDDATAM2            (0x04)
744 #define GPIO_PCLRR_LCDDATAM3            (0x08)
745 #define GPIO_PCLRR_LCDDATAM4            (0x10)
746 #define GPIO_PCLRR_LCDDATAM5            (0x20)
747 #define GPIO_PCLRR_LCDDATAM6            (0x40)
748 #define GPIO_PCLRR_LCDDATAM7            (0x80)
749
750 /* Bit definitions and macros for GPIO_PCLRR_LCDDATAL */
751 #define GPIO_PCLRR_LCDDATAL0            (0x01)
752 #define GPIO_PCLRR_LCDDATAL1            (0x02)
753 #define GPIO_PCLRR_LCDDATAL2            (0x04)
754 #define GPIO_PCLRR_LCDDATAL3            (0x08)
755 #define GPIO_PCLRR_LCDDATAL4            (0x10)
756 #define GPIO_PCLRR_LCDDATAL5            (0x20)
757 #define GPIO_PCLRR_LCDDATAL6            (0x40)
758 #define GPIO_PCLRR_LCDDATAL7            (0x80)
759
760 /* Bit definitions and macros for GPIO_PCLRR_LCDCTLH */
761 #define GPIO_PCLRR_LCDCTLH_PCLRR_LCDCTLH0               (0x01)
762
763 /* Bit definitions and macros for GPIO_PCLRR_LCDCTLL */
764 #define GPIO_PCLRR_LCDCTLL0             (0x01)
765 #define GPIO_PCLRR_LCDCTLL1             (0x02)
766 #define GPIO_PCLRR_LCDCTLL2             (0x04)
767 #define GPIO_PCLRR_LCDCTLL3             (0x08)
768 #define GPIO_PCLRR_LCDCTLL4             (0x10)
769 #define GPIO_PCLRR_LCDCTLL5             (0x20)
770 #define GPIO_PCLRR_LCDCTLL6             (0x40)
771 #define GPIO_PCLRR_LCDCTLL7             (0x80)
772
773 /* Bit definitions and macros for GPIO_PAR_FEC */
774 #ifdef CONFIG_M5329
775 #define GPIO_PAR_FEC_MII(x)             (((x)&0x03)<<0)
776 #define GPIO_PAR_FEC_7W(x)              (((x)&0x03)<<2)
777 #define GPIO_PAR_FEC_7W_GPIO            (0x00)
778 #define GPIO_PAR_FEC_7W_URTS1           (0x04)
779 #define GPIO_PAR_FEC_7W_FEC             (0x0C)
780 #define GPIO_PAR_FEC_MII_GPIO           (0x00)
781 #define GPIO_PAR_FEC_MII_UART           (0x01)
782 #define GPIO_PAR_FEC_MII_FEC            (0x03)
783 #else
784 #define GPIO_PAR_FEC_7W_FEC             (0x08)
785 #define GPIO_PAR_FEC_MII_FEC            (0x02)
786 #endif
787
788 /* Bit definitions and macros for GPIO_PAR_PWM */
789 #define GPIO_PAR_PWM1(x)                (((x)&0x03)<<0)
790 #define GPIO_PAR_PWM3(x)                (((x)&0x03)<<2)
791 #define GPIO_PAR_PWM5                   (0x10)
792 #define GPIO_PAR_PWM7                   (0x20)
793
794 /* Bit definitions and macros for GPIO_PAR_BUSCTL */
795 #define GPIO_PAR_BUSCTL_TS(x)           (((x)&0x03)<<3)
796 #define GPIO_PAR_BUSCTL_RWB             (0x20)
797 #define GPIO_PAR_BUSCTL_TA              (0x40)
798 #define GPIO_PAR_BUSCTL_OE              (0x80)
799 #define GPIO_PAR_BUSCTL_OE_GPIO         (0x00)
800 #define GPIO_PAR_BUSCTL_OE_OE           (0x80)
801 #define GPIO_PAR_BUSCTL_TA_GPIO         (0x00)
802 #define GPIO_PAR_BUSCTL_TA_TA           (0x40)
803 #define GPIO_PAR_BUSCTL_RWB_GPIO        (0x00)
804 #define GPIO_PAR_BUSCTL_RWB_RWB         (0x20)
805 #define GPIO_PAR_BUSCTL_TS_GPIO         (0x00)
806 #define GPIO_PAR_BUSCTL_TS_DACK0        (0x10)
807 #define GPIO_PAR_BUSCTL_TS_TS           (0x18)
808
809 /* Bit definitions and macros for GPIO_PAR_FECI2C */
810 #define GPIO_PAR_FECI2C_SDA(x)          (((x)&0x03)<<0)
811 #define GPIO_PAR_FECI2C_SCL(x)          (((x)&0x03)<<2)
812 #define GPIO_PAR_FECI2C_MDIO(x)         (((x)&0x03)<<4)
813 #define GPIO_PAR_FECI2C_MDC(x)          (((x)&0x03)<<6)
814 #define GPIO_PAR_FECI2C_MDC_GPIO        (0x00)
815 #define GPIO_PAR_FECI2C_MDC_UTXD2       (0x40)
816 #define GPIO_PAR_FECI2C_MDC_SCL         (0x80)
817 #define GPIO_PAR_FECI2C_MDC_EMDC        (0xC0)
818 #define GPIO_PAR_FECI2C_MDIO_GPIO       (0x00)
819 #define GPIO_PAR_FECI2C_MDIO_URXD2      (0x10)
820 #define GPIO_PAR_FECI2C_MDIO_SDA        (0x20)
821 #define GPIO_PAR_FECI2C_MDIO_EMDIO      (0x30)
822 #define GPIO_PAR_FECI2C_SCL_GPIO        (0x00)
823 #define GPIO_PAR_FECI2C_SCL_UTXD2       (0x04)
824 #define GPIO_PAR_FECI2C_SCL_SCL         (0x0C)
825 #define GPIO_PAR_FECI2C_SDA_GPIO        (0x00)
826 #define GPIO_PAR_FECI2C_SDA_URXD2       (0x02)
827 #define GPIO_PAR_FECI2C_SDA_SDA         (0x03)
828
829 /* Bit definitions and macros for GPIO_PAR_BE */
830 #define GPIO_PAR_BE0                    (0x01)
831 #define GPIO_PAR_BE1                    (0x02)
832 #define GPIO_PAR_BE2                    (0x04)
833 #define GPIO_PAR_BE3                    (0x08)
834
835 /* Bit definitions and macros for GPIO_PAR_CS */
836 #define GPIO_PAR_CS1                    (0x02)
837 #define GPIO_PAR_CS2                    (0x04)
838 #define GPIO_PAR_CS3                    (0x08)
839 #define GPIO_PAR_CS4                    (0x10)
840 #define GPIO_PAR_CS5                    (0x20)
841 #define GPIO_PAR_CS1_GPIO               (0x00)
842 #define GPIO_PAR_CS1_SDCS1              (0x01)
843 #define GPIO_PAR_CS1_CS1                (0x03)
844
845 /* Bit definitions and macros for GPIO_PAR_SSI */
846 #define GPIO_PAR_SSI_MCLK               (0x0080)
847 #define GPIO_PAR_SSI_TXD(x)             (((x)&0x0003)<<8)
848 #define GPIO_PAR_SSI_RXD(x)             (((x)&0x0003)<<10)
849 #define GPIO_PAR_SSI_FS(x)              (((x)&0x0003)<<12)
850 #define GPIO_PAR_SSI_BCLK(x)            (((x)&0x0003)<<14)
851
852 /* Bit definitions and macros for GPIO_PAR_UART */
853 #define GPIO_PAR_UART_TXD0              (0x0001)
854 #define GPIO_PAR_UART_RXD0              (0x0002)
855 #define GPIO_PAR_UART_RTS0              (0x0004)
856 #define GPIO_PAR_UART_CTS0              (0x0008)
857 #define GPIO_PAR_UART_TXD1(x)           (((x)&0x0003)<<4)
858 #define GPIO_PAR_UART_RXD1(x)           (((x)&0x0003)<<6)
859 #define GPIO_PAR_UART_RTS1(x)           (((x)&0x0003)<<8)
860 #define GPIO_PAR_UART_CTS1(x)           (((x)&0x0003)<<10)
861 #define GPIO_PAR_UART_CTS1_GPIO         (0x0000)
862 #define GPIO_PAR_UART_CTS1_SSI_BCLK     (0x0800)
863 #define GPIO_PAR_UART_CTS1_ULPI_D7      (0x0400)
864 #define GPIO_PAR_UART_CTS1_UCTS1        (0x0C00)
865 #define GPIO_PAR_UART_RTS1_GPIO         (0x0000)
866 #define GPIO_PAR_UART_RTS1_SSI_FS       (0x0200)
867 #define GPIO_PAR_UART_RTS1_ULPI_D6      (0x0100)
868 #define GPIO_PAR_UART_RTS1_URTS1        (0x0300)
869 #define GPIO_PAR_UART_RXD1_GPIO         (0x0000)
870 #define GPIO_PAR_UART_RXD1_SSI_RXD      (0x0080)
871 #define GPIO_PAR_UART_RXD1_ULPI_D5      (0x0040)
872 #define GPIO_PAR_UART_RXD1_URXD1        (0x00C0)
873 #define GPIO_PAR_UART_TXD1_GPIO         (0x0000)
874 #define GPIO_PAR_UART_TXD1_SSI_TXD      (0x0020)
875 #define GPIO_PAR_UART_TXD1_ULPI_D4      (0x0010)
876 #define GPIO_PAR_UART_TXD1_UTXD1        (0x0030)
877
878 /* Bit definitions and macros for GPIO_PAR_QSPI */
879 #define GPIO_PAR_QSPI_SCK(x)            (((x)&0x0003)<<4)
880 #define GPIO_PAR_QSPI_DOUT(x)           (((x)&0x0003)<<6)
881 #define GPIO_PAR_QSPI_DIN(x)            (((x)&0x0003)<<8)
882 #define GPIO_PAR_QSPI_PCS0(x)           (((x)&0x0003)<<10)
883 #define GPIO_PAR_QSPI_PCS1(x)           (((x)&0x0003)<<12)
884 #define GPIO_PAR_QSPI_PCS2(x)           (((x)&0x0003)<<14)
885
886 /* Bit definitions and macros for GPIO_PAR_TIMER */
887 #define GPIO_PAR_TIN0(x)                (((x)&0x03)<<0)
888 #define GPIO_PAR_TIN1(x)                (((x)&0x03)<<2)
889 #define GPIO_PAR_TIN2(x)                (((x)&0x03)<<4)
890 #define GPIO_PAR_TIN3(x)                (((x)&0x03)<<6)
891 #define GPIO_PAR_TIN3_GPIO              (0x00)
892 #define GPIO_PAR_TIN3_TOUT3             (0x80)
893 #define GPIO_PAR_TIN3_URXD2             (0x40)
894 #define GPIO_PAR_TIN3_TIN3              (0xC0)
895 #define GPIO_PAR_TIN2_GPIO              (0x00)
896 #define GPIO_PAR_TIN2_TOUT2             (0x20)
897 #define GPIO_PAR_TIN2_UTXD2             (0x10)
898 #define GPIO_PAR_TIN2_TIN2              (0x30)
899 #define GPIO_PAR_TIN1_GPIO              (0x00)
900 #define GPIO_PAR_TIN1_TOUT1             (0x08)
901 #define GPIO_PAR_TIN1_DACK1             (0x04)
902 #define GPIO_PAR_TIN1_TIN1              (0x0C)
903 #define GPIO_PAR_TIN0_GPIO              (0x00)
904 #define GPIO_PAR_TIN0_TOUT0             (0x02)
905 #define GPIO_PAR_TIN0_DREQ0             (0x01)
906 #define GPIO_PAR_TIN0_TIN0              (0x03)
907
908 /* Bit definitions and macros for GPIO_PAR_LCDDATA */
909 #define GPIO_PAR_LCDDATA_LD7_0(x)       ((x)&0x03)
910 #define GPIO_PAR_LCDDATA_LD15_8(x)      (((x)&0x03)<<2)
911 #define GPIO_PAR_LCDDATA_LD16(x)        (((x)&0x03)<<4)
912 #define GPIO_PAR_LCDDATA_LD17(x)        (((x)&0x03)<<6)
913
914 /* Bit definitions and macros for GPIO_PAR_LCDCTL */
915 #define GPIO_PAR_LCDCTL_CLS             (0x0001)
916 #define GPIO_PAR_LCDCTL_PS              (0x0002)
917 #define GPIO_PAR_LCDCTL_REV             (0x0004)
918 #define GPIO_PAR_LCDCTL_SPL_SPR         (0x0008)
919 #define GPIO_PAR_LCDCTL_CONTRAST        (0x0010)
920 #define GPIO_PAR_LCDCTL_LSCLK           (0x0020)
921 #define GPIO_PAR_LCDCTL_LP_HSYNC        (0x0040)
922 #define GPIO_PAR_LCDCTL_FLM_VSYNC       (0x0080)
923 #define GPIO_PAR_LCDCTL_ACD_OE          (0x0100)
924
925 /* Bit definitions and macros for GPIO_PAR_IRQ */
926 #define GPIO_PAR_IRQ1(x)                (((x)&0x0003)<<4)
927 #define GPIO_PAR_IRQ2(x)                (((x)&0x0003)<<6)
928 #define GPIO_PAR_IRQ4(x)                (((x)&0x0003)<<8)
929 #define GPIO_PAR_IRQ5(x)                (((x)&0x0003)<<10)
930 #define GPIO_PAR_IRQ6(x)                (((x)&0x0003)<<12)
931
932 /* Bit definitions and macros for GPIO_MSCR_FLEXBUS */
933 #define GPIO_MSCR_FLEXBUS_ADDRCTL(x)    ((x)&0x03)
934 #define GPIO_MSCR_FLEXBUS_DLOWER(x)     (((x)&0x03)<<2)
935 #define GPIO_MSCR_FLEXBUS_DUPPER(x)     (((x)&0x03)<<4)
936
937 /* Bit definitions and macros for GPIO_MSCR_SDRAM */
938 #define GPIO_MSCR_SDRAM_SDRAM(x)        ((x)&0x03)
939 #define GPIO_MSCR_SDRAM_SDCLK(x)        (((x)&0x03)<<2)
940 #define GPIO_MSCR_SDRAM_SDCLKB(x)       (((x)&0x03)<<4)
941
942 /* Bit definitions and macros for GPIO_DSCR_I2C */
943 #define GPIO_DSCR_I2C_DSE(x)            ((x)&0x03)
944
945 /* Bit definitions and macros for GPIO_DSCR_PWM */
946 #define GPIO_DSCR_PWM_DSE(x)            ((x)&0x03)
947
948 /* Bit definitions and macros for GPIO_DSCR_FEC */
949 #define GPIO_DSCR_FEC_DSE(x)            ((x)&0x03)
950
951 /* Bit definitions and macros for GPIO_DSCR_UART */
952 #define GPIO_DSCR_UART0_DSE(x)          ((x)&0x03)
953 #define GPIO_DSCR_UART1_DSE(x)          (((x)&0x03)<<2)
954
955 /* Bit definitions and macros for GPIO_DSCR_QSPI */
956 #define GPIO_DSCR_QSPI_DSE(x)           ((x)&0x03)
957
958 /* Bit definitions and macros for GPIO_DSCR_TIMER */
959 #define GPIO_DSCR_TIMER_DSE(x)          ((x)&0x03)
960
961 /* Bit definitions and macros for GPIO_DSCR_SSI */
962 #define GPIO_DSCR_SSI_DSE(x)            ((x)&0x03)
963
964 /* Bit definitions and macros for GPIO_DSCR_LCD */
965 #define GPIO_DSCR_LCD_DSE(x)            ((x)&0x03)
966
967 /* Bit definitions and macros for GPIO_DSCR_DEBUG */
968 #define GPIO_DSCR_DEBUG_DSE(x)          ((x)&0x03)
969
970 /* Bit definitions and macros for GPIO_DSCR_CLKRST */
971 #define GPIO_DSCR_CLKRST_DSE(x)         ((x)&0x03)
972
973 /* Bit definitions and macros for GPIO_DSCR_IRQ */
974 #define GPIO_DSCR_IRQ_DSE(x)            ((x)&0x03)
975
976 /*********************************************************************
977 * SDRAM Controller (SDRAMC)
978 *********************************************************************/
979 /* Bit definitions and macros for SDRAMC_SDMR */
980 #define SDRAMC_SDMR_BNKAD_LEMR          (0x40000000)
981 #define SDRAMC_SDMR_BNKAD_LMR           (0x00000000)
982 #define SDRAMC_SDMR_AD(x)               (((x)&0x00000FFF)<<18)
983 #define SDRAMC_SDMR_CMD                 (0x00010000)
984
985 /* Bit definitions and macros for SDRAMC_SDCR */
986 #define SDRAMC_SDCR_MODE_EN             (0x80000000)
987 #define SDRAMC_SDCR_CKE                 (0x40000000)
988 #define SDRAMC_SDCR_DDR                 (0x20000000)
989 #define SDRAMC_SDCR_REF                 (0x10000000)
990 #define SDRAMC_SDCR_MUX(x)              (((x)&0x00000003)<<24)
991 #define SDRAMC_SDCR_OE_RULE             (0x00400000)
992 #define SDRAMC_SDCR_RCNT(x)             (((x)&0x0000003F)<<16)
993 #define SDRAMC_SDCR_PS_32               (0x00000000)
994 #define SDRAMC_SDCR_PS_16               (0x00002000)
995 #define SDRAMC_SDCR_DQS_OE(x)           (((x)&0x0000000F)<<8)
996 #define SDRAMC_SDCR_IREF                (0x00000004)
997 #define SDRAMC_SDCR_IPALL               (0x00000002)
998
999 /* Bit definitions and macros for SDRAMC_SDCFG1 */
1000 #define SDRAMC_SDCFG1_SRD2RW(x)         (((x)&0x0000000F)<<28)
1001 #define SDRAMC_SDCFG1_SWT2RD(x)         (((x)&0x00000007)<<24)
1002 #define SDRAMC_SDCFG1_RDLAT(x)          (((x)&0x0000000F)<<20)
1003 #define SDRAMC_SDCFG1_ACT2RW(x)         (((x)&0x00000007)<<16)
1004 #define SDRAMC_SDCFG1_PRE2ACT(x)        (((x)&0x00000007)<<12)
1005 #define SDRAMC_SDCFG1_REF2ACT(x)        (((x)&0x0000000F)<<8)
1006 #define SDRAMC_SDCFG1_WTLAT(x)          (((x)&0x00000007)<<4)
1007
1008 /* Bit definitions and macros for SDRAMC_SDCFG2 */
1009 #define SDRAMC_SDCFG2_BRD2PRE(x)        (((x)&0x0000000F)<<28)
1010 #define SDRAMC_SDCFG2_BWT2RW(x)         (((x)&0x0000000F)<<24)
1011 #define SDRAMC_SDCFG2_BRD2WT(x)         (((x)&0x0000000F)<<20)
1012 #define SDRAMC_SDCFG2_BL(x)             (((x)&0x0000000F)<<16)
1013
1014 /* Bit definitions and macros for SDRAMC_SDDS */
1015 #define SDRAMC_SDDS_SB_E(x)             (((x)&0x00000003)<<8)
1016 #define SDRAMC_SDDS_SB_C(x)             (((x)&0x00000003)<<6)
1017 #define SDRAMC_SDDS_SB_A(x)             (((x)&0x00000003)<<4)
1018 #define SDRAMC_SDDS_SB_S(x)             (((x)&0x00000003)<<2)
1019 #define SDRAMC_SDDS_SB_D(x)             ((x)&0x00000003)
1020
1021 /* Bit definitions and macros for SDRAMC_SDCS */
1022 #define SDRAMC_SDCS_BASE(x)             (((x)&0x00000FFF)<<20)
1023 #define SDRAMC_SDCS_CSSZ(x)             ((x)&0x0000001F)
1024 #define SDRAMC_SDCS_CSSZ_4GBYTE         (0x0000001F)
1025 #define SDRAMC_SDCS_CSSZ_2GBYTE         (0x0000001E)
1026 #define SDRAMC_SDCS_CSSZ_1GBYTE         (0x0000001D)
1027 #define SDRAMC_SDCS_CSSZ_512MBYTE       (0x0000001C)
1028 #define SDRAMC_SDCS_CSSZ_256MBYTE       (0x0000001B)
1029 #define SDRAMC_SDCS_CSSZ_128MBYTE       (0x0000001A)
1030 #define SDRAMC_SDCS_CSSZ_64MBYTE        (0x00000019)
1031 #define SDRAMC_SDCS_CSSZ_32MBYTE        (0x00000018)
1032 #define SDRAMC_SDCS_CSSZ_16MBYTE        (0x00000017)
1033 #define SDRAMC_SDCS_CSSZ_8MBYTE         (0x00000016)
1034 #define SDRAMC_SDCS_CSSZ_4MBYTE         (0x00000015)
1035 #define SDRAMC_SDCS_CSSZ_2MBYTE         (0x00000014)
1036 #define SDRAMC_SDCS_CSSZ_1MBYTE         (0x00000013)
1037 #define SDRAMC_SDCS_CSSZ_DIABLE         (0x00000000)
1038
1039 /*********************************************************************
1040 * Phase Locked Loop (PLL)
1041 *********************************************************************/
1042 /* Bit definitions and macros for PLL_PODR */
1043 #define PLL_PODR_CPUDIV(x)              (((x)&0x0F)<<4)
1044 #define PLL_PODR_BUSDIV(x)              ((x)&0x0F)
1045
1046 /* Bit definitions and macros for PLL_PLLCR */
1047 #define PLL_PLLCR_DITHEN                (0x80)
1048 #define PLL_PLLCR_DITHDEV(x)            ((x)&0x07)
1049
1050 #endif                          /* mcf5329_h */