2 * Copyright (c) 2003 Apple Computer, Inc. All rights reserved.
4 * @APPLE_LICENSE_HEADER_START@
6 * Copyright (c) 1999-2003 Apple Computer, Inc. All Rights Reserved.
8 * This file contains Original Code and/or Modifications of Original Code
9 * as defined in and that are subject to the Apple Public Source License
10 * Version 2.0 (the 'License'). You may not use this file except in
11 * compliance with the License. Please obtain a copy of the License at
12 * http://www.opensource.apple.com/apsl/ and read it before using this
15 * The Original Code and all software distributed under the License are
16 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
17 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
18 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
20 * Please see the License for the specific language governing rights and
21 * limitations under the License.
23 * @APPLE_LICENSE_HEADER_END@
27 #include <ppc/chud/chud_spr.h>
29 #include <mach/kern_return.h>
33 .globl EXT(chudxnu_mfsrr0_64)
34 EXT(chudxnu_mfsrr0_64):
35 mfspr r5,chud_ppc_srr0
40 .globl EXT(chudxnu_mfsrr1_64)
41 EXT(chudxnu_mfsrr1_64):
42 mfspr r5,chud_ppc_srr1
47 .globl EXT(chudxnu_mfdar_64)
48 EXT(chudxnu_mfdar_64):
54 .globl EXT(chudxnu_mfsdr1_64)
55 EXT(chudxnu_mfsdr1_64):
56 mfspr r5,chud_ppc_sdr1
61 .globl EXT(chudxnu_mfsprg0_64)
62 EXT(chudxnu_mfsprg0_64):
63 mfspr r5,chud_ppc_sprg0
68 .globl EXT(chudxnu_mfsprg1_64)
69 EXT(chudxnu_mfsprg1_64):
70 mfspr r5,chud_ppc_sprg1
75 .globl EXT(chudxnu_mfsprg2_64)
76 EXT(chudxnu_mfsprg2_64):
77 mfspr r5,chud_ppc_sprg2
82 .globl EXT(chudxnu_mfsprg3_64)
83 EXT(chudxnu_mfsprg3_64):
84 mfspr r5,chud_ppc_sprg3
89 .globl EXT(chudxnu_mfasr_64)
90 EXT(chudxnu_mfasr_64):
91 mfspr r5,chud_ppc64_asr
96 .globl EXT(chudxnu_mfdabr_64)
97 EXT(chudxnu_mfdabr_64):
98 mfspr r5,chud_ppc_dabr
103 .globl EXT(chudxnu_mfhid0_64)
104 EXT(chudxnu_mfhid0_64):
105 mfspr r5,chud_970_hid0
110 .globl EXT(chudxnu_mfhid1_64)
111 EXT(chudxnu_mfhid1_64):
112 mfspr r5,chud_970_hid1
117 .globl EXT(chudxnu_mfhid4_64)
118 EXT(chudxnu_mfhid4_64):
119 mfspr r5,chud_970_hid4
124 .globl EXT(chudxnu_mfhid5_64)
125 EXT(chudxnu_mfhid5_64):
126 mfspr r5,chud_970_hid5
131 .globl EXT(chudxnu_mfmmcr0_64)
132 EXT(chudxnu_mfmmcr0_64):
133 mfspr r5,chud_970_mmcr0
138 .globl EXT(chudxnu_mfmmcr1_64)
139 EXT(chudxnu_mfmmcr1_64):
140 mfspr r5,chud_970_mmcr1
145 .globl EXT(chudxnu_mfmmcra_64)
146 EXT(chudxnu_mfmmcra_64):
147 mfspr r5,chud_970_mmcra
152 .globl EXT(chudxnu_mfsiar_64)
153 EXT(chudxnu_mfsiar_64):
154 mfspr r5,chud_970_siar
159 .globl EXT(chudxnu_mfsdar_64)
160 EXT(chudxnu_mfsdar_64):
161 mfspr r5,chud_970_sdar
166 .globl EXT(chudxnu_mfimc_64)
167 EXT(chudxnu_mfimc_64):
168 mfspr r5,chud_970_imc
173 .globl EXT(chudxnu_mfrmor_64)
174 EXT(chudxnu_mfrmor_64):
175 mfspr r5,chud_970_rmor
180 .globl EXT(chudxnu_mfhrmor_64)
181 EXT(chudxnu_mfhrmor_64):
182 mfspr r5,chud_970_hrmor
187 .globl EXT(chudxnu_mfhior_64)
188 EXT(chudxnu_mfhior_64):
189 mfspr r5,chud_970_hior
194 .globl EXT(chudxnu_mflpidr_64)
195 EXT(chudxnu_mflpidr_64):
196 mfspr r5,chud_970_lpidr
201 .globl EXT(chudxnu_mflpcr_64)
202 EXT(chudxnu_mflpcr_64):
203 mfspr r5,chud_970_lpcr
208 .globl EXT(chudxnu_mfdabrx_64)
209 EXT(chudxnu_mfdabrx_64):
210 mfspr r5,chud_970_dabrx
215 .globl EXT(chudxnu_mfhsprg0_64)
216 EXT(chudxnu_mfhsprg0_64):
217 mfspr r5,chud_970_hsprg0
222 .globl EXT(chudxnu_mfhsprg1_64)
223 EXT(chudxnu_mfhsprg1_64):
224 mfspr r5,chud_970_hsprg1
229 .globl EXT(chudxnu_mfhsrr0_64)
230 EXT(chudxnu_mfhsrr0_64):
231 mfspr r5,chud_970_hsrr0
236 .globl EXT(chudxnu_mfhsrr1_64)
237 EXT(chudxnu_mfhsrr1_64):
238 mfspr r5,chud_970_hsrr1
243 .globl EXT(chudxnu_mfhdec_64)
244 EXT(chudxnu_mfhdec_64):
245 mfspr r5,chud_970_hdec
250 .globl EXT(chudxnu_mftrig0_64)
251 EXT(chudxnu_mftrig0_64):
252 mfspr r5,chud_970_trig0
257 .globl EXT(chudxnu_mftrig1_64)
258 EXT(chudxnu_mftrig1_64):
259 mfspr r5,chud_970_trig1
264 .globl EXT(chudxnu_mftrig2_64)
265 EXT(chudxnu_mftrig2_64):
266 mfspr r5,chud_970_trig2
271 .globl EXT(chudxnu_mfaccr_64)
272 EXT(chudxnu_mfaccr_64):
273 mfspr r5,chud_ppc64_accr
278 .globl EXT(chudxnu_mfscomc_64)
279 EXT(chudxnu_mfscomc_64):
280 mfspr r5,chud_970_scomc
285 .globl EXT(chudxnu_mfscomd_64)
286 EXT(chudxnu_mfscomd_64):
287 mfspr r5,chud_970_scomd
292 .globl EXT(chudxnu_mtsrr0_64)
293 EXT(chudxnu_mtsrr0_64):
295 mtspr chud_ppc_srr0,r5
299 .globl EXT(chudxnu_mtsrr1_64)
300 EXT(chudxnu_mtsrr1_64):
302 mtspr chud_ppc_srr1,r5
306 .globl EXT(chudxnu_mtdar_64)
307 EXT(chudxnu_mtdar_64):
309 mtspr chud_ppc_dar,r5
313 .globl EXT(chudxnu_mtsdr1_64)
314 EXT(chudxnu_mtsdr1_64):
316 mtspr chud_ppc_sdr1,r5
320 .globl EXT(chudxnu_mtsprg0_64)
321 EXT(chudxnu_mtsprg0_64):
323 mtspr chud_ppc_sprg0,r5
327 .globl EXT(chudxnu_mtsprg1_64)
328 EXT(chudxnu_mtsprg1_64):
330 mtspr chud_ppc_sprg1,r5
334 .globl EXT(chudxnu_mtsprg2_64)
335 EXT(chudxnu_mtsprg2_64):
337 mtspr chud_ppc_sprg2,r5
341 .globl EXT(chudxnu_mtsprg3_64)
342 EXT(chudxnu_mtsprg3_64):
344 mtspr chud_ppc_sprg3,r5
348 .globl EXT(chudxnu_mtasr_64)
349 EXT(chudxnu_mtasr_64):
351 mtspr chud_ppc64_asr,r5
355 .globl EXT(chudxnu_mtdabr_64)
356 EXT(chudxnu_mtdabr_64):
358 mtspr chud_ppc_dabr,r5
362 .globl EXT(chudxnu_mthid0_64)
363 EXT(chudxnu_mthid0_64):
366 mtspr chud_970_hid0,r5
367 mfspr r5,chud_970_hid0 /* syncronization requirements */
368 mfspr r5,chud_970_hid0
369 mfspr r5,chud_970_hid0
370 mfspr r5,chud_970_hid0
371 mfspr r5,chud_970_hid0
372 mfspr r5,chud_970_hid0
376 .globl EXT(chudxnu_mthid1_64)
377 EXT(chudxnu_mthid1_64):
379 mtspr chud_970_hid1,r5 /* tell you twice */
380 mtspr chud_970_hid1,r5
385 .globl EXT(chudxnu_mthid4_64)
386 EXT(chudxnu_mthid4_64):
388 sync /* syncronization requirements */
389 mtspr chud_970_hid4,r5
394 .globl EXT(chudxnu_mthid5_64)
395 EXT(chudxnu_mthid5_64):
397 mtspr chud_970_hid5,r5
401 .globl EXT(chudxnu_mtmmcr0_64)
402 EXT(chudxnu_mtmmcr0_64):
404 mtspr chud_970_mmcr0,r5
408 .globl EXT(chudxnu_mtmmcr1_64)
409 EXT(chudxnu_mtmmcr1_64):
411 mtspr chud_970_mmcr1,r5
415 .globl EXT(chudxnu_mtmmcra_64)
416 EXT(chudxnu_mtmmcra_64):
418 mtspr chud_970_mmcra,r5
422 .globl EXT(chudxnu_mtsiar_64)
423 EXT(chudxnu_mtsiar_64):
425 mtspr chud_970_siar,r5
429 .globl EXT(chudxnu_mtsdar_64)
430 EXT(chudxnu_mtsdar_64):
432 mtspr chud_970_sdar,r5
436 .globl EXT(chudxnu_mtimc_64)
437 EXT(chudxnu_mtimc_64):
439 mtspr chud_970_imc,r5
443 .globl EXT(chudxnu_mtrmor_64)
444 EXT(chudxnu_mtrmor_64):
446 mtspr chud_970_rmor,r5
450 .globl EXT(chudxnu_mthrmor_64)
451 EXT(chudxnu_mthrmor_64):
453 mtspr chud_970_hrmor,r5
457 .globl EXT(chudxnu_mthior_64)
458 EXT(chudxnu_mthior_64):
460 mtspr chud_970_hior,r5
464 .globl EXT(chudxnu_mtlpidr_64)
465 EXT(chudxnu_mtlpidr_64):
467 mtspr chud_970_lpidr,r5
471 .globl EXT(chudxnu_mtlpcr_64)
472 EXT(chudxnu_mtlpcr_64):
474 mtspr chud_970_lpcr,r5
478 .globl EXT(chudxnu_mtdabrx_64)
479 EXT(chudxnu_mtdabrx_64):
481 mtspr chud_970_lpcr,r5
485 .globl EXT(chudxnu_mthsprg0_64)
486 EXT(chudxnu_mthsprg0_64):
488 mtspr chud_970_hsprg0,r5
492 .globl EXT(chudxnu_mthsprg1_64)
493 EXT(chudxnu_mthsprg1_64):
495 mtspr chud_970_hsprg1,r5
499 .globl EXT(chudxnu_mthsrr0_64)
500 EXT(chudxnu_mthsrr0_64):
502 mtspr chud_970_hsrr0,r5
506 .globl EXT(chudxnu_mthsrr1_64)
507 EXT(chudxnu_mthsrr1_64):
509 mtspr chud_970_hsrr1,r5
513 .globl EXT(chudxnu_mthdec_64)
514 EXT(chudxnu_mthdec_64):
516 mtspr chud_970_hdec,r5
520 .globl EXT(chudxnu_mttrig0_64)
521 EXT(chudxnu_mttrig0_64):
523 mtspr chud_970_trig0,r5
527 .globl EXT(chudxnu_mttrig1_64)
528 EXT(chudxnu_mttrig1_64):
530 mtspr chud_970_trig1,r5
534 .globl EXT(chudxnu_mttrig2_64)
535 EXT(chudxnu_mttrig2_64):
537 mtspr chud_970_trig2,r5
541 .globl EXT(chudxnu_mtaccr_64)
542 EXT(chudxnu_mtaccr_64):
544 mtspr chud_ppc64_accr,r5
548 .globl EXT(chudxnu_mtscomc_64)
549 EXT(chudxnu_mtscomc_64):
551 mtspr chud_970_scomc,r5
555 .globl EXT(chudxnu_mtscomd_64)
556 EXT(chudxnu_mtscomd_64):
558 mtspr chud_970_scomd,r5
561 .globl EXT(chudxnu_mfmsr_64)
562 EXT(chudxnu_mfmsr_64):
568 .globl EXT(chudxnu_mtmsr_64)
569 EXT(chudxnu_mtmsr_64):