36#define CPSR_MODE_USR 0x10
37#define CPSR_MODE_MASK 0x1f
42 __asm__
volatile(
"mrc p15, 0, %0, c1,c0,0" :
"=r"(val));
48 __asm__
volatile(
"mcr p15, 0, %0, c1,c0,0" ::
"r"(val));
49 __asm__
volatile(
"isb" :::
"memory");
55 __asm__
volatile(
"mrc p15, 0, %0, c1,c0,1" :
"=r"(val));
61 __asm__
volatile(
"mcr p15, 0, %0, c1,c0,1" ::
"r"(val));
62 __asm__
volatile(
"isb" :::
"memory");
68 __asm__
volatile(
"mrc p15, 0, %0, c1,c0,2" :
"=r"(val));
74 __asm__
volatile(
"mcr p15, 0, %0, c1,c0,2" ::
"r"(val));
75 __asm__
volatile(
"isb" :::
"memory");
81 __asm__
volatile(
"mrc p15, 0, %0, c2,c0,0" :
"=r"(val));
87 __asm__
volatile(
"mcr p15, 0, %0, c2,c0,0" ::
"r"(val));
88 __asm__
volatile(
"isb" :::
"memory");
94 __asm__
volatile(
"mrc p15, 0, %0, c2,c0,0" :
"=r"(val));
100 __asm__
volatile(
"mcr p15, 0, %0, c2,c0,0" ::
"r"(val));
101 __asm__
volatile(
"isb" :::
"memory");
107 __asm__
volatile(
"mrc p15, 0, %0, c2,c0,1" :
"=r"(val));
113 __asm__
volatile(
"mcr p15, 0, %0, c2,c0,1" ::
"r"(val));
114 __asm__
volatile(
"isb" :::
"memory");
120 __asm__
volatile(
"mrc p15, 0, %0, c2,c0,2" :
"=r"(val));
126 __asm__
volatile(
"mcr p15, 0, %0, c2,c0,2" ::
"r"(val));
127 __asm__
volatile(
"isb" :::
"memory");
133 __asm__
volatile(
"mrc p15, 0, %0, c3,c0,0" :
"=r"(val));
139 __asm__
volatile(
"mcr p15, 0, %0, c3,c0,0" ::
"r"(val));
140 __asm__
volatile(
"isb" :::
"memory");
146 __asm__
volatile(
"mrc p15, 0, %0, c5,c0,0" :
"=r"(val));
152 __asm__
volatile(
"mcr p15, 0, %0, c5,c0,0" ::
"r"(val));
153 __asm__
volatile(
"isb" :::
"memory");
159 __asm__
volatile(
"mrc p15, 0, %0, c5,c0,1" :
"=r"(val));
165 __asm__
volatile(
"mcr p15, 0, %0, c5,c0,1" ::
"r"(val));
166 __asm__
volatile(
"isb" :::
"memory");
172 __asm__
volatile(
"mrc p15, 0, %0, c6,c0,0" :
"=r"(val));
178 __asm__
volatile(
"mcr p15, 0, %0, c6,c0,0" ::
"r"(val));
179 __asm__
volatile(
"isb" :::
"memory");
185 __asm__
volatile(
"mrc p15, 0, %0, c6,c0,1" :
"=r"(val));
191 __asm__
volatile(
"mcr p15, 0, %0, c6,c0,1" ::
"r"(val));
192 __asm__
volatile(
"isb" :::
"memory");
198 __asm__
volatile(
"mrc p15, 0, %0, c6,c0,2" :
"=r"(val));
204 __asm__
volatile(
"mcr p15, 0, %0, c6,c0,2" ::
"r"(val));
205 __asm__
volatile(
"isb" :::
"memory");
211 __asm__
volatile(
"mrc p15, 0, %0, c13,c0,0" :
"=r"(val));
217 __asm__
volatile(
"mcr p15, 0, %0, c13,c0,0" ::
"r"(val));
218 __asm__
volatile(
"isb" :::
"memory");
224 __asm__
volatile(
"mrc p15, 0, %0, c13,c0,1" :
"=r"(val));
230 __asm__
volatile(
"mcr p15, 0, %0, c13,c0,1" ::
"r"(val));
231 __asm__
volatile(
"isb" :::
"memory");
237 __asm__
volatile(
"mrc p15, 0, %0, c13,c0,2" :
"=r"(val));
243 __asm__
volatile(
"mcr p15, 0, %0, c13,c0,2" ::
"r"(val));
244 __asm__
volatile(
"isb" :::
"memory");
250 __asm__
volatile(
"mrc p15, 0, %0, c13,c0,3" :
"=r"(val));
256 __asm__
volatile(
"mcr p15, 0, %0, c13,c0,3" ::
"r"(val));
257 __asm__
volatile(
"isb" :::
"memory");
263 __asm__
volatile(
"mrc p15, 0, %0, c13,c0,4" :
"=r"(val));
269 __asm__
volatile(
"mcr p15, 0, %0, c13,c0,4" ::
"r"(val));
270 __asm__
volatile(
"isb" :::
"memory");
276 __asm__
volatile(
"mrc p15, 0, %0, c0,c0,0" :
"=r"(val));
282 __asm__
volatile(
"mcr p15, 0, %0, c0,c0,0" ::
"r"(val));
283 __asm__
volatile(
"isb" :::
"memory");
289 __asm__
volatile(
"mrc p15, 0, %0, c0,c0,5" :
"=r"(val));
295 __asm__
volatile(
"mcr p15, 0, %0, c0,c0,5" ::
"r"(val));
296 __asm__
volatile(
"isb" :::
"memory");
302 __asm__
volatile(
"mrc p15, 0, %0, c12,c0,0" :
"=r"(val));
308 __asm__
volatile(
"mcr p15, 0, %0, c12,c0,0" ::
"r"(val));
309 __asm__
volatile(
"isb" :::
"memory");
315 __asm__
volatile(
"mrc p15, 4, %0, c15,c0,0" :
"=r"(val));
321 __asm__
volatile(
"mcr p15, 4, %0, c15,c0,0" ::
"r"(val));
322 __asm__
volatile(
"isb" :::
"memory");
328 __asm__
volatile(
"mrc p15, 0, %0, c7,c8,0" :
"=r"(val));
334 __asm__
volatile(
"mcr p15, 0, %0, c7,c8,0" ::
"r"(val));
335 __asm__
volatile(
"isb" :::
"memory");
341 __asm__
volatile(
"mrc p15, 0, %0, c7,c8,1" :
"=r"(val));
347 __asm__
volatile(
"mcr p15, 0, %0, c7,c8,1" ::
"r"(val));
348 __asm__
volatile(
"isb" :::
"memory");
354 __asm__
volatile(
"mrc p15, 0, %0, c7,c8,2" :
"=r"(val));
360 __asm__
volatile(
"mcr p15, 0, %0, c7,c8,2" ::
"r"(val));
361 __asm__
volatile(
"isb" :::
"memory");
367 __asm__
volatile(
"mrc p15, 0, %0, c7,c8,3" :
"=r"(val));
373 __asm__
volatile(
"mcr p15, 0, %0, c7,c8,3" ::
"r"(val));
374 __asm__
volatile(
"isb" :::
"memory");
380 __asm__
volatile(
"mrc p15, 0, %0, c7,c8,4" :
"=r"(val));
386 __asm__
volatile(
"mcr p15, 0, %0, c7,c8,4" ::
"r"(val));
387 __asm__
volatile(
"isb" :::
"memory");
393 __asm__
volatile(
"mrc p15, 0, %0, c7,c8,5" :
"=r"(val));
399 __asm__
volatile(
"mcr p15, 0, %0, c7,c8,5" ::
"r"(val));
400 __asm__
volatile(
"isb" :::
"memory");
406 __asm__
volatile(
"mrc p15, 0, %0, c7,c8,6" :
"=r"(val));
412 __asm__
volatile(
"mcr p15, 0, %0, c7,c8,6" ::
"r"(val));
413 __asm__
volatile(
"isb" :::
"memory");
419 __asm__
volatile(
"mrc p15, 0, %0, c7,c8,7" :
"=r"(val));
425 __asm__
volatile(
"mcr p15, 0, %0, c7,c8,7" ::
"r"(val));
426 __asm__
volatile(
"isb" :::
"memory");
432 __asm__
volatile(
"mrc p15, 0, %0, c7,c4,0" :
"=r"(val));
438 __asm__
volatile(
"mcr p15, 0, %0, c7,c4,0" ::
"r"(val));
439 __asm__
volatile(
"isb" :::
"memory");
445 __asm__
volatile(
"mrc p15, 0, %0, c7,c5,6" :
"=r"(val));
451 __asm__
volatile(
"mcr p15, 0, %0, c7,c5,6" ::
"r"(val));
452 __asm__
volatile(
"isb" :::
"memory");
458 __asm__
volatile(
"mrc p15, 0, %0, c7,c5,7" :
"=r"(val));
464 __asm__
volatile(
"mcr p15, 0, %0, c7,c5,7" ::
"r"(val));
465 __asm__
volatile(
"isb" :::
"memory");
471 __asm__
volatile(
"mrc p15, 0, %0, c7,c1,6" :
"=r"(val));
477 __asm__
volatile(
"mcr p15, 0, %0, c7,c1,6" ::
"r"(val));
478 __asm__
volatile(
"isb" :::
"memory");
484 __asm__
volatile(
"mrc p15, 0, %0, c8,c3,0" :
"=r"(val));
490 __asm__
volatile(
"mcr p15, 0, %0, c8,c3,0" ::
"r"(val));
491 __asm__
volatile(
"isb" :::
"memory");
497 __asm__
volatile(
"mrc p15, 0, %0, c8,c3,1" :
"=r"(val));
503 __asm__
volatile(
"mcr p15, 0, %0, c8,c3,1" ::
"r"(val));
504 __asm__
volatile(
"isb" :::
"memory");
510 __asm__
volatile(
"mrc p15, 0, %0, c8,c3,2" :
"=r"(val));
516 __asm__
volatile(
"mcr p15, 0, %0, c8,c3,2" ::
"r"(val));
517 __asm__
volatile(
"isb" :::
"memory");
523 __asm__
volatile(
"mrc p15, 0, %0, c8,c3,3" :
"=r"(val));
529 __asm__
volatile(
"mcr p15, 0, %0, c8,c3,3" ::
"r"(val));
530 __asm__
volatile(
"isb" :::
"memory");
536 __asm__
volatile(
"mrc p15, 0, %0, c8,c5,0" :
"=r"(val));
542 __asm__
volatile(
"mcr p15, 0, %0, c8,c5,0" ::
"r"(val));
543 __asm__
volatile(
"isb" :::
"memory");
549 __asm__
volatile(
"mrc p15, 0, %0, c8,c5,1" :
"=r"(val));
555 __asm__
volatile(
"mcr p15, 0, %0, c8,c5,1" ::
"r"(val));
556 __asm__
volatile(
"isb" :::
"memory");
562 __asm__
volatile(
"mrc p15, 0, %0, c8,c5,2" :
"=r"(val));
568 __asm__
volatile(
"mcr p15, 0, %0, c8,c5,2" ::
"r"(val));
569 __asm__
volatile(
"isb" :::
"memory");
575 __asm__
volatile(
"mrc p15, 0, %0, c8,c6,0" :
"=r"(val));
581 __asm__
volatile(
"mcr p15, 0, %0, c8,c6,0" ::
"r"(val));
582 __asm__
volatile(
"isb" :::
"memory");
588 __asm__
volatile(
"mrc p15, 0, %0, c8,c6,1" :
"=r"(val));
594 __asm__
volatile(
"mcr p15, 0, %0, c8,c6,1" ::
"r"(val));
595 __asm__
volatile(
"isb" :::
"memory");
601 __asm__
volatile(
"mrc p15, 0, %0, c8,c6,2" :
"=r"(val));
607 __asm__
volatile(
"mcr p15, 0, %0, c8,c6,2" ::
"r"(val));
608 __asm__
volatile(
"isb" :::
"memory");
614 __asm__
volatile(
"mrc p15, 0, %0, c8,c7,0" :
"=r"(val));
620 __asm__
volatile(
"mcr p15, 0, %0, c8,c7,0" ::
"r"(val));
621 __asm__
volatile(
"isb" :::
"memory");
627 __asm__
volatile(
"mrc p15, 0, %0, c8,c7,1" :
"=r"(val));
633 __asm__
volatile(
"mcr p15, 0, %0, c8,c7,1" ::
"r"(val));
634 __asm__
volatile(
"isb" :::
"memory");
640 __asm__
volatile(
"mrc p15, 0, %0, c8,c7,2" :
"=r"(val));
646 __asm__
volatile(
"mcr p15, 0, %0, c8,c7,2" ::
"r"(val));
647 __asm__
volatile(
"isb" :::
"memory");
653 __asm__
volatile(
"mrc p15, 0, %0, c8,c7,3" :
"=r"(val));
659 __asm__
volatile(
"mcr p15, 0, %0, c8,c7,3" ::
"r"(val));
660 __asm__
volatile(
"isb" :::
"memory");
666 __asm__
volatile(
"mrc p15, 1, %0, c9,c0,2" :
"=r"(val));
672 __asm__
volatile(
"mcr p15, 1, %0, c9,c0,2" ::
"r"(val));
673 __asm__
volatile(
"isb" :::
"memory");
679 __asm__
volatile(
"mrc p15, 1, %0, c9,c0,3" :
"=r"(val));
685 __asm__
volatile(
"mcr p15, 1, %0, c9,c0,3" ::
"r"(val));
686 __asm__
volatile(
"isb" :::
"memory");
692 __asm__
volatile(
"mrc p14, 0, %0, c0,c0,0" :
"=r"(val));
698 __asm__
volatile(
"mcr p14, 0, %0, c0,c0,0" ::
"r"(val));
699 __asm__
volatile(
"isb" :::
"memory");
705 __asm__
volatile(
"mrc p14, 0, %0, c1,c0,0" :
"=r"(val));
711 __asm__
volatile(
"mcr p14, 0, %0, c1,c0,0" ::
"r"(val));
712 __asm__
volatile(
"isb" :::
"memory");
718 __asm__
volatile(
"mrc p14, 0, %0, c2,c0,0" :
"=r"(val));
724 __asm__
volatile(
"mcr p14, 0, %0, c2,c0,0" ::
"r"(val));
725 __asm__
volatile(
"isb" :::
"memory");
731 __asm__
volatile(
"mrc p14, 0, %0, c0,c1,0" :
"=r"(val));
737 __asm__
volatile(
"mcr p14, 0, %0, c0,c1,0" ::
"r"(val));
738 __asm__
volatile(
"isb" :::
"memory");
744 __asm__
volatile(
"mrc p14, 0, %0, c0,c5,0" :
"=r"(val));
750 __asm__
volatile(
"mcr p14, 0, %0, c0,c5,0" ::
"r"(val));
751 __asm__
volatile(
"isb" :::
"memory");
757 __asm__
volatile(
"mrc p14, 0, %0, c0,c5,0" :
"=r"(val));
763 __asm__
volatile(
"mcr p14, 0, %0, c0,c5,0" ::
"r"(val));
764 __asm__
volatile(
"isb" :::
"memory");
770 __asm__
volatile(
"mrc p14, 0, %0, c0,c6,0" :
"=r"(val));
776 __asm__
volatile(
"mcr p14, 0, %0, c0,c6,0" ::
"r"(val));
777 __asm__
volatile(
"isb" :::
"memory");
783 __asm__
volatile(
"mrc p14, 0, %0, c0,c7,0" :
"=r"(val));
789 __asm__
volatile(
"mcr p14, 0, %0, c0,c7,0" ::
"r"(val));
790 __asm__
volatile(
"isb" :::
"memory");
796 __asm__
volatile(
"mrc p14, 0, %0, c0,c9,0" :
"=r"(val));
802 __asm__
volatile(
"mcr p14, 0, %0, c0,c9,0" ::
"r"(val));
803 __asm__
volatile(
"isb" :::
"memory");
809 __asm__
volatile(
"mrc p14, 0, %0, c0,c10,0" :
"=r"(val));
815 __asm__
volatile(
"mcr p14, 0, %0, c0,c10,0" ::
"r"(val));
816 __asm__
volatile(
"isb" :::
"memory");
822 __asm__
volatile(
"mrc p14, 0, %0, c0,c11,0" :
"=r"(val));
828 __asm__
volatile(
"mcr p14, 0, %0, c0,c11,0" ::
"r"(val));
829 __asm__
volatile(
"isb" :::
"memory");
835 __asm__
volatile(
"mrc p14, 0, %0, c0,c0,2" :
"=r"(val));
841 __asm__
volatile(
"mcr p14, 0, %0, c0,c0,2" ::
"r"(val));
842 __asm__
volatile(
"isb" :::
"memory");
848 __asm__
volatile(
"mrc p14, 0, %0, c0,c2,2" :
"=r"(val));
854 __asm__
volatile(
"mcr p14, 0, %0, c0,c2,2" ::
"r"(val));
855 __asm__
volatile(
"isb" :::
"memory");
861 __asm__
volatile(
"mrc p14, 0, %0, c0,c3,2" :
"=r"(val));
867 __asm__
volatile(
"mcr p14, 0, %0, c0,c3,2" ::
"r"(val));
868 __asm__
volatile(
"isb" :::
"memory");
874 __asm__
volatile(
"mrc p14, 0, %0, c0,c4,2" :
"=r"(val));
880 __asm__
volatile(
"mcr p14, 0, %0, c0,c4,2" ::
"r"(val));
881 __asm__
volatile(
"isb" :::
"memory");
887 __asm__
volatile(
"mrc p14, 0, %0, c0,c0,4" :
"=r"(val));
893 __asm__
volatile(
"mcr p14, 0, %0, c0,c0,4" ::
"r"(val));
894 __asm__
volatile(
"isb" :::
"memory");
900 __asm__
volatile(
"mrc p14, 0, %0, c0,c1,4" :
"=r"(val));
906 __asm__
volatile(
"mcr p14, 0, %0, c0,c1,4" ::
"r"(val));
907 __asm__
volatile(
"isb" :::
"memory");
913 __asm__
volatile(
"mrc p14, 0, %0, c0,c2,4" :
"=r"(val));
919 __asm__
volatile(
"mcr p14, 0, %0, c0,c2,4" ::
"r"(val));
920 __asm__
volatile(
"isb" :::
"memory");
926 __asm__
volatile(
"mrc p14, 0, %0, c0,c0,5" :
"=r"(val));
932 __asm__
volatile(
"mcr p14, 0, %0, c0,c0,5" ::
"r"(val));
933 __asm__
volatile(
"isb" :::
"memory");
939 __asm__
volatile(
"mrc p14, 0, %0, c0,c1,5" :
"=r"(val));
945 __asm__
volatile(
"mcr p14, 0, %0, c0,c1,5" ::
"r"(val));
946 __asm__
volatile(
"isb" :::
"memory");
952 __asm__
volatile(
"mrc p14, 0, %0, c0,c2,5" :
"=r"(val));
958 __asm__
volatile(
"mcr p14, 0, %0, c0,c2,5" ::
"r"(val));
959 __asm__
volatile(
"isb" :::
"memory");
965 __asm__
volatile(
"mrc p14, 0, %0, c0,c0,6" :
"=r"(val));
971 __asm__
volatile(
"mcr p14, 0, %0, c0,c0,6" ::
"r"(val));
972 __asm__
volatile(
"isb" :::
"memory");
978 __asm__
volatile(
"mrc p14, 0, %0, c0,c1,6" :
"=r"(val));
984 __asm__
volatile(
"mcr p14, 0, %0, c0,c1,6" ::
"r"(val));
985 __asm__
volatile(
"isb" :::
"memory");
991 __asm__
volatile(
"mrc p14, 0, %0, c0,c0,7" :
"=r"(val));
997 __asm__
volatile(
"mcr p14, 0, %0, c0,c0,7" ::
"r"(val));
998 __asm__
volatile(
"isb" :::
"memory");
1004 __asm__
volatile(
"mrc p14, 0, %0, c0,c1,7" :
"=r"(val));
1010 __asm__
volatile(
"mcr p14, 0, %0, c0,c1,7" ::
"r"(val));
1011 __asm__
volatile(
"isb" :::
"memory");
1017 __asm__
volatile(
"mrc p14, 0, %0, c1,c0,4" :
"=r"(val));
1023 __asm__
volatile(
"mcr p14, 0, %0, c1,c0,4" ::
"r"(val));
1024 __asm__
volatile(
"isb" :::
"memory");
1030 __asm__
volatile(
"mrc p14, 0, %0, c1,c1,4" :
"=r"(val));
1036 __asm__
volatile(
"mcr p14, 0, %0, c1,c1,4" ::
"r"(val));
1037 __asm__
volatile(
"isb" :::
"memory");
1043 __asm__
volatile(
"mrc p14, 0, %0, c1,c2,4" :
"=r"(val));
1049 __asm__
volatile(
"mcr p14, 0, %0, c1,c2,4" ::
"r"(val));
1050 __asm__
volatile(
"isb" :::
"memory");
1056 __asm__
volatile(
"mrc p14, 0, %0, c1,c4,4" :
"=r"(val));
1062 __asm__
volatile(
"mcr p14, 0, %0, c1,c4,4" ::
"r"(val));
1063 __asm__
volatile(
"isb" :::
"memory");
1069 __asm__
volatile(
"mrc p14, 0, %0, c1,c5,4" :
"=r"(val));
1075 __asm__
volatile(
"mcr p14, 0, %0, c1,c5,4" ::
"r"(val));
1076 __asm__
volatile(
"isb" :::
"memory");
1082 __asm__
volatile(
"mrc p14, 0, %0, c7,c8,6" :
"=r"(val));
1088 __asm__
volatile(
"mcr p14, 0, %0, c7,c8,6" ::
"r"(val));
1089 __asm__
volatile(
"isb" :::
"memory");
1095 __asm__
volatile(
"mrc p14, 0, %0, c7,c9,6" :
"=r"(val));
1101 __asm__
volatile(
"mcr p14, 0, %0, c7,c9,6" ::
"r"(val));
1102 __asm__
volatile(
"isb" :::
"memory");
1108 __asm__
volatile(
"mrc p14, 0, %0, c7,c14,6" :
"=r"(val));
1114 __asm__
volatile(
"mcr p14, 0, %0, c7,c14,6" ::
"r"(val));
1115 __asm__
volatile(
"isb" :::
"memory");
1121 __asm__
volatile(
"mrc p14, 0, %0, c7,c2,7" :
"=r"(val));
1127 __asm__
volatile(
"mcr p14, 0, %0, c7,c2,7" ::
"r"(val));
1128 __asm__
volatile(
"isb" :::
"memory");
STATIC INLINE UINT32 OsArmReadDbgdrar(VOID)
STATIC INLINE UINT32 OsArmReadDbgdsmcr(VOID)
STATIC INLINE UINT32 OsArmReadDbgdsccr(VOID)
STATIC INLINE VOID OsArmWriteDbgclaimset(UINT32 val)
STATIC INLINE VOID OsArmWriteWfar(UINT32 val)
STATIC INLINE VOID OsArmWriteActlr(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgwvr1(UINT32 val)
STATIC INLINE UINT32 OsArmReadAts12nsouw(VOID)
STATIC INLINE UINT32 OsArmReadMidr(VOID)
STATIC INLINE VOID OsArmWriteDbgdsar(UINT32 val)
STATIC INLINE UINT32 OsArmReadActlr(VOID)
STATIC INLINE UINT32 OsArmReadTlbimvaa(VOID)
STATIC INLINE VOID OsArmWriteDbgoslsr(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgwcr1(VOID)
STATIC INLINE UINT32 OsArmReadTtbr0(VOID)
STATIC INLINE UINT32 OsArmReadCbar(VOID)
STATIC INLINE UINT32 OsArmReadDbgwfar(VOID)
STATIC INLINE VOID OsArmWriteCbar(UINT32 val)
STATIC INLINE VOID OsArmWriteDfsr(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgauthstatus(VOID)
STATIC INLINE VOID OsArmWriteTpidruro(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgbcr2(VOID)
STATIC INLINE VOID OsArmWriteDbgvcr(UINT32 val)
STATIC INLINE UINT32 OsArmReadTtbr1(VOID)
STATIC INLINE VOID OsArmWriteItlbimva(UINT32 val)
STATIC INLINE VOID OsArmWriteItlbiasid(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgclaimset(VOID)
STATIC INLINE VOID OsArmWriteDbgwvr0(UINT32 val)
STATIC INLINE UINT32 OsArmReadPar(VOID)
STATIC INLINE UINT32 OsArmReadDbgvr1(VOID)
STATIC INLINE UINT32 OsArmReadFcseidr(VOID)
STATIC INLINE UINT32 OsArmReadDbgdscrext(VOID)
STATIC INLINE VOID OsArmWriteAts1cuw(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgvr0(VOID)
STATIC INLINE UINT32 OsArmReadAts1cpw(VOID)
STATIC INLINE VOID OsArmWriteTpidrurw(UINT32 val)
STATIC INLINE VOID OsArmWriteAts12nsouw(UINT32 val)
STATIC INLINE UINT32 OsArmReadTlbimva(VOID)
STATIC INLINE VOID OsArmWriteDbgdevid(UINT32 val)
STATIC INLINE UINT32 OsArmReadAts1cur(VOID)
STATIC INLINE UINT32 OsArmReadDbgoslar(VOID)
STATIC INLINE UINT32 OsArmReadDbgdtrrxint(VOID)
STATIC INLINE VOID OsArmWriteTlbiallis(UINT32 val)
STATIC INLINE UINT32 OsArmReadAts1cpr(VOID)
STATIC INLINE UINT32 OsArmReadL2ctlr(VOID)
STATIC INLINE VOID OsArmWriteTpidrprw(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgdrcr(UINT32 val)
STATIC INLINE UINT32 OsArmReadTlbiasid(VOID)
STATIC INLINE UINT32 OsArmReadItlbiall(VOID)
STATIC INLINE UINT32 OsArmReadDbgwcr0(VOID)
STATIC INLINE UINT32 OsArmReadDbddidr(VOID)
STATIC INLINE VOID OsArmWriteDbgdscr(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgvr1(UINT32 val)
STATIC INLINE VOID OsArmWriteMidr(UINT32 val)
STATIC INLINE VOID OsArmWriteTtbcr(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgauthstatus(UINT32 val)
STATIC INLINE UINT32 OsArmReadDfar(VOID)
STATIC INLINE UINT32 OsArmReadTpidrurw(VOID)
STATIC INLINE VOID OsArmWriteDtlbimva(UINT32 val)
STATIC INLINE VOID OsArmWriteAts1cur(UINT32 val)
STATIC INLINE VOID OsArmWriteDtlbiasid(UINT32 val)
STATIC INLINE VOID OsArmWriteDbddidr(UINT32 val)
STATIC INLINE UINT32 OsArmReadIfsr(VOID)
STATIC INLINE UINT32 OsArmReadTlbiasidis(VOID)
STATIC INLINE VOID OsArmWriteBpiallis(UINT32 val)
STATIC INLINE UINT32 OsArmReadAts1cuw(VOID)
STATIC INLINE VOID OsArmWriteTlbimvaa(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgbcr2(UINT32 val)
STATIC INLINE UINT32 OsArmReadAts12nsopr(VOID)
STATIC INLINE VOID OsArmWriteDbgbcr1(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgprcr(UINT32 val)
STATIC INLINE UINT32 OsArmReadItlbiasid(VOID)
STATIC INLINE UINT32 OsArmReadAts12nsopw(VOID)
STATIC INLINE VOID OsArmWriteTlbimvais(UINT32 val)
STATIC INLINE VOID OsArmWriteAts1cpw(UINT32 val)
STATIC INLINE VOID OsArmWriteDacr(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgbcr0(VOID)
STATIC INLINE UINT32 OsArmReadDbgdevid(VOID)
STATIC INLINE UINT32 OsArmReadMpidr(VOID)
STATIC INLINE UINT32 OsArmReadDbgdtrtxint(VOID)
STATIC INLINE UINT32 OsArmReadTtbr(VOID)
STATIC INLINE VOID OsArmWriteTlbiasid(UINT32 val)
STATIC INLINE UINT32 OsArmReadBpiallis(VOID)
STATIC INLINE UINT32 OsArmReadWfar(VOID)
STATIC INLINE VOID OsArmWriteDbgdscrext(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgprsr(UINT32 val)
STATIC INLINE UINT32 OsArmReadSctlr(VOID)
读CP15的系统控制寄存器到 R0寄存器 请翻看 鸿蒙内核源码分析(协处理器篇)
STATIC INLINE VOID OsArmWriteDfar(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgvr0(UINT32 val)
STATIC INLINE UINT32 OsArmReadTpidruro(VOID)
STATIC INLINE VOID OsArmWriteIfar(UINT32 val)
STATIC INLINE VOID OsArmWriteBpimva(UINT32 val)
STATIC INLINE VOID OsArmWriteTlbiasidis(UINT32 val)
记录由协处理器记录当前是哪个进程在跑
STATIC INLINE UINT32 OsArmReadDbgprcr(VOID)
STATIC INLINE VOID OsArmWriteDbgdtrtxint(UINT32 val)
STATIC INLINE UINT32 OsArmReadIfar(VOID)
STATIC INLINE VOID OsArmWriteDbgoslar(UINT32 val)
STATIC INLINE VOID OsArmWriteAts1cpr(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgdtrrxext(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgvr2(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgvr2(VOID)
STATIC INLINE VOID OsArmWriteMpidr(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgdsar(VOID)
STATIC INLINE UINT32 OsArmReadDbgclaimclr(VOID)
STATIC INLINE UINT32 OsArmReadL2ectlr(VOID)
STATIC INLINE VOID OsArmWriteContextidr(UINT32 val)
STATIC INLINE UINT32 OsArmReadTlbiall(VOID)
STATIC INLINE UINT32 OsArmReadBpiall(VOID)
STATIC INLINE UINT32 OsArmReadCpacr(VOID)
STATIC INLINE VOID OsArmWriteAts12nsopw(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgossrr(VOID)
STATIC INLINE VOID OsArmWriteCpacr(UINT32 val)
STATIC INLINE UINT32 OsArmReadDtlbiasid(VOID)
STATIC INLINE VOID OsArmWriteDbgdsmcr(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgossrr(UINT32 val)
STATIC INLINE UINT32 OsArmReadBpimva(VOID)
STATIC INLINE VOID OsArmWriteTlbimva(UINT32 val)
STATIC INLINE VOID OsArmWriteL2ectlr(UINT32 val)
STATIC INLINE UINT32 OsArmReadTlbimvaais(VOID)
STATIC INLINE VOID OsArmWriteDbgwcr0(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgdsccr(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgdrar(UINT32 val)
STATIC INLINE UINT32 OsArmReadDacr(VOID)
STATIC INLINE UINT32 OsArmReadTtbcr(VOID)
STATIC INLINE UINT32 OsArmReadDfsr(VOID)
STATIC INLINE VOID OsArmWriteDbgclaimclr(UINT32 val)
STATIC INLINE UINT32 OsArmReadVbar(VOID)
STATIC INLINE VOID OsArmWriteTtbr1(UINT32 val)
STATIC INLINE VOID OsArmWriteDbgdtrtxext(UINT32 val)
STATIC INLINE UINT32 OsArmReadItlbimva(VOID)
STATIC INLINE VOID OsArmWriteAts12nsopr(UINT32 val)
STATIC INLINE VOID OsArmWriteItlbiall(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgwvr1(VOID)
STATIC INLINE VOID OsArmWriteDbgecr(UINT32 val)
STATIC INLINE VOID OsArmWriteVbar(UINT32 val)
STATIC INLINE VOID OsArmWriteIfsr(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgvcr(VOID)
STATIC INLINE VOID OsArmWriteTtbr(UINT32 val)
STATIC INLINE VOID OsArmWriteAts12nsour(UINT32 val)
STATIC INLINE VOID OsArmWriteTlbiall(UINT32 val)
STATIC INLINE VOID OsArmWriteDtlbiall(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgecr(VOID)
STATIC INLINE VOID OsArmWriteDbgwfar(UINT32 val)
STATIC INLINE VOID OsArmWriteTtbr0(UINT32 val)
STATIC INLINE VOID OsArmWriteL2ctlr(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgdrcr(VOID)
STATIC INLINE VOID OsArmWriteFcseidr(UINT32 val)
STATIC INLINE UINT32 OsArmReadTpidrprw(VOID)
STATIC INLINE VOID OsArmWriteDbgdtrrxint(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgbcr1(VOID)
STATIC INLINE UINT32 OsArmReadDbgdtrrxext(VOID)
STATIC INLINE VOID OsArmWriteDbgbcr0(UINT32 val)
STATIC INLINE UINT32 OsArmReadDtlbimva(VOID)
STATIC INLINE UINT32 OsArmReadTlbiallis(VOID)
STATIC INLINE UINT32 OsArmReadDbgdtrtxext(VOID)
STATIC INLINE UINT32 OsArmReadDbgprsr(VOID)
STATIC INLINE VOID OsArmWriteBpiall(UINT32 val)
STATIC INLINE VOID OsArmWriteTlbimvaais(UINT32 val)
STATIC INLINE UINT32 OsArmReadDtlbiall(VOID)
STATIC INLINE VOID OsArmWriteDbgwcr1(UINT32 val)
STATIC INLINE UINT32 OsArmReadTlbimvais(VOID)
STATIC INLINE UINT32 OsArmReadDbgwvr0(VOID)
STATIC INLINE UINT32 OsArmReadContextidr(VOID)
STATIC INLINE VOID OsArmWritePar(UINT32 val)
STATIC INLINE UINT32 OsArmReadDbgdscr(VOID)
STATIC INLINE VOID OsArmWriteSctlr(UINT32 val)
R0寄存器写入CP15的系统控制寄存器
STATIC INLINE UINT32 OsArmReadDbgoslsr(VOID)
STATIC INLINE UINT32 OsArmReadAts12nsour(VOID)