Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / diag / assembly / peu / PCIeDMARdAdr32.s
CommitLineData
86530b38
AT
1/*
2* ========== Copyright Header Begin ==========================================
3*
4* OpenSPARC T2 Processor File: PCIeDMARdAdr32.s
5* Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved
6* 4150 Network Circle, Santa Clara, California 95054, U.S.A.
7*
8* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
9*
10* This program is free software; you can redistribute it and/or modify
11* it under the terms of the GNU General Public License as published by
12* the Free Software Foundation; version 2 of the License.
13*
14* This program is distributed in the hope that it will be useful,
15* but WITHOUT ANY WARRANTY; without even the implied warranty of
16* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17* GNU General Public License for more details.
18*
19* You should have received a copy of the GNU General Public License
20* along with this program; if not, write to the Free Software
21* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22*
23* For the avoidance of doubt, and except that if any non-GPL license
24* choice is available it will apply instead, Sun elects to use only
25* the General Public License version 2 (GPLv2) at this time for any
26* software where a choice of GPL license versions is made
27* available with the language indicating that GPLv2 or any later version
28* may be used, or where a choice of which version of the GPL is applied is
29* otherwise unspecified.
30*
31* Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
32* CA 95054 USA or visit www.sun.com if you need additional information or
33* have any questions.
34*
35*
36* ========== Copyright Header End ============================================
37*/
38#define ENABLE_PCIE_LINK_TRAINING
39#define ENABLE_PCIE_MPS_512
40#define MAIN_PAGE_HV_ALSO
41
42#include "hboot.s"
43#include "peu_defines.h"
44
45#define MEM32_WR_ADDR mpeval(N2_PCIE_BASE_ADDR + MEM32_OFFSET_BASE_REG_DATA)
46
47#define DMA_DATA_ADDR 0x007f0000
48
49#define DMA_ADDR_1 mpeval(DMA_DATA_ADDR + 0*256, 16, 16)
50#define DMA_ADDR_2 mpeval(DMA_DATA_ADDR + 1*256, 16, 16)
51
52#define IOMMU_TTE_ADDR 0x40000000
53
54! Bit 8 = Page Size: 0=8KB, 1=64KB; Bits 3:0 = TSB Table size: 6=64k entries
55#define MMU_TSB_CNTRL_REG_DATA mpeval(IOMMU_TTE_ADDR | 0x100 | 6)
56
57
58/************************************************************************
59 Test case code start
60 ************************************************************************/
61.text
62.global main
63
64main:
65 ta T_CHANGE_HPRIV
66 nop
67
68! enable SUN4U translation in the IOMMU
69
70 setx FIRE_DLC_MMU_CSR_A_CTL_ADDR, %g1, %g2
71 setx 0x00301, %g1, %g3 ! 9:8 11 = Cache enabled, 0: 1 = translation enabled
72 stx %g3, [%g2]
73 ldx [%g2], %g3
74
75! load address of the TSB table, and the page size (64KB)
76
77 setx FIRE_DLC_MMU_CSR_A_TSB_ADDR, %g1, %g2
78 setx MMU_TSB_CNTRL_REG_DATA, %g1, %g3
79 stx %g3, [%g2]
80 ldx [%g2], %g3
81
82! Trigger some DMA Reads of various lengths
83
84Xmt1: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt1)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h1", 1 )
85 nop
86 nop
87Xmt2: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt2)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h2", 1 )
88 nop
89 nop
90Xmt3: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt3)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h3", 1 )
91 nop
92 nop
93Xmt4: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt4)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h4", 1 )
94 nop
95 nop
96Xmt5: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt5)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h3f", 1 )
97 nop
98 nop
99Xmt6: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt6)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h40", 1 )
100 nop
101 nop
102Xmt7: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt7)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h41", 1 )
103 nop
104 nop
105Xmt8: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt8)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h7f", 1 )
106 nop
107 nop
108Xmt9: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt9)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h80", 1 )
109 nop
110 nop
111Xmt10: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt10)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h81", 1 )
112 nop
113 nop
114Xmt11: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt11)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'hff", 1 )
115 nop
116 nop
117Xmt12: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt12)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h100", 1 )
118 nop
119 nop
120Xmt13: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt13)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h101", 1 )
121 nop
122 nop
123Xmt14: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt14)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h1ff", 1 )
124 nop
125 nop
126Xmt15: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt15)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h200", 1 )
127 nop
128 nop
129Xmt16: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt16)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h400", 1 )
130 nop
131 nop
132Xmt17: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt17)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h800", 1 )
133 nop
134 nop
135Xmt18: nop ! $EV trig_pc_d(1, @VA(.MAIN.Xmt18)) -> EnablePCIeIgCmd ("DMARD", DMA_ADDR_1, DMA_ADDR_2, "64'h1000", 1 )
136 nop
137 nop
138 nop
139
140 ! select a MEM32 address in PCI address range and transmit the command to NCU
141
142 setx MEM32_WR_ADDR, %g1, %g2
143 setx 0x040, %g1, %g4 ! loop 64 times
144
145delay_loop:
146 stx %g2, [%g2] ! MEM32 PIO Write
147 ldx [%g2], %l0 ! MEM32 PIO READ
148 add %g2, 8, %g2 ! increment PIO address
149
150 dec %g4 ! decrement counter
151 brnz %g4, delay_loop ! loop if not zero
152 nop
153
154
155test_passed:
156 EXIT_GOOD
157
158test_failed:
159 EXIT_BAD
160
161
162/************************************************************************
163 Test case data start. Need to set up known data to check on DMA completions
164************************************************************************/
165
166SECTION .DATA DATA_VA=DMA_DATA_ADDR
167attr_data {
168 Name = .DATA,
169 hypervisor,
170 compressimage
171}
172.data
173 .xword 0x0001020304050607
174 .xword 0x08090a0b0c0d0e0f
175 .xword 0x1011121314151617
176 .xword 0x18191a1b1c1d1e1f
177 .xword 0x2021222324252627
178 .xword 0x28292a2b2c2d2e2f
179 .xword 0x3031323334353637
180 .xword 0x38393a3b3c3d3e3f
181 .xword 0x4041424344454647
182 .xword 0x48494a4b4c4d4e4f
183 .xword 0x5051525354555657
184 .xword 0x58595a5b5c5d5e5f
185 .xword 0x6061626364656667
186 .xword 0x68696a6b6c6d6e6f
187 .xword 0x7071727374757677
188 .xword 0x78797a7b7c7d7e7f
189 .xword 0x8081828384858687
190 .xword 0x88898a8b8c8d8e8f
191 .xword 0x9091929394959697
192 .xword 0x98999a9b9c9d9e9f
193 .xword 0xa0a1a2a3a4a5a6a7
194 .xword 0xa8a9aaabacadaeaf
195 .xword 0xb0b1b2b3b4b5b6b7
196 .xword 0xb8b9babbbcbdbebf
197 .xword 0xc0c1c2c3c4c5c6c7
198 .xword 0xc8c9cacbcccdcecf
199 .xword 0xd0d1d2d3d4d5d6d7
200 .xword 0xd8d9dadbdcdddedf
201 .xword 0xe0e1e2e3e4e5e6e7
202 .xword 0xe8e9eaebecedeeef
203 .xword 0xf0f1f2f3f4f5f6f7
204 .xword 0xf8f9fafbfcfdfeff
205
206 .xword 0x0001020304050607
207 .xword 0x08090a0b0c0d0e0f
208 .xword 0x1011121314151617
209 .xword 0x18191a1b1c1d1e1f
210 .xword 0x2021222324252627
211 .xword 0x28292a2b2c2d2e2f
212 .xword 0x3031323334353637
213 .xword 0x38393a3b3c3d3e3f
214 .xword 0x4041424344454647
215 .xword 0x48494a4b4c4d4e4f
216 .xword 0x5051525354555657
217 .xword 0x58595a5b5c5d5e5f
218 .xword 0x6061626364656667
219 .xword 0x68696a6b6c6d6e6f
220 .xword 0x7071727374757677
221 .xword 0x78797a7b7c7d7e7f
222 .xword 0x8081828384858687
223 .xword 0x88898a8b8c8d8e8f
224 .xword 0x9091929394959697
225 .xword 0x98999a9b9c9d9e9f
226 .xword 0xa0a1a2a3a4a5a6a7
227 .xword 0xa8a9aaabacadaeaf
228 .xword 0xb0b1b2b3b4b5b6b7
229 .xword 0xb8b9babbbcbdbebf
230 .xword 0xc0c1c2c3c4c5c6c7
231 .xword 0xc8c9cacbcccdcecf
232 .xword 0xd0d1d2d3d4d5d6d7
233 .xword 0xd8d9dadbdcdddedf
234 .xword 0xe0e1e2e3e4e5e6e7
235 .xword 0xe8e9eaebecedeeef
236 .xword 0xf0f1f2f3f4f5f6f7
237 .xword 0xf8f9fafbfcfdfeff
238
239 .xword 0x0001020304050607
240 .xword 0x08090a0b0c0d0e0f
241 .xword 0x1011121314151617
242 .xword 0x18191a1b1c1d1e1f
243 .xword 0x2021222324252627
244 .xword 0x28292a2b2c2d2e2f
245 .xword 0x3031323334353637
246 .xword 0x38393a3b3c3d3e3f
247 .xword 0x4041424344454647
248 .xword 0x48494a4b4c4d4e4f
249 .xword 0x5051525354555657
250 .xword 0x58595a5b5c5d5e5f
251 .xword 0x6061626364656667
252 .xword 0x68696a6b6c6d6e6f
253 .xword 0x7071727374757677
254 .xword 0x78797a7b7c7d7e7f
255 .xword 0x8081828384858687
256 .xword 0x88898a8b8c8d8e8f
257 .xword 0x9091929394959697
258 .xword 0x98999a9b9c9d9e9f
259 .xword 0xa0a1a2a3a4a5a6a7
260 .xword 0xa8a9aaabacadaeaf
261 .xword 0xb0b1b2b3b4b5b6b7
262 .xword 0xb8b9babbbcbdbebf
263 .xword 0xc0c1c2c3c4c5c6c7
264 .xword 0xc8c9cacbcccdcecf
265 .xword 0xd0d1d2d3d4d5d6d7
266 .xword 0xd8d9dadbdcdddedf
267 .xword 0xe0e1e2e3e4e5e6e7
268 .xword 0xe8e9eaebecedeeef
269 .xword 0xf0f1f2f3f4f5f6f7
270 .xword 0xf8f9fafbfcfdfeff
271
272 .xword 0x0001020304050607
273 .xword 0x08090a0b0c0d0e0f
274 .xword 0x1011121314151617
275 .xword 0x18191a1b1c1d1e1f
276 .xword 0x2021222324252627
277 .xword 0x28292a2b2c2d2e2f
278 .xword 0x3031323334353637
279 .xword 0x38393a3b3c3d3e3f
280 .xword 0x4041424344454647
281 .xword 0x48494a4b4c4d4e4f
282 .xword 0x5051525354555657
283 .xword 0x58595a5b5c5d5e5f
284 .xword 0x6061626364656667
285 .xword 0x68696a6b6c6d6e6f
286 .xword 0x7071727374757677
287 .xword 0x78797a7b7c7d7e7f
288 .xword 0x8081828384858687
289 .xword 0x88898a8b8c8d8e8f
290 .xword 0x9091929394959697
291 .xword 0x98999a9b9c9d9e9f
292 .xword 0xa0a1a2a3a4a5a6a7
293 .xword 0xa8a9aaabacadaeaf
294 .xword 0xb0b1b2b3b4b5b6b7
295 .xword 0xb8b9babbbcbdbebf
296 .xword 0xc0c1c2c3c4c5c6c7
297 .xword 0xc8c9cacbcccdcecf
298 .xword 0xd0d1d2d3d4d5d6d7
299 .xword 0xd8d9dadbdcdddedf
300 .xword 0xe0e1e2e3e4e5e6e7
301 .xword 0xe8e9eaebecedeeef
302 .xword 0xf0f1f2f3f4f5f6f7
303 .xword 0xf8f9fafbfcfdfeff
304
305 .xword 0x0001020304050607
306 .xword 0x08090a0b0c0d0e0f
307 .xword 0x1011121314151617
308 .xword 0x18191a1b1c1d1e1f
309 .xword 0x2021222324252627
310 .xword 0x28292a2b2c2d2e2f
311 .xword 0x3031323334353637
312 .xword 0x38393a3b3c3d3e3f
313 .xword 0x4041424344454647
314 .xword 0x48494a4b4c4d4e4f
315 .xword 0x5051525354555657
316 .xword 0x58595a5b5c5d5e5f
317 .xword 0x6061626364656667
318 .xword 0x68696a6b6c6d6e6f
319 .xword 0x7071727374757677
320 .xword 0x78797a7b7c7d7e7f
321 .xword 0x8081828384858687
322 .xword 0x88898a8b8c8d8e8f
323 .xword 0x9091929394959697
324 .xword 0x98999a9b9c9d9e9f
325 .xword 0xa0a1a2a3a4a5a6a7
326 .xword 0xa8a9aaabacadaeaf
327 .xword 0xb0b1b2b3b4b5b6b7
328 .xword 0xb8b9babbbcbdbebf
329 .xword 0xc0c1c2c3c4c5c6c7
330 .xword 0xc8c9cacbcccdcecf
331 .xword 0xd0d1d2d3d4d5d6d7
332 .xword 0xd8d9dadbdcdddedf
333 .xword 0xe0e1e2e3e4e5e6e7
334 .xword 0xe8e9eaebecedeeef
335 .xword 0xf0f1f2f3f4f5f6f7
336 .xword 0xf8f9fafbfcfdfeff
337
338 .xword 0x0001020304050607
339 .xword 0x08090a0b0c0d0e0f
340 .xword 0x1011121314151617
341 .xword 0x18191a1b1c1d1e1f
342 .xword 0x2021222324252627
343 .xword 0x28292a2b2c2d2e2f
344 .xword 0x3031323334353637
345 .xword 0x38393a3b3c3d3e3f
346 .xword 0x4041424344454647
347 .xword 0x48494a4b4c4d4e4f
348 .xword 0x5051525354555657
349 .xword 0x58595a5b5c5d5e5f
350 .xword 0x6061626364656667
351 .xword 0x68696a6b6c6d6e6f
352 .xword 0x7071727374757677
353 .xword 0x78797a7b7c7d7e7f
354 .xword 0x8081828384858687
355 .xword 0x88898a8b8c8d8e8f
356 .xword 0x9091929394959697
357 .xword 0x98999a9b9c9d9e9f
358 .xword 0xa0a1a2a3a4a5a6a7
359 .xword 0xa8a9aaabacadaeaf
360 .xword 0xb0b1b2b3b4b5b6b7
361 .xword 0xb8b9babbbcbdbebf
362 .xword 0xc0c1c2c3c4c5c6c7
363 .xword 0xc8c9cacbcccdcecf
364 .xword 0xd0d1d2d3d4d5d6d7
365 .xword 0xd8d9dadbdcdddedf
366 .xword 0xe0e1e2e3e4e5e6e7
367 .xword 0xe8e9eaebecedeeef
368 .xword 0xf0f1f2f3f4f5f6f7
369 .xword 0xf8f9fafbfcfdfeff
370
371 .xword 0x0001020304050607
372 .xword 0x08090a0b0c0d0e0f
373 .xword 0x1011121314151617
374 .xword 0x18191a1b1c1d1e1f
375 .xword 0x2021222324252627
376 .xword 0x28292a2b2c2d2e2f
377 .xword 0x3031323334353637
378 .xword 0x38393a3b3c3d3e3f
379 .xword 0x4041424344454647
380 .xword 0x48494a4b4c4d4e4f
381 .xword 0x5051525354555657
382 .xword 0x58595a5b5c5d5e5f
383 .xword 0x6061626364656667
384 .xword 0x68696a6b6c6d6e6f
385 .xword 0x7071727374757677
386 .xword 0x78797a7b7c7d7e7f
387 .xword 0x8081828384858687
388 .xword 0x88898a8b8c8d8e8f
389 .xword 0x9091929394959697
390 .xword 0x98999a9b9c9d9e9f
391 .xword 0xa0a1a2a3a4a5a6a7
392 .xword 0xa8a9aaabacadaeaf
393 .xword 0xb0b1b2b3b4b5b6b7
394 .xword 0xb8b9babbbcbdbebf
395 .xword 0xc0c1c2c3c4c5c6c7
396 .xword 0xc8c9cacbcccdcecf
397 .xword 0xd0d1d2d3d4d5d6d7
398 .xword 0xd8d9dadbdcdddedf
399 .xword 0xe0e1e2e3e4e5e6e7
400 .xword 0xe8e9eaebecedeeef
401 .xword 0xf0f1f2f3f4f5f6f7
402 .xword 0xf8f9fafbfcfdfeff
403
404 .xword 0x0001020304050607
405 .xword 0x08090a0b0c0d0e0f
406 .xword 0x1011121314151617
407 .xword 0x18191a1b1c1d1e1f
408 .xword 0x2021222324252627
409 .xword 0x28292a2b2c2d2e2f
410 .xword 0x3031323334353637
411 .xword 0x38393a3b3c3d3e3f
412 .xword 0x4041424344454647
413 .xword 0x48494a4b4c4d4e4f
414 .xword 0x5051525354555657
415 .xword 0x58595a5b5c5d5e5f
416 .xword 0x6061626364656667
417 .xword 0x68696a6b6c6d6e6f
418 .xword 0x7071727374757677
419 .xword 0x78797a7b7c7d7e7f
420 .xword 0x8081828384858687
421 .xword 0x88898a8b8c8d8e8f
422 .xword 0x9091929394959697
423 .xword 0x98999a9b9c9d9e9f
424 .xword 0xa0a1a2a3a4a5a6a7
425 .xword 0xa8a9aaabacadaeaf
426 .xword 0xb0b1b2b3b4b5b6b7
427 .xword 0xb8b9babbbcbdbebf
428 .xword 0xc0c1c2c3c4c5c6c7
429 .xword 0xc8c9cacbcccdcecf
430 .xword 0xd0d1d2d3d4d5d6d7
431 .xword 0xd8d9dadbdcdddedf
432 .xword 0xe0e1e2e3e4e5e6e7
433 .xword 0xe8e9eaebecedeeef
434 .xword 0xf0f1f2f3f4f5f6f7
435 .xword 0xf8f9fafbfcfdfeff
436
437 .xword 0x0001020304050607
438 .xword 0x08090a0b0c0d0e0f
439 .xword 0x1011121314151617
440 .xword 0x18191a1b1c1d1e1f
441 .xword 0x2021222324252627
442 .xword 0x28292a2b2c2d2e2f
443 .xword 0x3031323334353637
444 .xword 0x38393a3b3c3d3e3f
445 .xword 0x4041424344454647
446 .xword 0x48494a4b4c4d4e4f
447 .xword 0x5051525354555657
448 .xword 0x58595a5b5c5d5e5f
449 .xword 0x6061626364656667
450 .xword 0x68696a6b6c6d6e6f
451 .xword 0x7071727374757677
452 .xword 0x78797a7b7c7d7e7f
453 .xword 0x8081828384858687
454 .xword 0x88898a8b8c8d8e8f
455 .xword 0x9091929394959697
456 .xword 0x98999a9b9c9d9e9f
457 .xword 0xa0a1a2a3a4a5a6a7
458 .xword 0xa8a9aaabacadaeaf
459 .xword 0xb0b1b2b3b4b5b6b7
460 .xword 0xb8b9babbbcbdbebf
461 .xword 0xc0c1c2c3c4c5c6c7
462 .xword 0xc8c9cacbcccdcecf
463 .xword 0xd0d1d2d3d4d5d6d7
464 .xword 0xd8d9dadbdcdddedf
465 .xword 0xe0e1e2e3e4e5e6e7
466 .xword 0xe8e9eaebecedeeef
467 .xword 0xf0f1f2f3f4f5f6f7
468 .xword 0xf8f9fafbfcfdfeff
469
470 .xword 0x0001020304050607
471 .xword 0x08090a0b0c0d0e0f
472 .xword 0x1011121314151617
473 .xword 0x18191a1b1c1d1e1f
474 .xword 0x2021222324252627
475 .xword 0x28292a2b2c2d2e2f
476 .xword 0x3031323334353637
477 .xword 0x38393a3b3c3d3e3f
478 .xword 0x4041424344454647
479 .xword 0x48494a4b4c4d4e4f
480 .xword 0x5051525354555657
481 .xword 0x58595a5b5c5d5e5f
482 .xword 0x6061626364656667
483 .xword 0x68696a6b6c6d6e6f
484 .xword 0x7071727374757677
485 .xword 0x78797a7b7c7d7e7f
486 .xword 0x8081828384858687
487 .xword 0x88898a8b8c8d8e8f
488 .xword 0x9091929394959697
489 .xword 0x98999a9b9c9d9e9f
490 .xword 0xa0a1a2a3a4a5a6a7
491 .xword 0xa8a9aaabacadaeaf
492 .xword 0xb0b1b2b3b4b5b6b7
493 .xword 0xb8b9babbbcbdbebf
494 .xword 0xc0c1c2c3c4c5c6c7
495 .xword 0xc8c9cacbcccdcecf
496 .xword 0xd0d1d2d3d4d5d6d7
497 .xword 0xd8d9dadbdcdddedf
498 .xword 0xe0e1e2e3e4e5e6e7
499 .xword 0xe8e9eaebecedeeef
500 .xword 0xf0f1f2f3f4f5f6f7
501 .xword 0xf8f9fafbfcfdfeff
502
503 .xword 0x0001020304050607
504 .xword 0x08090a0b0c0d0e0f
505 .xword 0x1011121314151617
506 .xword 0x18191a1b1c1d1e1f
507 .xword 0x2021222324252627
508 .xword 0x28292a2b2c2d2e2f
509 .xword 0x3031323334353637
510 .xword 0x38393a3b3c3d3e3f
511 .xword 0x4041424344454647
512 .xword 0x48494a4b4c4d4e4f
513 .xword 0x5051525354555657
514 .xword 0x58595a5b5c5d5e5f
515 .xword 0x6061626364656667
516 .xword 0x68696a6b6c6d6e6f
517 .xword 0x7071727374757677
518 .xword 0x78797a7b7c7d7e7f
519 .xword 0x8081828384858687
520 .xword 0x88898a8b8c8d8e8f
521 .xword 0x9091929394959697
522 .xword 0x98999a9b9c9d9e9f
523 .xword 0xa0a1a2a3a4a5a6a7
524 .xword 0xa8a9aaabacadaeaf
525 .xword 0xb0b1b2b3b4b5b6b7
526 .xword 0xb8b9babbbcbdbebf
527 .xword 0xc0c1c2c3c4c5c6c7
528 .xword 0xc8c9cacbcccdcecf
529 .xword 0xd0d1d2d3d4d5d6d7
530 .xword 0xd8d9dadbdcdddedf
531 .xword 0xe0e1e2e3e4e5e6e7
532 .xword 0xe8e9eaebecedeeef
533 .xword 0xf0f1f2f3f4f5f6f7
534 .xword 0xf8f9fafbfcfdfeff
535
536 .xword 0x0001020304050607
537 .xword 0x08090a0b0c0d0e0f
538 .xword 0x1011121314151617
539 .xword 0x18191a1b1c1d1e1f
540 .xword 0x2021222324252627
541 .xword 0x28292a2b2c2d2e2f
542 .xword 0x3031323334353637
543 .xword 0x38393a3b3c3d3e3f
544 .xword 0x4041424344454647
545 .xword 0x48494a4b4c4d4e4f
546 .xword 0x5051525354555657
547 .xword 0x58595a5b5c5d5e5f
548 .xword 0x6061626364656667
549 .xword 0x68696a6b6c6d6e6f
550 .xword 0x7071727374757677
551 .xword 0x78797a7b7c7d7e7f
552 .xword 0x8081828384858687
553 .xword 0x88898a8b8c8d8e8f
554 .xword 0x9091929394959697
555 .xword 0x98999a9b9c9d9e9f
556 .xword 0xa0a1a2a3a4a5a6a7
557 .xword 0xa8a9aaabacadaeaf
558 .xword 0xb0b1b2b3b4b5b6b7
559 .xword 0xb8b9babbbcbdbebf
560 .xword 0xc0c1c2c3c4c5c6c7
561 .xword 0xc8c9cacbcccdcecf
562 .xword 0xd0d1d2d3d4d5d6d7
563 .xword 0xd8d9dadbdcdddedf
564 .xword 0xe0e1e2e3e4e5e6e7
565 .xword 0xe8e9eaebecedeeef
566 .xword 0xf0f1f2f3f4f5f6f7
567 .xword 0xf8f9fafbfcfdfeff
568
569 .xword 0x0001020304050607
570 .xword 0x08090a0b0c0d0e0f
571 .xword 0x1011121314151617
572 .xword 0x18191a1b1c1d1e1f
573 .xword 0x2021222324252627
574 .xword 0x28292a2b2c2d2e2f
575 .xword 0x3031323334353637
576 .xword 0x38393a3b3c3d3e3f
577 .xword 0x4041424344454647
578 .xword 0x48494a4b4c4d4e4f
579 .xword 0x5051525354555657
580 .xword 0x58595a5b5c5d5e5f
581 .xword 0x6061626364656667
582 .xword 0x68696a6b6c6d6e6f
583 .xword 0x7071727374757677
584 .xword 0x78797a7b7c7d7e7f
585 .xword 0x8081828384858687
586 .xword 0x88898a8b8c8d8e8f
587 .xword 0x9091929394959697
588 .xword 0x98999a9b9c9d9e9f
589 .xword 0xa0a1a2a3a4a5a6a7
590 .xword 0xa8a9aaabacadaeaf
591 .xword 0xb0b1b2b3b4b5b6b7
592 .xword 0xb8b9babbbcbdbebf
593 .xword 0xc0c1c2c3c4c5c6c7
594 .xword 0xc8c9cacbcccdcecf
595 .xword 0xd0d1d2d3d4d5d6d7
596 .xword 0xd8d9dadbdcdddedf
597 .xword 0xe0e1e2e3e4e5e6e7
598 .xword 0xe8e9eaebecedeeef
599 .xword 0xf0f1f2f3f4f5f6f7
600 .xword 0xf8f9fafbfcfdfeff
601
602 .xword 0x0001020304050607
603 .xword 0x08090a0b0c0d0e0f
604 .xword 0x1011121314151617
605 .xword 0x18191a1b1c1d1e1f
606 .xword 0x2021222324252627
607 .xword 0x28292a2b2c2d2e2f
608 .xword 0x3031323334353637
609 .xword 0x38393a3b3c3d3e3f
610 .xword 0x4041424344454647
611 .xword 0x48494a4b4c4d4e4f
612 .xword 0x5051525354555657
613 .xword 0x58595a5b5c5d5e5f
614 .xword 0x6061626364656667
615 .xword 0x68696a6b6c6d6e6f
616 .xword 0x7071727374757677
617 .xword 0x78797a7b7c7d7e7f
618 .xword 0x8081828384858687
619 .xword 0x88898a8b8c8d8e8f
620 .xword 0x9091929394959697
621 .xword 0x98999a9b9c9d9e9f
622 .xword 0xa0a1a2a3a4a5a6a7
623 .xword 0xa8a9aaabacadaeaf
624 .xword 0xb0b1b2b3b4b5b6b7
625 .xword 0xb8b9babbbcbdbebf
626 .xword 0xc0c1c2c3c4c5c6c7
627 .xword 0xc8c9cacbcccdcecf
628 .xword 0xd0d1d2d3d4d5d6d7
629 .xword 0xd8d9dadbdcdddedf
630 .xword 0xe0e1e2e3e4e5e6e7
631 .xword 0xe8e9eaebecedeeef
632 .xword 0xf0f1f2f3f4f5f6f7
633 .xword 0xf8f9fafbfcfdfeff
634
635 .xword 0x0001020304050607
636 .xword 0x08090a0b0c0d0e0f
637 .xword 0x1011121314151617
638 .xword 0x18191a1b1c1d1e1f
639 .xword 0x2021222324252627
640 .xword 0x28292a2b2c2d2e2f
641 .xword 0x3031323334353637
642 .xword 0x38393a3b3c3d3e3f
643 .xword 0x4041424344454647
644 .xword 0x48494a4b4c4d4e4f
645 .xword 0x5051525354555657
646 .xword 0x58595a5b5c5d5e5f
647 .xword 0x6061626364656667
648 .xword 0x68696a6b6c6d6e6f
649 .xword 0x7071727374757677
650 .xword 0x78797a7b7c7d7e7f
651 .xword 0x8081828384858687
652 .xword 0x88898a8b8c8d8e8f
653 .xword 0x9091929394959697
654 .xword 0x98999a9b9c9d9e9f
655 .xword 0xa0a1a2a3a4a5a6a7
656 .xword 0xa8a9aaabacadaeaf
657 .xword 0xb0b1b2b3b4b5b6b7
658 .xword 0xb8b9babbbcbdbebf
659 .xword 0xc0c1c2c3c4c5c6c7
660 .xword 0xc8c9cacbcccdcecf
661 .xword 0xd0d1d2d3d4d5d6d7
662 .xword 0xd8d9dadbdcdddedf
663 .xword 0xe0e1e2e3e4e5e6e7
664 .xword 0xe8e9eaebecedeeef
665 .xword 0xf0f1f2f3f4f5f6f7
666 .xword 0xf8f9fafbfcfdfeff
667
668 .xword 0x0001020304050607
669 .xword 0x08090a0b0c0d0e0f
670 .xword 0x1011121314151617
671 .xword 0x18191a1b1c1d1e1f
672 .xword 0x2021222324252627
673 .xword 0x28292a2b2c2d2e2f
674 .xword 0x3031323334353637
675 .xword 0x38393a3b3c3d3e3f
676 .xword 0x4041424344454647
677 .xword 0x48494a4b4c4d4e4f
678 .xword 0x5051525354555657
679 .xword 0x58595a5b5c5d5e5f
680 .xword 0x6061626364656667
681 .xword 0x68696a6b6c6d6e6f
682 .xword 0x7071727374757677
683 .xword 0x78797a7b7c7d7e7f
684 .xword 0x8081828384858687
685 .xword 0x88898a8b8c8d8e8f
686 .xword 0x9091929394959697
687 .xword 0x98999a9b9c9d9e9f
688 .xword 0xa0a1a2a3a4a5a6a7
689 .xword 0xa8a9aaabacadaeaf
690 .xword 0xb0b1b2b3b4b5b6b7
691 .xword 0xb8b9babbbcbdbebf
692 .xword 0xc0c1c2c3c4c5c6c7
693 .xword 0xc8c9cacbcccdcecf
694 .xword 0xd0d1d2d3d4d5d6d7
695 .xword 0xd8d9dadbdcdddedf
696 .xword 0xe0e1e2e3e4e5e6e7
697 .xword 0xe8e9eaebecedeeef
698 .xword 0xf0f1f2f3f4f5f6f7
699 .xword 0xf8f9fafbfcfdfeff
700
701 .xword 0x0001020304050607
702 .xword 0x08090a0b0c0d0e0f
703 .xword 0x1011121314151617
704 .xword 0x18191a1b1c1d1e1f
705 .xword 0x2021222324252627
706 .xword 0x28292a2b2c2d2e2f
707 .xword 0x3031323334353637
708 .xword 0x38393a3b3c3d3e3f
709 .xword 0x4041424344454647
710 .xword 0x48494a4b4c4d4e4f
711 .xword 0x5051525354555657
712 .xword 0x58595a5b5c5d5e5f
713 .xword 0x6061626364656667
714 .xword 0x68696a6b6c6d6e6f
715 .xword 0x7071727374757677
716 .xword 0x78797a7b7c7d7e7f
717 .xword 0x8081828384858687
718 .xword 0x88898a8b8c8d8e8f
719 .xword 0x9091929394959697
720 .xword 0x98999a9b9c9d9e9f
721 .xword 0xa0a1a2a3a4a5a6a7
722 .xword 0xa8a9aaabacadaeaf
723 .xword 0xb0b1b2b3b4b5b6b7
724 .xword 0xb8b9babbbcbdbebf
725 .xword 0xc0c1c2c3c4c5c6c7
726 .xword 0xc8c9cacbcccdcecf
727 .xword 0xd0d1d2d3d4d5d6d7
728 .xword 0xd8d9dadbdcdddedf
729 .xword 0xe0e1e2e3e4e5e6e7
730 .xword 0xe8e9eaebecedeeef
731 .xword 0xf0f1f2f3f4f5f6f7
732 .xword 0xf8f9fafbfcfdfeff
733
734 .xword 0x0001020304050607
735 .xword 0x08090a0b0c0d0e0f
736 .xword 0x1011121314151617
737 .xword 0x18191a1b1c1d1e1f
738 .xword 0x2021222324252627
739 .xword 0x28292a2b2c2d2e2f
740 .xword 0x3031323334353637
741 .xword 0x38393a3b3c3d3e3f
742 .xword 0x4041424344454647
743 .xword 0x48494a4b4c4d4e4f
744 .xword 0x5051525354555657
745 .xword 0x58595a5b5c5d5e5f
746 .xword 0x6061626364656667
747 .xword 0x68696a6b6c6d6e6f
748 .xword 0x7071727374757677
749 .xword 0x78797a7b7c7d7e7f
750 .xword 0x8081828384858687
751 .xword 0x88898a8b8c8d8e8f
752 .xword 0x9091929394959697
753 .xword 0x98999a9b9c9d9e9f
754 .xword 0xa0a1a2a3a4a5a6a7
755 .xword 0xa8a9aaabacadaeaf
756 .xword 0xb0b1b2b3b4b5b6b7
757 .xword 0xb8b9babbbcbdbebf
758 .xword 0xc0c1c2c3c4c5c6c7
759 .xword 0xc8c9cacbcccdcecf
760 .xword 0xd0d1d2d3d4d5d6d7
761 .xword 0xd8d9dadbdcdddedf
762 .xword 0xe0e1e2e3e4e5e6e7
763 .xword 0xe8e9eaebecedeeef
764 .xword 0xf0f1f2f3f4f5f6f7
765 .xword 0xf8f9fafbfcfdfeff
766
767 .xword 0x0001020304050607
768 .xword 0x08090a0b0c0d0e0f
769 .xword 0x1011121314151617
770 .xword 0x18191a1b1c1d1e1f
771 .xword 0x2021222324252627
772 .xword 0x28292a2b2c2d2e2f
773 .xword 0x3031323334353637
774 .xword 0x38393a3b3c3d3e3f
775 .xword 0x4041424344454647
776 .xword 0x48494a4b4c4d4e4f
777 .xword 0x5051525354555657
778 .xword 0x58595a5b5c5d5e5f
779 .xword 0x6061626364656667
780 .xword 0x68696a6b6c6d6e6f
781 .xword 0x7071727374757677
782 .xword 0x78797a7b7c7d7e7f
783 .xword 0x8081828384858687
784 .xword 0x88898a8b8c8d8e8f
785 .xword 0x9091929394959697
786 .xword 0x98999a9b9c9d9e9f
787 .xword 0xa0a1a2a3a4a5a6a7
788 .xword 0xa8a9aaabacadaeaf
789 .xword 0xb0b1b2b3b4b5b6b7
790 .xword 0xb8b9babbbcbdbebf
791 .xword 0xc0c1c2c3c4c5c6c7
792 .xword 0xc8c9cacbcccdcecf
793 .xword 0xd0d1d2d3d4d5d6d7
794 .xword 0xd8d9dadbdcdddedf
795 .xword 0xe0e1e2e3e4e5e6e7
796 .xword 0xe8e9eaebecedeeef
797 .xword 0xf0f1f2f3f4f5f6f7
798 .xword 0xf8f9fafbfcfdfeff
799
800 .xword 0x0001020304050607
801 .xword 0x08090a0b0c0d0e0f
802 .xword 0x1011121314151617
803 .xword 0x18191a1b1c1d1e1f
804 .xword 0x2021222324252627
805 .xword 0x28292a2b2c2d2e2f
806 .xword 0x3031323334353637
807 .xword 0x38393a3b3c3d3e3f
808 .xword 0x4041424344454647
809 .xword 0x48494a4b4c4d4e4f
810 .xword 0x5051525354555657
811 .xword 0x58595a5b5c5d5e5f
812 .xword 0x6061626364656667
813 .xword 0x68696a6b6c6d6e6f
814 .xword 0x7071727374757677
815 .xword 0x78797a7b7c7d7e7f
816 .xword 0x8081828384858687
817 .xword 0x88898a8b8c8d8e8f
818 .xword 0x9091929394959697
819 .xword 0x98999a9b9c9d9e9f
820 .xword 0xa0a1a2a3a4a5a6a7
821 .xword 0xa8a9aaabacadaeaf
822 .xword 0xb0b1b2b3b4b5b6b7
823 .xword 0xb8b9babbbcbdbebf
824 .xword 0xc0c1c2c3c4c5c6c7
825 .xword 0xc8c9cacbcccdcecf
826 .xword 0xd0d1d2d3d4d5d6d7
827 .xword 0xd8d9dadbdcdddedf
828 .xword 0xe0e1e2e3e4e5e6e7
829 .xword 0xe8e9eaebecedeeef
830 .xword 0xf0f1f2f3f4f5f6f7
831 .xword 0xf8f9fafbfcfdfeff
832
833
834
835
836/************************************************************************
837 IOMMU TTE start
838 TTE Format:
83963: 48 DEV KEY - set to 0
84047: 39 reserved - set to 0
84138: 13 DATA PA - set to VA for VA=RA
84212: 7 DATA_SOFT - set to 0
8436: 5 reserved - set to 0
8445: 3 FNM MASK - set to 0
8452: 2 KEY VALID - set to 0
8461: 1 DATA_W - set to 1
8470: 0 DATA_V - set to 1
848************************************************************************/
849
850SECTION .DATA2 DATA_VA=IOMMU_TTE_ADDR
851attr_data {
852 Name = .DATA2,
853 hypervisor,
854 compressimage
855}
856
857.data
858 .xword 0x0000000000000003
859 .xword 0x0000000000010003
860 .xword 0x0000000000020003
861 .xword 0x0000000000030003
862 .xword 0x0000000000040003
863 .xword 0x0000000000050003
864 .xword 0x0000000000060003
865 .xword 0x0000000000070003
866 .xword 0x0000000000080003
867 .xword 0x0000000000090003
868 .xword 0x00000000000a0003
869 .xword 0x00000000000b0003
870 .xword 0x00000000000c0003
871 .xword 0x00000000000d0003
872 .xword 0x00000000000e0003
873 .xword 0x00000000000f0003
874
875 .xword 0x0000000000100003
876 .xword 0x0000000000110003
877 .xword 0x0000000000120003
878 .xword 0x0000000000130003
879 .xword 0x0000000000140003
880 .xword 0x0000000000150003
881 .xword 0x0000000000160003
882 .xword 0x0000000000170003
883 .xword 0x0000000000180003
884 .xword 0x0000000000190003
885 .xword 0x00000000001a0003
886 .xword 0x00000000001b0003
887 .xword 0x00000000001c0003
888 .xword 0x00000000001d0003
889 .xword 0x00000000001e0003
890 .xword 0x00000000001f0003
891
892 .xword 0x0000000000200003
893 .xword 0x0000000000210003
894 .xword 0x0000000000220003
895 .xword 0x0000000000230003
896 .xword 0x0000000000240003
897 .xword 0x0000000000250003
898 .xword 0x0000000000260003
899 .xword 0x0000000000270003
900 .xword 0x0000000000280003
901 .xword 0x0000000000290003
902 .xword 0x00000000002a0003
903 .xword 0x00000000002b0003
904 .xword 0x00000000002c0003
905 .xword 0x00000000002d0003
906 .xword 0x00000000002e0003
907 .xword 0x00000000002f0003
908
909 .xword 0x0000000000300003
910 .xword 0x0000000000310003
911 .xword 0x0000000000320003
912 .xword 0x0000000000330003
913 .xword 0x0000000000340003
914 .xword 0x0000000000350003
915 .xword 0x0000000000360003
916 .xword 0x0000000000370003
917 .xword 0x0000000000380003
918 .xword 0x0000000000390003
919 .xword 0x00000000003a0003
920 .xword 0x00000000003b0003
921 .xword 0x00000000003c0003
922 .xword 0x00000000003d0003
923 .xword 0x00000000003e0003
924 .xword 0x00000000003f0003
925
926 .xword 0x0000000000400003
927 .xword 0x0000000000410003
928 .xword 0x0000000000420003
929 .xword 0x0000000000430003
930 .xword 0x0000000000440003
931 .xword 0x0000000000450003
932 .xword 0x0000000000460003
933 .xword 0x0000000000470003
934 .xword 0x0000000000480003
935 .xword 0x0000000000490003
936 .xword 0x00000000004a0003
937 .xword 0x00000000004b0003
938 .xword 0x00000000004c0003
939 .xword 0x00000000004d0003
940 .xword 0x00000000004e0003
941 .xword 0x00000000004f0003
942
943 .xword 0x0000000000500003
944 .xword 0x0000000000510003
945 .xword 0x0000000000520003
946 .xword 0x0000000000530003
947 .xword 0x0000000000540003
948 .xword 0x0000000000550003
949 .xword 0x0000000000560003
950 .xword 0x0000000000570003
951 .xword 0x0000000000580003
952 .xword 0x0000000000590003
953 .xword 0x00000000005a0003
954 .xword 0x00000000005b0003
955 .xword 0x00000000005c0003
956 .xword 0x00000000005d0003
957 .xword 0x00000000005e0003
958 .xword 0x00000000005f0003
959
960 .xword 0x0000000000600003
961 .xword 0x0000000000610003
962 .xword 0x0000000000620003
963 .xword 0x0000000000630003
964 .xword 0x0000000000640003
965 .xword 0x0000000000650003
966 .xword 0x0000000000660003
967 .xword 0x0000000000670003
968 .xword 0x0000000000680003
969 .xword 0x0000000000690003
970 .xword 0x00000000006a0003
971 .xword 0x00000000006b0003
972 .xword 0x00000000006c0003
973 .xword 0x00000000006d0003
974 .xword 0x00000000006e0003
975 .xword 0x00000000006f0003
976
977 .xword 0x0000000000700003
978 .xword 0x0000000000710003
979 .xword 0x0000000000720003
980 .xword 0x0000000000730003
981 .xword 0x0000000000740003
982 .xword 0x0000000000750003
983 .xword 0x0000000000760003
984 .xword 0x0000000000770003
985 .xword 0x0000000000780003
986 .xword 0x0000000000790003
987 .xword 0x00000000007a0003
988 .xword 0x00000000007b0003
989 .xword 0x00000000007c0003
990 .xword 0x00000000007d0003
991 .xword 0x00000000007e0003
992 .xword 0x00000000007f0003
993
994 .xword 0x0000000000800003
995 .xword 0x0000000000810003
996 .xword 0x0000000000820003
997 .xword 0x0000000000830003
998 .xword 0x0000000000840003
999 .xword 0x0000000000850003
1000 .xword 0x0000000000860003
1001 .xword 0x0000000000870003
1002 .xword 0x0000000000880003
1003 .xword 0x0000000000890003
1004 .xword 0x00000000008a0003
1005 .xword 0x00000000008b0003
1006 .xword 0x00000000008c0003
1007 .xword 0x00000000008d0003
1008 .xword 0x00000000008e0003
1009 .xword 0x00000000008f0003
1010
1011
1012/************************************************************************/