2 * Copyright (C) 2011 Lothar Waßmann <LW@KARO-electronics.de>
3 * based on: board/freesclae/mx28_evk.c (C) 2010 Freescale Semiconductor, Inc.
5 * See file CREDITS for list of people who contributed to this
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of
11 * the License, or (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
28 #include <asm/arch/iomux-mx28.h>
29 #include <asm/arch/imx-regs.h>
30 #include <asm/arch/sys_proto.h>
32 #define LED_PAD_CTRL (MXS_PAD_3V3 | MXS_PAD_4MA | MXS_PAD_NOPULL)
33 #define TSC_PAD_CTRL (MXS_PAD_3V3 | MXS_PAD_8MA | MXS_PAD_PULLUP)
34 #define SSP0_PAD_CTRL (MXS_PAD_3V3 | MXS_PAD_12MA | MXS_PAD_PULLUP)
35 #define SSP2_PAD_CTRL (MXS_PAD_3V3 | MXS_PAD_4MA | MXS_PAD_PULLUP)
36 #define GPMI_PAD_CTRL (MXS_PAD_3V3 | MXS_PAD_4MA | MXS_PAD_NOPULL)
37 #define ENET_PAD_CTRL (MXS_PAD_3V3 | MXS_PAD_4MA | MXS_PAD_PULLUP)
38 #define EMI_PAD_CTRL (MXS_PAD_1V8 | MXS_PAD_12MA | MXS_PAD_NOPULL)
39 #define GPIO_PAD_CTRL (MXS_PAD_3V3 | MXS_PAD_4MA | MXS_PAD_PULLUP)
40 #define UART_PAD_CTRL (MXS_PAD_3V3 | MXS_PAD_4MA | MXS_PAD_PULLUP)
42 static iomux_cfg_t tx28_stk5_pads[] = {
44 MX28_PAD_ENET0_RXD3__GPIO_4_10 | LED_PAD_CTRL,
47 MX28_PAD_PWM0__GPIO_3_16 | GPIO_PAD_CTRL, /* LCD backlight */
48 MX28_PAD_PWM1__GPIO_3_17 | GPIO_PAD_CTRL,
50 /* pads for selected console UART */
51 #if CONFIG_CONS_INDEX == 0
52 MX28_PAD_AUART0_RX__DUART_CTS | UART_PAD_CTRL,
53 MX28_PAD_AUART0_TX__DUART_RTS | UART_PAD_CTRL,
54 MX28_PAD_AUART0_CTS__DUART_RX | UART_PAD_CTRL,
55 MX28_PAD_AUART0_RTS__DUART_TX | UART_PAD_CTRL,
56 #elif CONFIG_CONS_INDEX == 1
57 MX28_PAD_AUART1_RX__AUART1_RX | UART_PAD_CTRL,
58 MX28_PAD_AUART1_TX__AUART1_TX | UART_PAD_CTRL,
59 MX28_PAD_AUART1_CTS__AUART1_CTS | UART_PAD_CTRL,
60 MX28_PAD_AUART1_RTS__AUART1_RTS | UART_PAD_CTRL,
61 #elif CONFIG_CONS_INDEX == 2
62 MX28_PAD_AUART3_RX__AUART3_RX | UART_PAD_CTRL,
63 MX28_PAD_AUART3_TX__AUART3_TX | UART_PAD_CTRL,
64 MX28_PAD_AUART3_CTS__AUART3_CTS | UART_PAD_CTRL,
65 MX28_PAD_AUART3_RTS__AUART3_RTS | UART_PAD_CTRL,
68 MX28_PAD_EMI_D00__EMI_DATA0 | EMI_PAD_CTRL,
69 MX28_PAD_EMI_D01__EMI_DATA1 | EMI_PAD_CTRL,
70 MX28_PAD_EMI_D02__EMI_DATA2 | EMI_PAD_CTRL,
71 MX28_PAD_EMI_D03__EMI_DATA3 | EMI_PAD_CTRL,
72 MX28_PAD_EMI_D04__EMI_DATA4 | EMI_PAD_CTRL,
73 MX28_PAD_EMI_D05__EMI_DATA5 | EMI_PAD_CTRL,
74 MX28_PAD_EMI_D06__EMI_DATA6 | EMI_PAD_CTRL,
75 MX28_PAD_EMI_D07__EMI_DATA7 | EMI_PAD_CTRL,
76 MX28_PAD_EMI_D08__EMI_DATA8 | EMI_PAD_CTRL,
77 MX28_PAD_EMI_D09__EMI_DATA9 | EMI_PAD_CTRL,
78 MX28_PAD_EMI_D10__EMI_DATA10 | EMI_PAD_CTRL,
79 MX28_PAD_EMI_D11__EMI_DATA11 | EMI_PAD_CTRL,
80 MX28_PAD_EMI_D12__EMI_DATA12 | EMI_PAD_CTRL,
81 MX28_PAD_EMI_D13__EMI_DATA13 | EMI_PAD_CTRL,
82 MX28_PAD_EMI_D14__EMI_DATA14 | EMI_PAD_CTRL,
83 MX28_PAD_EMI_D15__EMI_DATA15 | EMI_PAD_CTRL,
84 MX28_PAD_EMI_ODT0__EMI_ODT0 | EMI_PAD_CTRL,
85 MX28_PAD_EMI_DQM0__EMI_DQM0 | EMI_PAD_CTRL,
86 MX28_PAD_EMI_ODT1__EMI_ODT1 | EMI_PAD_CTRL,
87 MX28_PAD_EMI_DQM1__EMI_DQM1 | EMI_PAD_CTRL,
88 MX28_PAD_EMI_DDR_OPEN_FB__EMI_DDR_OPEN_FEEDBACK | EMI_PAD_CTRL,
89 MX28_PAD_EMI_CLK__EMI_CLK | EMI_PAD_CTRL,
90 MX28_PAD_EMI_DQS0__EMI_DQS0 | EMI_PAD_CTRL,
91 MX28_PAD_EMI_DQS1__EMI_DQS1 | EMI_PAD_CTRL,
92 MX28_PAD_EMI_DDR_OPEN__EMI_DDR_OPEN | EMI_PAD_CTRL,
94 MX28_PAD_EMI_A00__EMI_ADDR0 | EMI_PAD_CTRL,
95 MX28_PAD_EMI_A01__EMI_ADDR1 | EMI_PAD_CTRL,
96 MX28_PAD_EMI_A02__EMI_ADDR2 | EMI_PAD_CTRL,
97 MX28_PAD_EMI_A03__EMI_ADDR3 | EMI_PAD_CTRL,
98 MX28_PAD_EMI_A04__EMI_ADDR4 | EMI_PAD_CTRL,
99 MX28_PAD_EMI_A05__EMI_ADDR5 | EMI_PAD_CTRL,
100 MX28_PAD_EMI_A06__EMI_ADDR6 | EMI_PAD_CTRL,
101 MX28_PAD_EMI_A07__EMI_ADDR7 | EMI_PAD_CTRL,
102 MX28_PAD_EMI_A08__EMI_ADDR8 | EMI_PAD_CTRL,
103 MX28_PAD_EMI_A09__EMI_ADDR9 | EMI_PAD_CTRL,
104 MX28_PAD_EMI_A10__EMI_ADDR10 | EMI_PAD_CTRL,
105 MX28_PAD_EMI_A11__EMI_ADDR11 | EMI_PAD_CTRL,
106 MX28_PAD_EMI_A12__EMI_ADDR12 | EMI_PAD_CTRL,
107 MX28_PAD_EMI_A13__EMI_ADDR13 | EMI_PAD_CTRL,
108 MX28_PAD_EMI_A14__EMI_ADDR14 | EMI_PAD_CTRL,
109 MX28_PAD_EMI_BA0__EMI_BA0 | EMI_PAD_CTRL,
110 MX28_PAD_EMI_BA1__EMI_BA1 | EMI_PAD_CTRL,
111 MX28_PAD_EMI_BA2__EMI_BA2 | EMI_PAD_CTRL,
112 MX28_PAD_EMI_CASN__EMI_CASN | EMI_PAD_CTRL,
113 MX28_PAD_EMI_RASN__EMI_RASN | EMI_PAD_CTRL,
114 MX28_PAD_EMI_WEN__EMI_WEN | EMI_PAD_CTRL,
115 MX28_PAD_EMI_CE0N__EMI_CE0N | EMI_PAD_CTRL,
116 MX28_PAD_EMI_CE1N__EMI_CE1N | EMI_PAD_CTRL,
117 MX28_PAD_EMI_CKE__EMI_CKE | EMI_PAD_CTRL,
120 MX28_PAD_PWM4__GPIO_3_29 | ENET_PAD_CTRL,
121 MX28_PAD_ENET0_RX_CLK__GPIO_4_13 | ENET_PAD_CTRL,
122 MX28_PAD_ENET0_MDC__ENET0_MDC | ENET_PAD_CTRL,
123 MX28_PAD_ENET0_MDIO__ENET0_MDIO | ENET_PAD_CTRL,
124 MX28_PAD_ENET0_RX_EN__GPIO_4_2 | ENET_PAD_CTRL, /* COL/CRS_DV/MODE2 */
125 MX28_PAD_ENET0_RXD0__GPIO_4_3 | ENET_PAD_CTRL, /* RXD0/MODE0 */
126 MX28_PAD_ENET0_RXD1__GPIO_4_4 | ENET_PAD_CTRL, /* RXD1/MODE1 */
127 MX28_PAD_ENET0_TX_CLK__GPIO_4_5 | ENET_PAD_CTRL, /* nINT/TX_ER/TXD4 */
128 MX28_PAD_ENET0_TX_EN__ENET0_TX_EN | ENET_PAD_CTRL,
129 MX28_PAD_ENET0_TXD0__ENET0_TXD0 | ENET_PAD_CTRL,
130 MX28_PAD_ENET0_TXD1__ENET0_TXD1 | ENET_PAD_CTRL,
131 MX28_PAD_ENET_CLK__CLKCTRL_ENET | ENET_PAD_CTRL,
134 MX28_PAD_SSP0_DATA0__SSP0_D0 | SSP0_PAD_CTRL,
135 MX28_PAD_SSP0_DATA1__SSP0_D1 | SSP0_PAD_CTRL,
136 MX28_PAD_SSP0_DATA2__SSP0_D2 | SSP0_PAD_CTRL,
137 MX28_PAD_SSP0_DATA3__SSP0_D3 | SSP0_PAD_CTRL,
138 MX28_PAD_SSP0_CMD__SSP0_CMD | SSP0_PAD_CTRL,
139 MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT | GPIO_PAD_CTRL,
140 MX28_PAD_SSP0_SCK__SSP0_SCK | SSP0_PAD_CTRL,
143 MX28_PAD_GPMI_D00__GPMI_D0 | GPMI_PAD_CTRL,
144 MX28_PAD_GPMI_D01__GPMI_D1 | GPMI_PAD_CTRL,
145 MX28_PAD_GPMI_D02__GPMI_D2 | GPMI_PAD_CTRL,
146 MX28_PAD_GPMI_D03__GPMI_D3 | GPMI_PAD_CTRL,
147 MX28_PAD_GPMI_D04__GPMI_D4 | GPMI_PAD_CTRL,
148 MX28_PAD_GPMI_D05__GPMI_D5 | GPMI_PAD_CTRL,
149 MX28_PAD_GPMI_D06__GPMI_D6 | GPMI_PAD_CTRL,
150 MX28_PAD_GPMI_D07__GPMI_D7 | GPMI_PAD_CTRL,
151 MX28_PAD_GPMI_CE0N__GPMI_CE0N | GPMI_PAD_CTRL,
152 MX28_PAD_GPMI_RDY0__GPMI_READY0 | GPMI_PAD_CTRL,
153 MX28_PAD_GPMI_RDN__GPMI_RDN | GPMI_PAD_CTRL,
154 MX28_PAD_GPMI_WRN__GPMI_WRN | GPMI_PAD_CTRL,
155 MX28_PAD_GPMI_ALE__GPMI_ALE | GPMI_PAD_CTRL,
156 MX28_PAD_GPMI_CLE__GPMI_CLE | GPMI_PAD_CTRL,
157 MX28_PAD_GPMI_RESETN__GPMI_RESETN | GPMI_PAD_CTRL,
159 /* maybe used for EDT-FT5x06 */
160 MX28_PAD_SSP0_DATA5__GPIO_2_5 | GPIO_PAD_CTRL,
161 MX28_PAD_SSP0_DATA6__GPIO_2_6 | GPIO_PAD_CTRL,
162 MX28_PAD_ENET0_RXD2__GPIO_4_9 | GPIO_PAD_CTRL,
165 MX28_PAD_GPMI_RDY1__GPIO_0_21 | GPIO_PAD_CTRL,
166 MX28_PAD_GPMI_RDY2__GPIO_0_22 | GPIO_PAD_CTRL,
167 MX28_PAD_GPMI_RDY3__GPIO_0_23 | GPIO_PAD_CTRL,
168 MX28_PAD_GPMI_CE1N__GPIO_0_17 | GPIO_PAD_CTRL,
169 MX28_PAD_GPMI_CE2N__GPIO_0_18 | GPIO_PAD_CTRL,
170 MX28_PAD_GPMI_CE3N__GPIO_0_19 | GPIO_PAD_CTRL,
172 MX28_PAD_SSP0_DATA4__GPIO_2_4 | GPIO_PAD_CTRL,
173 MX28_PAD_SSP0_DATA7__GPIO_2_7 | GPIO_PAD_CTRL,
175 MX28_PAD_SSP2_SS0__GPIO_2_19 | GPIO_PAD_CTRL,
176 MX28_PAD_SSP2_SS1__GPIO_2_20 | GPIO_PAD_CTRL,
177 MX28_PAD_SSP2_SS2__GPIO_2_21 | GPIO_PAD_CTRL,
178 MX28_PAD_SSP3_SS0__GPIO_2_27 | GPIO_PAD_CTRL,
180 MX28_PAD_ENET0_TXD2__GPIO_4_11 | GPIO_PAD_CTRL,
181 MX28_PAD_ENET0_TXD3__GPIO_4_12 | GPIO_PAD_CTRL,
182 MX28_PAD_ENET0_CRS__GPIO_4_15 | GPIO_PAD_CTRL,
185 void board_init_ll(const uint32_t arg, const uint32_t *resptr)
187 mxs_common_spl_init(arg, resptr,
188 tx28_stk5_pads, ARRAY_SIZE(tx28_stk5_pads));
191 static uint32_t tx28_dram_vals[] = {
193 /* TX28-41x0: NT5TU32M16DG-AC */
194 /* 000 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
195 /* 010 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
196 /* 020 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
197 /* 030 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
198 /* 040 */ 0x00000000, 0x00000100, 0x00000000, 0x00000000,
199 /* 050 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
200 /* 060 */ 0x00000000, 0x00000000, 0x00010101, 0x00010101,
201 /* 070 */ 0x000f0f01, 0x0102010a, 0x00000000, 0x00000101,
202 /* 080 */ 0x00000100, 0x00000100, 0x00000000, 0x00000002,
203 /* 090 */ 0x01010000, 0x07080403, 0x06005003, 0x0a0000c8,
204 /* 0a0 */ 0x02009c40, 0x0002030c, 0x0036a609, 0x031a0612,
205 /* 0b0 */ 0x02030202, 0x00c8001c, 0x00000000, 0x00000000,
206 /* 0c0 */ 0x00012100, 0xffff0303, 0x00012100, 0xffff0303,
207 /* 0d0 */ 0x00012100, 0xffff0303, 0x00012100, 0xffff0303,
208 /* 0e0 */ 0x00000003, 0x00000000, 0x00000000, 0x00000000,
209 /* 0f0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
210 /* 100 */ 0x00000000, 0x00000000, 0x00000612, 0x01000f02,
211 /* 110 */ 0x06120612, 0x00000200, 0x00020007, 0xf4004a27,
212 /* 120 */ 0xf4004a27, 0xf4004a27, 0xf4004a27, 0x07400300,
213 /* 130 */ 0x07400300, 0x07400300, 0x07400300, 0x00000005,
214 /* 140 */ 0x00000000, 0x00000000, 0x01000000, 0x01020408,
215 /* 150 */ 0x08040201, 0x000f1133, 0x00000000, 0x00001f04,
216 /* 160 */ 0x00001f04, 0x00001f04, 0x00001f04, 0x00001f04,
217 /* 170 */ 0x00001f04, 0x00001f04, 0x00001f04, 0x00000000,
218 /* 180 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
219 /* 190 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
220 /* 1a0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
221 /* 1b0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
222 /* 1c0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
223 /* 1d0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
224 /* 1e0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
225 /* 1f0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
226 /* 200 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
227 /* 210 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
228 /* 220 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
229 /* 230 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
230 /* 240 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
231 /* 250 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
232 /* 260 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
233 /* 270 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
234 /* 280 */ 0x00000000, 0x00000000, 0x00010000, 0x00030404,
235 /* 290 */ 0x00000003, 0x00000000, 0x00000000, 0x00000000,
236 /* 2a0 */ 0x00000000, 0x00000000, 0x00000000, 0x01010000,
237 /* 2b0 */ 0x01000000, 0x03030000, 0x00010303, 0x01020202,
238 /* 2c0 */ 0x00000000, 0x02040303, 0x21002103, 0x00061200,
239 /* 2d0 */ 0x06120612, 0x04420442, 0x04420442, 0x00040004,
240 /* 2e0 */ 0x00040004, 0x00000000, 0x00000000, 0x00000000,
241 /* 2f0 */ 0x00000000, 0x00000000,
242 #elif CONFIG_SYS_SDRAM_SIZE == SZ_128M
243 /* TX28-40x0: MT47H64M16HR-3 */
244 /* 000 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
245 /* 010 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
246 /* 020 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
247 /* 030 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
248 /* 040 */ 0x00000000, 0x00000100, 0x00000000, 0x00000000,
249 /* 050 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
250 /* 060 */ 0x00000000, 0x00000000, 0x00010101, 0x01010101,
251 /* 070 */ 0x000f0f01, 0x0102020a, 0x00000000, 0x00010101,
252 /* 080 */ 0x00000100, 0x00000100, 0x00000000, 0x00000002,
253 /* 090 */ 0x01010000, 0x07080403, 0x06005003, 0x0a0000c8,
254 /* 0a0 */ 0x02009c40, 0x0002030c, 0x0036a609, 0x031a0612,
255 /* 0b0 */ 0x02030202, 0x00c8001c, 0x00000000, 0x00000000,
256 /* 0c0 */ 0x00012100, 0xffff0303, 0x00012100, 0xffff0303,
257 /* 0d0 */ 0x00012100, 0xffff0303, 0x00012100, 0xffff0303,
258 /* 0e0 */ 0x00000003, 0x00000000, 0x00000000, 0x00000000,
259 /* 0f0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
260 /* 100 */ 0x00000000, 0x00000000, 0x00000612, 0x01000f02,
261 /* 110 */ 0x06120612, 0x00000200, 0x00020007, 0xf4004a27,
262 /* 120 */ 0xf4004a27, 0xf4004a27, 0xf4004a27, 0x07400300,
263 /* 130 */ 0x07400300, 0x07400300, 0x07400300, 0x00000005,
264 /* 140 */ 0x00000000, 0x00000000, 0x01000000, 0x01020408,
265 /* 150 */ 0x08040201, 0x000f1133, 0x00000000, 0x00001f04,
266 /* 160 */ 0x00001f04, 0x00001f04, 0x00001f04, 0x00001f04,
267 /* 170 */ 0x00001f04, 0x00001f04, 0x00001f04, 0x00000000,
268 /* 180 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
269 /* 190 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
270 /* 1a0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
271 /* 1b0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
272 /* 1c0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
273 /* 1d0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
274 /* 1e0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
275 /* 1f0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
276 /* 200 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
277 /* 210 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
278 /* 220 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
279 /* 230 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
280 /* 240 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
281 /* 250 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
282 /* 260 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
283 /* 270 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
284 /* 280 */ 0x00000000, 0x00000000, 0x00010000, 0x00030404,
285 /* 290 */ 0x00000003, 0x00000000, 0x00000000, 0x00000000,
286 /* 2a0 */ 0x00000000, 0x00000000, 0x00000000, 0x01010000,
287 /* 2b0 */ 0x01000000, 0x03030000, 0x00010303, 0x01020202,
288 /* 2c0 */ 0x00000000, 0x02040303, 0x21002103, 0x00061200,
289 /* 2d0 */ 0x06120612, 0x04420442, 0x04420442, 0x00040004,
290 /* 2e0 */ 0x00040004, 0x00000000, 0x00000000, 0x00000000,
291 /* 2f0 */ 0x00000000, 0x00000000,
292 #elif CONFIG_SYS_SDRAM_SIZE == SZ_256M
293 /* TX28-40x2: MEM2G16D2DABG */
294 /* 000 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
295 /* 010 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
296 /* 020 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
297 /* 030 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
298 /* 040 */ 0x00000000, 0x00000100, 0x00000000, 0x00000000,
299 /* 050 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
300 /* 060 */ 0x00000000, 0x00000000, 0x00010101, 0x01010101,
301 /* 070 */ 0x000f0f01, 0x0102010a, 0x00000000, 0x00010101,
302 /* 080 */ 0x00000100, 0x00000100, 0x00000000, 0x00000002,
303 /* 090 */ 0x01010000, 0x07080603, 0x07005003, 0x0a0000c8,
304 /* 0a0 */ 0x02009c40, 0x0002030c, 0x00380e09, 0x0328063f,
305 /* 0b0 */ 0x02030202, 0x00c8001c, 0x00000000, 0x00000000,
306 /* 0c0 */ 0x00012100, 0xffff0303, 0x00012100, 0xffff0303,
307 /* 0d0 */ 0x00012100, 0xffff0303, 0x00012100, 0xffff0303,
308 /* 0e0 */ 0x00000003, 0x00000000, 0x00000000, 0x00000000,
309 /* 0f0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
310 /* 100 */ 0x00000000, 0x00000000, 0x00000612, 0x01000102,
311 /* 110 */ 0x06120612, 0x00000200, 0x00020007, 0xf4002714,
312 /* 120 */ 0xf4002714, 0xf4002714, 0xf4002714, 0x07400300,
313 /* 130 */ 0x07400300, 0x07400300, 0x07400300, 0x00000005,
314 /* 140 */ 0x00000000, 0x00000000, 0x01000000, 0x01020408,
315 /* 150 */ 0x08040201, 0x000f1133, 0x00000000, 0x00001f04,
316 /* 160 */ 0x00001f04, 0x00001f04, 0x00001f04, 0x00001f04,
317 /* 170 */ 0x00001f04, 0x00001f04, 0x00001f04, 0x00000000,
318 /* 180 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
319 /* 190 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
320 /* 1a0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
321 /* 1b0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
322 /* 1c0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
323 /* 1d0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
324 /* 1e0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
325 /* 1f0 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
326 /* 200 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
327 /* 210 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
328 /* 220 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
329 /* 230 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
330 /* 240 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
331 /* 250 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
332 /* 260 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
333 /* 270 */ 0x00000000, 0x00000000, 0x00000000, 0x00000000,
334 /* 280 */ 0x00000000, 0x00000000, 0x00010000, 0x00030404,
335 /* 290 */ 0x00000003, 0x00000000, 0x00000000, 0x00000000,
336 /* 2a0 */ 0x00000000, 0x00000000, 0x00000000, 0x01010000,
337 /* 2b0 */ 0x01000000, 0x03030000, 0x00010303, 0x01020202,
338 /* 2c0 */ 0x00000000, 0x02040303, 0x21002103, 0x00061200,
339 /* 2d0 */ 0x06120612, 0x04420442, 0x04420442, 0x00040004,
340 /* 2e0 */ 0x00040004, 0x00000000, 0x00000000, 0x00000000,
341 /* 2f0 */ 0x00000000, 0x00000000,
343 #error No SDRAM configuration available
347 void mxs_adjust_memory_params(uint32_t *dram_vals)
349 memcpy(dram_vals, tx28_dram_vals, sizeof(tx28_dram_vals));