xref: /rk3399_ARM-atf/plat/nxp/common/soc_errata/errata.c (revision 9616db154b0be0abe27f7d267482772b54c88664)
1 /*
2  * Copyright 2021 NXP
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 #include <common/debug.h>
9 #include <mmio.h>
10 
11 #ifdef ERRATA_SOC_A050426
12 static void erratum_a050426(void)
13 {
14 	uint32_t i, val3, val4;
15 
16 	/* Enable BIST to access Internal memory locations */
17 	val3 = mmio_read_32(0x700117E60);
18 	mmio_write_32(0x700117E60, (val3 | 0x80000001));
19 	val4 = mmio_read_32(0x700117E90);
20 	mmio_write_32(0x700117E90, (val4 & 0xFFDFFFFF));
21 
22 	/* wriop Internal Memory.*/
23 	for (i = 0U; i < 4U; i++) {
24 		mmio_write_32(0x706312000 + (i * 4), 0x55555555);
25 		mmio_write_32(0x706312400 + (i * 4), 0x55555555);
26 		mmio_write_32(0x706312800 + (i * 4), 0x55555555);
27 		mmio_write_32(0x706314000 + (i * 4), 0x55555555);
28 		mmio_write_32(0x706314400 + (i * 4), 0x55555555);
29 		mmio_write_32(0x706314800 + (i * 4), 0x55555555);
30 		mmio_write_32(0x706314c00 + (i * 4), 0x55555555);
31 	}
32 	for (i = 0U; i < 3U; i++) {
33 		mmio_write_32(0x706316000 + (i * 4), 0x55555555);
34 		mmio_write_32(0x706320000 + (i * 4), 0x55555555);
35 		mmio_write_32(0x706320400 + (i * 4), 0x55555555);
36 	}
37 	for (i = 0U; i < 2U; i++) {
38 		mmio_write_32(0x70640a000 + (i * 4), 0x55555555);
39 	}
40 	for (i = 0U; i < 3U; i++) {
41 		mmio_write_32(0x706518000 + (i * 4), 0x55555555);
42 		mmio_write_32(0x706519000 + (i * 4), 0x55555555);
43 	}
44 	for (i = 0U; i < 4U; i++) {
45 		mmio_write_32(0x706522000 + (i * 4), 0x55555555);
46 		mmio_write_32(0x706522800 + (i * 4), 0x55555555);
47 		mmio_write_32(0x706523000 + (i * 4), 0x55555555);
48 		mmio_write_32(0x706523800 + (i * 4), 0x55555555);
49 		mmio_write_32(0x706524000 + (i * 4), 0x55555555);
50 		mmio_write_32(0x706524800 + (i * 4), 0x55555555);
51 		mmio_write_32(0x706608000 + (i * 4), 0x55555555);
52 		mmio_write_32(0x706608800 + (i * 4), 0x55555555);
53 		mmio_write_32(0x706609000 + (i * 4), 0x55555555);
54 		mmio_write_32(0x706609800 + (i * 4), 0x55555555);
55 		mmio_write_32(0x70660a000 + (i * 4), 0x55555555);
56 		mmio_write_32(0x70660a800 + (i * 4), 0x55555555);
57 		mmio_write_32(0x70660b000 + (i * 4), 0x55555555);
58 		mmio_write_32(0x70660b800 + (i * 4), 0x55555555);
59 	}
60 	for (i = 0U; i < 3U; i++) {
61 		mmio_write_32(0x70660c000 + (i * 4), 0x55555555);
62 		mmio_write_32(0x70660c800 + (i * 4), 0x55555555);
63 	}
64 	for (i = 0U; i < 2U; i++) {
65 		mmio_write_32(0x706718000 + (i * 4), 0x55555555);
66 		mmio_write_32(0x706718800 + (i * 4), 0x55555555);
67 	}
68 	mmio_write_32(0x706b0a000 + (i * 4), 0x55555555);
69 
70 	for (i = 0U; i < 4U; i++) {
71 		mmio_write_32(0x706b0e000 + (i * 4), 0x55555555);
72 		mmio_write_32(0x706b0e800 + (i * 4), 0x55555555);
73 	}
74 	for (i = 0U; i < 2U; i++) {
75 		mmio_write_32(0x706b10000 + (i * 4), 0x55555555);
76 		mmio_write_32(0x706b10400 + (i * 4), 0x55555555);
77 	}
78 	for (i = 0U; i < 4U; i++) {
79 		mmio_write_32(0x706b14000 + (i * 4), 0x55555555);
80 		mmio_write_32(0x706b14800 + (i * 4), 0x55555555);
81 		mmio_write_32(0x706b15000 + (i * 4), 0x55555555);
82 		mmio_write_32(0x706b15800 + (i * 4), 0x55555555);
83 	}
84 	mmio_write_32(0x706e12000 + (i * 4), 0x55555555);
85 
86 	for (i = 0U; i < 4U; i++) {
87 		mmio_write_32(0x706e14000 + (i * 4), 0x55555555);
88 		mmio_write_32(0x706e14800 + (i * 4), 0x55555555);
89 	}
90 	for (i = 0U; i < 2U; i++) {
91 		mmio_write_32(0x706e16000 + (i * 4), 0x55555555);
92 		mmio_write_32(0x706e16400 + (i * 4), 0x55555555);
93 	}
94 	for (i = 0U; i < 3U; i++) {
95 		mmio_write_32(0x706e1a000 + (i * 4), 0x55555555);
96 		mmio_write_32(0x706e1a800 + (i * 4), 0x55555555);
97 		mmio_write_32(0x706e1b000 + (i * 4), 0x55555555);
98 		mmio_write_32(0x706e1b800 + (i * 4), 0x55555555);
99 		mmio_write_32(0x706e1c000 + (i * 4), 0x55555555);
100 		mmio_write_32(0x706e1c800 + (i * 4), 0x55555555);
101 		mmio_write_32(0x706e1e000 + (i * 4), 0x55555555);
102 		mmio_write_32(0x706e1e800 + (i * 4), 0x55555555);
103 		mmio_write_32(0x706e1f000 + (i * 4), 0x55555555);
104 		mmio_write_32(0x706e1f800 + (i * 4), 0x55555555);
105 		mmio_write_32(0x706e20000 + (i * 4), 0x55555555);
106 		mmio_write_32(0x706e20800 + (i * 4), 0x55555555);
107 	}
108 	for (i = 0U; i < 4U; i++) {
109 		mmio_write_32(0x707108000 + (i * 4), 0x55555555);
110 		mmio_write_32(0x707109000 + (i * 4), 0x55555555);
111 		mmio_write_32(0x70710a000 + (i * 4), 0x55555555);
112 	}
113 	for (i = 0U; i < 2U; i++) {
114 		mmio_write_32(0x70711c000 + (i * 4), 0x55555555);
115 		mmio_write_32(0x70711c800 + (i * 4), 0x55555555);
116 		mmio_write_32(0x70711d000 + (i * 4), 0x55555555);
117 		mmio_write_32(0x70711d800 + (i * 4), 0x55555555);
118 		mmio_write_32(0x70711e000 + (i * 4), 0x55555555);
119 	}
120 	for (i = 0U; i < 4U; i++) {
121 		mmio_write_32(0x707120000 + (i * 4), 0x55555555);
122 		mmio_write_32(0x707121000 + (i * 4), 0x55555555);
123 	}
124 	for (i = 0U; i < 3U; i++) {
125 		mmio_write_32(0x707122000 + (i * 4), 0x55555555);
126 		mmio_write_32(0x70725a000 + (i * 4), 0x55555555);
127 		mmio_write_32(0x70725b000 + (i * 4), 0x55555555);
128 		mmio_write_32(0x70725c000 + (i * 4), 0x55555555);
129 		mmio_write_32(0x70725e000 + (i * 4), 0x55555555);
130 		mmio_write_32(0x70725e400 + (i * 4), 0x55555555);
131 		mmio_write_32(0x70725e800 + (i * 4), 0x55555555);
132 		mmio_write_32(0x70725ec00 + (i * 4), 0x55555555);
133 		mmio_write_32(0x70725f000 + (i * 4), 0x55555555);
134 		mmio_write_32(0x70725f400 + (i * 4), 0x55555555);
135 		mmio_write_32(0x707340000 + (i * 4), 0x55555555);
136 		mmio_write_32(0x707346000 + (i * 4), 0x55555555);
137 		mmio_write_32(0x707484000 + (i * 4), 0x55555555);
138 		mmio_write_32(0x70748a000 + (i * 4), 0x55555555);
139 		mmio_write_32(0x70748b000 + (i * 4), 0x55555555);
140 		mmio_write_32(0x70748c000 + (i * 4), 0x55555555);
141 		mmio_write_32(0x70748d000 + (i * 4), 0x55555555);
142 	}
143 
144 	/* EDMA Internal Memory.*/
145 	for (i = 0U; i < 5U; i++) {
146 		mmio_write_32(0x70a208000 + (i * 4), 0x55555555);
147 		mmio_write_32(0x70a208800 + (i * 4), 0x55555555);
148 		mmio_write_32(0x70a209000 + (i * 4), 0x55555555);
149 		mmio_write_32(0x70a209800 + (i * 4), 0x55555555);
150 	}
151 
152 	/* PEX1 Internal Memory.*/
153 	for (i = 0U; i < 3U; i++) {
154 		mmio_write_32(0x70a508000 + (i * 4), 0x55555555);
155 	}
156 	for (i = 0U; i < 5U; i++) {
157 		mmio_write_32(0x70a520000 + (i * 4), 0x55555555);
158 		mmio_write_32(0x70a528000 + (i * 4), 0x55555555);
159 	}
160 
161 	/* PEX2 Internal Memory.*/
162 	for (i = 0U; i < 3U; i++) {
163 		mmio_write_32(0x70a608000 + (i * 4), 0x55555555);
164 	}
165 	for (i = 0U; i < 5U; i++) {
166 		mmio_write_32(0x70a620000 + (i * 4), 0x55555555);
167 		mmio_write_32(0x70a628000 + (i * 4), 0x55555555);
168 	}
169 
170 	/* PEX3 Internal Memory.*/
171 	for (i = 0U; i < 5U; i++) {
172 		mmio_write_32(0x70a708000 + (i * 4), 0x55555555);
173 		mmio_write_32(0x70a728000 + (i * 4), 0x55555555);
174 		mmio_write_32(0x70a730000 + (i * 4), 0x55555555);
175 		mmio_write_32(0x70a738000 + (i * 4), 0x55555555);
176 		mmio_write_32(0x70a748000 + (i * 4), 0x55555555);
177 		mmio_write_32(0x70a758000 + (i * 4), 0x55555555);
178 	}
179 
180 	/* PEX4 Internal Memory.*/
181 	for (i = 0U; i < 3U; i++) {
182 		mmio_write_32(0x70a808000 + (i * 4), 0x55555555);
183 	}
184 	for (i = 0U; i < 5U; i++) {
185 		mmio_write_32(0x70a820000 + (i * 4), 0x55555555);
186 		mmio_write_32(0x70a828000 + (i * 4), 0x55555555);
187 	}
188 
189 	/* PEX5 Internal Memory.*/
190 	for (i = 0U; i < 5U; i++) {
191 		mmio_write_32(0x70aa08000 + (i * 4), 0x55555555);
192 		mmio_write_32(0x70aa28000 + (i * 4), 0x55555555);
193 		mmio_write_32(0x70aa30000 + (i * 4), 0x55555555);
194 		mmio_write_32(0x70aa38000 + (i * 4), 0x55555555);
195 		mmio_write_32(0x70aa48000 + (i * 4), 0x55555555);
196 		mmio_write_32(0x70aa58000 + (i * 4), 0x55555555);
197 	}
198 
199 	/* PEX6 Internal Memory.*/
200 	for (i = 0U; i < 3U; i++) {
201 		mmio_write_32(0x70ab08000 + (i * 4), 0x55555555);
202 	}
203 	for (i = 0U; i < 5U; i++) {
204 		mmio_write_32(0x70ab20000 + (i * 4), 0x55555555);
205 		mmio_write_32(0x70ab28000 + (i * 4), 0x55555555);
206 	}
207 
208 	/* QDMA Internal Memory.*/
209 	for (i = 0U; i < 5U; i++) {
210 		mmio_write_32(0x70b008000 + (i * 4), 0x55555555);
211 		mmio_write_32(0x70b00c000 + (i * 4), 0x55555555);
212 		mmio_write_32(0x70b010000 + (i * 4), 0x55555555);
213 		mmio_write_32(0x70b014000 + (i * 4), 0x55555555);
214 		mmio_write_32(0x70b018000 + (i * 4), 0x55555555);
215 		mmio_write_32(0x70b018400 + (i * 4), 0x55555555);
216 		mmio_write_32(0x70b01a000 + (i * 4), 0x55555555);
217 		mmio_write_32(0x70b01a400 + (i * 4), 0x55555555);
218 		mmio_write_32(0x70b01c000 + (i * 4), 0x55555555);
219 		mmio_write_32(0x70b01d000 + (i * 4), 0x55555555);
220 		mmio_write_32(0x70b01e000 + (i * 4), 0x55555555);
221 		mmio_write_32(0x70b01e800 + (i * 4), 0x55555555);
222 		mmio_write_32(0x70b01f000 + (i * 4), 0x55555555);
223 		mmio_write_32(0x70b01f800 + (i * 4), 0x55555555);
224 		mmio_write_32(0x70b020000 + (i * 4), 0x55555555);
225 		mmio_write_32(0x70b020400 + (i * 4), 0x55555555);
226 		mmio_write_32(0x70b020800 + (i * 4), 0x55555555);
227 		mmio_write_32(0x70b020c00 + (i * 4), 0x55555555);
228 		mmio_write_32(0x70b022000 + (i * 4), 0x55555555);
229 		mmio_write_32(0x70b022400 + (i * 4), 0x55555555);
230 		mmio_write_32(0x70b024000 + (i * 4), 0x55555555);
231 		mmio_write_32(0x70b024800 + (i * 4), 0x55555555);
232 		mmio_write_32(0x70b025000 + (i * 4), 0x55555555);
233 		mmio_write_32(0x70b025800 + (i * 4), 0x55555555);
234 	}
235 	for (i = 0U; i < 4U; i++) {
236 		mmio_write_32(0x70b026000 + (i * 4), 0x55555555);
237 		mmio_write_32(0x70b026200 + (i * 4), 0x55555555);
238 	}
239 	for (i = 0U; i < 5U; i++) {
240 		mmio_write_32(0x70b028000 + (i * 4), 0x55555555);
241 		mmio_write_32(0x70b028800 + (i * 4), 0x55555555);
242 		mmio_write_32(0x70b029000 + (i * 4), 0x55555555);
243 		mmio_write_32(0x70b029800 + (i * 4), 0x55555555);
244 	}
245 
246 	/* lnx1_e1000#0 Internal Memory.*/
247 	for (i = 0U; i < 3U; i++) {
248 		mmio_write_32(0x70c00a000 + (i * 4), 0x55555555);
249 		mmio_write_32(0x70c00a200 + (i * 4), 0x55555555);
250 		mmio_write_32(0x70c00a400 + (i * 4), 0x55555555);
251 		mmio_write_32(0x70c00a600 + (i * 4), 0x55555555);
252 		mmio_write_32(0x70c00a800 + (i * 4), 0x55555555);
253 		mmio_write_32(0x70c00aa00 + (i * 4), 0x55555555);
254 		mmio_write_32(0x70c00ac00 + (i * 4), 0x55555555);
255 		mmio_write_32(0x70c00ae00 + (i * 4), 0x55555555);
256 		mmio_write_32(0x70c00b000 + (i * 4), 0x55555555);
257 		mmio_write_32(0x70c00b200 + (i * 4), 0x55555555);
258 		mmio_write_32(0x70c00b400 + (i * 4), 0x55555555);
259 		mmio_write_32(0x70c00b600 + (i * 4), 0x55555555);
260 		mmio_write_32(0x70c00b800 + (i * 4), 0x55555555);
261 		mmio_write_32(0x70c00ba00 + (i * 4), 0x55555555);
262 		mmio_write_32(0x70c00bc00 + (i * 4), 0x55555555);
263 		mmio_write_32(0x70c00be00 + (i * 4), 0x55555555);
264 	}
265 	for (i = 0U; i < 5U; i++) {
266 		mmio_write_32(0x70c00c000 + (i * 4), 0x55555555);
267 		mmio_write_32(0x70c00c400 + (i * 4), 0x55555555);
268 		mmio_write_32(0x70c00c800 + (i * 4), 0x55555555);
269 		mmio_write_32(0x70c00cc00 + (i * 4), 0x55555555);
270 		mmio_write_32(0x70c00d000 + (i * 4), 0x55555555);
271 		mmio_write_32(0x70c00d400 + (i * 4), 0x55555555);
272 		mmio_write_32(0x70c00d800 + (i * 4), 0x55555555);
273 		mmio_write_32(0x70c00dc00 + (i * 4), 0x55555555);
274 	}
275 	for (i = 0U; i < 3U; i++) {
276 		mmio_write_32(0x70c00e000 + (i * 4), 0x55555555);
277 		mmio_write_32(0x70c00f000 + (i * 4), 0x55555555);
278 		mmio_write_32(0x70c012000 + (i * 4), 0x55555555);
279 		mmio_write_32(0x70c012200 + (i * 4), 0x55555555);
280 		mmio_write_32(0x70c012400 + (i * 4), 0x55555555);
281 		mmio_write_32(0x70c012600 + (i * 4), 0x55555555);
282 		mmio_write_32(0x70c012800 + (i * 4), 0x55555555);
283 		mmio_write_32(0x70c012a00 + (i * 4), 0x55555555);
284 		mmio_write_32(0x70c012c00 + (i * 4), 0x55555555);
285 		mmio_write_32(0x70c012e00 + (i * 4), 0x55555555);
286 		mmio_write_32(0x70c013000 + (i * 4), 0x55555555);
287 		mmio_write_32(0x70c013200 + (i * 4), 0x55555555);
288 		mmio_write_32(0x70c013400 + (i * 4), 0x55555555);
289 		mmio_write_32(0x70c013600 + (i * 4), 0x55555555);
290 		mmio_write_32(0x70c013800 + (i * 4), 0x55555555);
291 		mmio_write_32(0x70c013a00 + (i * 4), 0x55555555);
292 		mmio_write_32(0x70c013c00 + (i * 4), 0x55555555);
293 		mmio_write_32(0x70c013e00 + (i * 4), 0x55555555);
294 	}
295 	for (i = 0U; i < 5U; i++) {
296 		mmio_write_32(0x70c014000 + (i * 4), 0x55555555);
297 		mmio_write_32(0x70c014400 + (i * 4), 0x55555555);
298 		mmio_write_32(0x70c014800 + (i * 4), 0x55555555);
299 		mmio_write_32(0x70c014c00 + (i * 4), 0x55555555);
300 		mmio_write_32(0x70c015000 + (i * 4), 0x55555555);
301 		mmio_write_32(0x70c015400 + (i * 4), 0x55555555);
302 		mmio_write_32(0x70c015800 + (i * 4), 0x55555555);
303 		mmio_write_32(0x70c015c00 + (i * 4), 0x55555555);
304 	}
305 	for (i = 0U; i < 3U; i++) {
306 		mmio_write_32(0x70c016000 + (i * 4), 0x55555555);
307 		mmio_write_32(0x70c017000 + (i * 4), 0x55555555);
308 	}
309 
310 	/* lnx1_xfi Internal Memory.*/
311 	for (i = 0U; i < 3U; i++) {
312 		mmio_write_32(0x70c108000 + (i * 4), 0x55555555);
313 		mmio_write_32(0x70c108200 + (i * 4), 0x55555555);
314 		mmio_write_32(0x70c10a000 + (i * 4), 0x55555555);
315 		mmio_write_32(0x70c10a400 + (i * 4), 0x55555555);
316 	}
317 	for (i = 0U; i < 5U; i++) {
318 		mmio_write_32(0x70c10c000 + (i * 4), 0x55555555);
319 		mmio_write_32(0x70c10c400 + (i * 4), 0x55555555);
320 	}
321 	for (i = 0U; i < 3U; i++) {
322 		mmio_write_32(0x70c10e000 + (i * 4), 0x55555555);
323 		mmio_write_32(0x70c10e200 + (i * 4), 0x55555555);
324 		mmio_write_32(0x70c110000 + (i * 4), 0x55555555);
325 		mmio_write_32(0x70c110400 + (i * 4), 0x55555555);
326 	}
327 	for (i = 0U; i < 5U; i++) {
328 		mmio_write_32(0x70c112000 + (i * 4), 0x55555555);
329 		mmio_write_32(0x70c112400 + (i * 4), 0x55555555);
330 	}
331 	for (i = 0U; i < 3U; i++) {
332 		mmio_write_32(0x70c114000 + (i * 4), 0x55555555);
333 		mmio_write_32(0x70c114200 + (i * 4), 0x55555555);
334 		mmio_write_32(0x70c116000 + (i * 4), 0x55555555);
335 		mmio_write_32(0x70c116400 + (i * 4), 0x55555555);
336 	}
337 	for (i = 0U; i < 5U; i++) {
338 		mmio_write_32(0x70c118000 + (i * 4), 0x55555555);
339 		mmio_write_32(0x70c118400 + (i * 4), 0x55555555);
340 	}
341 	for (i = 0U; i < 3U; i++) {
342 		mmio_write_32(0x70c11a000 + (i * 4), 0x55555555);
343 		mmio_write_32(0x70c11a200 + (i * 4), 0x55555555);
344 		mmio_write_32(0x70c11c000 + (i * 4), 0x55555555);
345 		mmio_write_32(0x70c11c400 + (i * 4), 0x55555555);
346 	}
347 	for (i = 0U; i < 5U; i++) {
348 		mmio_write_32(0x70c11e000 + (i * 4), 0x55555555);
349 		mmio_write_32(0x70c11e400 + (i * 4), 0x55555555);
350 	}
351 	for (i = 0U; i < 3U; i++) {
352 		mmio_write_32(0x70c120000 + (i * 4), 0x55555555);
353 		mmio_write_32(0x70c120200 + (i * 4), 0x55555555);
354 		mmio_write_32(0x70c122000 + (i * 4), 0x55555555);
355 		mmio_write_32(0x70c122400 + (i * 4), 0x55555555);
356 	}
357 	for (i = 0U; i < 5U; i++) {
358 		mmio_write_32(0x70c124000 + (i * 4), 0x55555555);
359 		mmio_write_32(0x70c124400 + (i * 4), 0x55555555);
360 	}
361 	for (i = 0U; i < 3U; i++) {
362 		mmio_write_32(0x70c126000 + (i * 4), 0x55555555);
363 		mmio_write_32(0x70c126200 + (i * 4), 0x55555555);
364 		mmio_write_32(0x70c128000 + (i * 4), 0x55555555);
365 		mmio_write_32(0x70c128400 + (i * 4), 0x55555555);
366 	}
367 	for (i = 0U; i < 5U; i++) {
368 		mmio_write_32(0x70c12a000 + (i * 4), 0x55555555);
369 		mmio_write_32(0x70c12a400 + (i * 4), 0x55555555);
370 	}
371 	for (i = 0U; i < 3U; i++) {
372 		mmio_write_32(0x70c12c000 + (i * 4), 0x55555555);
373 		mmio_write_32(0x70c12c200 + (i * 4), 0x55555555);
374 		mmio_write_32(0x70c12e000 + (i * 4), 0x55555555);
375 		mmio_write_32(0x70c12e400 + (i * 4), 0x55555555);
376 	}
377 	for (i = 0U; i < 5U; i++) {
378 		mmio_write_32(0x70c130000 + (i * 4), 0x55555555);
379 		mmio_write_32(0x70c130400 + (i * 4), 0x55555555);
380 	}
381 	for (i = 0U; i < 3U; i++) {
382 		mmio_write_32(0x70c132000 + (i * 4), 0x55555555);
383 		mmio_write_32(0x70c132200 + (i * 4), 0x55555555);
384 		mmio_write_32(0x70c134000 + (i * 4), 0x55555555);
385 		mmio_write_32(0x70c134400 + (i * 4), 0x55555555);
386 	}
387 	for (i = 0U; i < 5U; i++) {
388 		mmio_write_32(0x70c136000 + (i * 4), 0x55555555);
389 		mmio_write_32(0x70c136400 + (i * 4), 0x55555555);
390 	}
391 
392 	/* lnx2_xfi Internal Memory.*/
393 	for (i = 0U; i < 3U; i++) {
394 		mmio_write_32(0x70c308000 + (i * 4), 0x55555555);
395 		mmio_write_32(0x70c308200 + (i * 4), 0x55555555);
396 		mmio_write_32(0x70c30a000 + (i * 4), 0x55555555);
397 		mmio_write_32(0x70c30a400 + (i * 4), 0x55555555);
398 	}
399 	for (i = 0U; i < 5U; i++) {
400 		mmio_write_32(0x70c30c000 + (i * 4), 0x55555555);
401 		mmio_write_32(0x70c30c400 + (i * 4), 0x55555555);
402 	}
403 	for (i = 0U; i < 3U; i++) {
404 		mmio_write_32(0x70c30e000 + (i * 4), 0x55555555);
405 		mmio_write_32(0x70c30e200 + (i * 4), 0x55555555);
406 		mmio_write_32(0x70c310000 + (i * 4), 0x55555555);
407 		mmio_write_32(0x70c310400 + (i * 4), 0x55555555);
408 	}
409 	for (i = 0U; i < 5U; i++) {
410 		mmio_write_32(0x70c312000 + (i * 4), 0x55555555);
411 		mmio_write_32(0x70c312400 + (i * 4), 0x55555555);
412 	}
413 
414 	/* Disable BIST */
415 
416 	mmio_write_32(0x700117E60, val3);
417 	mmio_write_32(0x700117E90, val4);
418 }
419 #endif /* ERRATA_SOC_A050426 */
420 
421 void soc_errata(void)
422 {
423 #ifdef ERRATA_SOC_A050426
424 	INFO("SoC workaround for Errata A050426 was applied\n");
425 	erratum_a050426();
426 #endif
427 	/*
428 	 * The following DDR Erratas workaround are implemented in DDR driver,
429 	 * but print information here.
430 	 */
431 #if ERRATA_DDR_A011396
432 	INFO("SoC workaround for DDR Errata A011396 was applied\n");
433 #endif
434 #if ERRATA_DDR_A050450
435 	INFO("SoC workaround for DDR Errata A050450 was applied\n");
436 #endif
437 }
438