Lines Matching +full:write +full:- +full:0
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 /* low-level asm for "intrigue" (PA8500-8700 CPU perf counters)
5 * Copyright (C) 2001 Randolph Chung <tausq at parisc-linux.org>
6 * Copyright (C) 2001 Hewlett-Packard (Grant Grundler)
18 #define MTDIAG_1(gr) .word 0x14201840 + gr*0x10000
19 #define MTDIAG_2(gr) .word 0x14401840 + gr*0x10000
20 #define MFDIAG_1(gr) .word 0x142008A0 + gr
21 #define MFDIAG_2(gr) .word 0x144008A0 + gr
22 #define STDIAG(dr) .word 0x14000AA0 + dr*0x200000
23 #define SFDIAG(dr) .word 0x14000BA0 + dr*0x200000
37 .callinfo frame=0,NO_CALLS
40 ldi 0x20,%r25 ; load up perfmon bit
45 ssm 0,0 ; dummy op to ensure completion
64 .callinfo frame=0,NO_CALLS
66 ldi 0x20,%r25 ; load up perfmon bit
71 ssm 0,0 ; dummy op to ensure completion
100 ;* %r24 - original DR2 value
101 ;* %r1 - scratch
102 ;* %r29 - scratch
111 .callinfo frame=0,NO_CALLS
117 ; NOTE: The PCX-W ERS states that DR2_SLOW_RET must be set before any
132 ; Cacheline start (32-byte cacheline)
141 blr %r1,%r0 ; branch to 8-instruction sequence
145 ; Cacheline start (32-byte cacheline)
149 ; RDR 0 sequence
151 SFDIAG (0)
152 ssm 0,0
156 STDIAG (0)
157 ssm 0,0
164 ssm 0,0
166 ssm 0,0
168 ssm 0,0
176 ssm 0,0
181 ssm 0,0
200 ssm 0,0
202 ssm 0,0
205 ssm 0,0
212 ssm 0,0
214 ssm 0,0
217 ssm 0,0
224 ssm 0,0
226 ssm 0,0
229 ssm 0,0
272 ssm 0,0
277 ssm 0,0
284 ssm 0,0
289 ssm 0,0
308 ssm 0,0
310 ssm 0,0
313 ssm 0,0
320 ssm 0,0
325 ssm 0,0
332 ssm 0,0
334 ssm 0,0
336 ssm 0,0
344 ssm 0,0
346 ssm 0,0
349 ssm 0,0
356 ssm 0,0
361 ssm 0,0
368 ssm 0,0
373 ssm 0,0
392 ssm 0,0
394 ssm 0,0
397 ssm 0,0
404 ssm 0,0
406 ssm 0,0
409 ssm 0,0
416 ssm 0,0
418 ssm 0,0
421 ssm 0,0
428 ssm 0,0
430 ssm 0,0
433 ssm 0,0
440 ssm 0,0
442 ssm 0,0
445 ssm 0,0
452 ssm 0,0
454 ssm 0,0
457 ssm 0,0
464 ssm 0,0
469 ssm 0,0
476 ssm 0,0
481 ssm 0,0
488 ssm 0,0
490 ssm 0,0
493 ssm 0,0
500 ssm 0,0
502 ssm 0,0
505 ssm 0,0
512 ssm 0,0
517 ssm 0,0
524 ssm 0,0
526 ssm 0,0
529 ssm 0,0
549 ;* This routine moves data to the RDR's. The double-word that
556 ;* arg1 = 64-bit value to write
557 ;* %r24 - DR2 | DR2_SLOW_RET
558 ;* %r23 - original DR2 value
569 .callinfo frame=0,NO_CALLS
572 ; NOTE: The PCX-W ERS states that DR2_SLOW_RET must be set before any
582 blr %r1,%r0 ; branch to 8-instruction sequence
586 ; RDR 0 write sequence
588 sync ; RDR 0 write sequence
589 ssm 0,0
590 STDIAG (0)
591 ssm 0,0
594 ssm 0,0
598 ; RDR 1 write sequence
601 ssm 0,0
603 ssm 0,0
606 ssm 0,0
610 ; RDR 2 write sequence
613 ssm 0,0
615 ssm 0,0
618 ssm 0,0
622 ; RDR 3 write sequence
625 ssm 0,0
627 ssm 0,0
630 ssm 0,0
634 ; RDR 4 write sequence
637 ssm 0,0
639 ssm 0,0
642 ssm 0,0
646 ; RDR 5 write sequence
649 ssm 0,0
651 ssm 0,0
654 ssm 0,0
658 ; RDR 6 write sequence
661 ssm 0,0
663 ssm 0,0
666 ssm 0,0
670 ; RDR 7 write sequence
673 ssm 0,0
675 ssm 0,0
678 ssm 0,0
682 ; RDR 8 write sequence
685 ssm 0,0
687 ssm 0,0
690 ssm 0,0
694 ; RDR 9 write sequence
697 ssm 0,0
699 ssm 0,0
702 ssm 0,0
706 ; RDR 10 write sequence
709 ssm 0,0
712 ssm 0,0
714 ssm 0,0
718 ; RDR 11 write sequence
721 ssm 0,0
724 ssm 0,0
726 ssm 0,0
730 ; RDR 12 write sequence
733 ssm 0,0
735 ssm 0,0
738 ssm 0,0
742 ; RDR 13 write sequence
745 ssm 0,0
747 ssm 0,0
750 ssm 0,0
754 ; RDR 14 write sequence
757 ssm 0,0
759 ssm 0,0
762 ssm 0,0
766 ; RDR 15 write sequence
769 ssm 0,0
771 ssm 0,0
774 ssm 0,0
778 ; RDR 16 write sequence
781 ssm 0,0
783 ssm 0,0
786 ssm 0,0
790 ; RDR 17 write sequence
793 ssm 0,0
795 ssm 0,0
798 ssm 0,0
802 ; RDR 18 write sequence
805 ssm 0,0
807 ssm 0,0
810 ssm 0,0
814 ; RDR 19 write sequence
817 ssm 0,0
819 ssm 0,0
822 ssm 0,0
826 ; RDR 20 write sequence
829 ssm 0,0
831 ssm 0,0
834 ssm 0,0
838 ; RDR 21 write sequence
841 ssm 0,0
843 ssm 0,0
846 ssm 0,0
850 ; RDR 22 write sequence
853 ssm 0,0
855 ssm 0,0
858 ssm 0,0
862 ; RDR 23 write sequence
865 ssm 0,0
867 ssm 0,0
870 ssm 0,0
874 ; RDR 24 write sequence
877 ssm 0,0
879 ssm 0,0
882 ssm 0,0
886 ; RDR 25 write sequence
889 ssm 0,0
891 ssm 0,0
894 ssm 0,0
898 ; RDR 26 write sequence
901 ssm 0,0
904 ssm 0,0
906 ssm 0,0
910 ; RDR 27 write sequence
913 ssm 0,0
916 ssm 0,0
918 ssm 0,0
922 ; RDR 28 write sequence
925 ssm 0,0
927 ssm 0,0
930 ssm 0,0
934 ; RDR 29 write sequence
937 ssm 0,0
939 ssm 0,0
942 ssm 0,0
946 ; RDR 30 write sequence
949 ssm 0,0
951 ssm 0,0
954 ssm 0,0
958 ; RDR 31 write sequence
961 ssm 0,0
963 ssm 0,0
966 ssm 0,0
998 ;* %r24 - original DR2 value
999 ;* %r23 - DR2 | DR2_SLOW_RET
1000 ;* %r1 - scratch
1006 .callinfo frame=0,NO_CALLS
1011 ; NOTE: The PCX-U ERS states that DR2_SLOW_RET must be set before any
1025 ; Start of next 32-byte cacheline
1034 blr %r1,%r0 ; branch to 8-instruction sequence
1038 ; Start of next 32-byte cacheline
1040 SFDIAG (0) ; RDR 0 read sequence
1041 ssm 0,0
1045 STDIAG (0)
1046 ssm 0,0
1050 ssm 0,0
1055 ssm 0,0
1059 ssm 0,0
1061 ssm 0,0
1064 ssm 0,0
1068 ssm 0,0
1070 ssm 0,0
1073 ssm 0,0
1077 ssm 0,0
1079 ssm 0,0
1082 ssm 0,0
1086 ssm 0,0
1088 ssm 0,0
1091 ssm 0,0
1095 ssm 0,0
1097 ssm 0,0
1100 ssm 0,0
1104 ssm 0,0
1106 ssm 0,0
1109 ssm 0,0
1122 ssm 0,0
1127 ssm 0,0
1131 ssm 0,0
1136 ssm 0,0
1140 ssm 0,0
1145 ssm 0,0
1149 ssm 0,0
1154 ssm 0,0
1158 ssm 0,0
1163 ssm 0,0
1167 ssm 0,0
1172 ssm 0,0
1176 ssm 0,0
1181 ssm 0,0
1185 ssm 0,0
1187 ssm 0,0
1190 ssm 0,0
1194 ssm 0,0
1199 ssm 0,0
1203 ssm 0,0
1208 ssm 0,0
1221 ssm 0,0
1223 ssm 0,0
1226 ssm 0,0
1230 ssm 0,0
1232 ssm 0,0
1235 ssm 0,0
1239 ssm 0,0
1241 ssm 0,0
1244 ssm 0,0
1248 ssm 0,0
1250 ssm 0,0
1253 ssm 0,0
1257 ssm 0,0
1259 ssm 0,0
1262 ssm 0,0
1266 ssm 0,0
1268 ssm 0,0
1271 ssm 0,0
1275 ssm 0,0
1280 ssm 0,0
1284 ssm 0,0
1289 ssm 0,0
1293 ssm 0,0
1295 ssm 0,0
1298 ssm 0,0
1311 ssm 0,0
1316 ssm 0,0
1320 ssm 0,0
1325 ssm 0,0
1341 ;* This routine moves data to the RDR's. The double-word that
1356 ;* %r24 - DR2 | DR2_SLOW_RET
1357 ;* %r23 - original DR2 value
1363 .callinfo frame=0,NO_CALLS
1367 ; NOTE: The PCX-U ERS states that DR2_SLOW_RET must be set before any
1378 blr %r1,%r0 ; branch to 8-instruction sequence
1382 ; 32-byte cachline aligned
1385 sync ; RDR 0 write sequence
1386 ssm 0,0
1387 STDIAG (0)
1388 ssm 0,0
1391 ssm 0,0
1394 sync ; RDR 1 write sequence
1395 ssm 0,0
1397 ssm 0,0
1400 ssm 0,0
1403 sync ; RDR 2 write sequence
1404 ssm 0,0
1406 ssm 0,0
1409 ssm 0,0
1412 sync ; RDR 3 write sequence
1413 ssm 0,0
1415 ssm 0,0
1418 ssm 0,0
1421 sync ; RDR 4 write sequence
1422 ssm 0,0
1424 ssm 0,0
1427 ssm 0,0
1430 sync ; RDR 5 write sequence
1431 ssm 0,0
1433 ssm 0,0
1436 ssm 0,0
1439 sync ; RDR 6 write sequence
1440 ssm 0,0
1442 ssm 0,0
1445 ssm 0,0
1448 sync ; RDR 7 write sequence
1449 ssm 0,0
1451 ssm 0,0
1454 ssm 0,0
1457 sync ; RDR 8 write sequence
1458 ssm 0,0
1460 ssm 0,0
1463 ssm 0,0
1466 sync ; RDR 9 write sequence
1467 ssm 0,0
1469 ssm 0,0
1472 ssm 0,0
1475 sync ; RDR 10 write sequence
1476 ssm 0,0
1478 ssm 0,0
1481 ssm 0,0
1484 sync ; RDR 11 write sequence
1485 ssm 0,0
1487 ssm 0,0
1490 ssm 0,0
1493 sync ; RDR 12 write sequence
1494 ssm 0,0
1496 ssm 0,0
1499 ssm 0,0
1502 sync ; RDR 13 write sequence
1503 ssm 0,0
1505 ssm 0,0
1508 ssm 0,0
1511 sync ; RDR 14 write sequence
1512 ssm 0,0
1514 ssm 0,0
1517 ssm 0,0
1520 sync ; RDR 15 write sequence
1521 ssm 0,0
1523 ssm 0,0
1526 ssm 0,0
1529 sync ; RDR 16 write sequence
1530 ssm 0,0
1532 ssm 0,0
1535 ssm 0,0
1538 sync ; RDR 17 write sequence
1539 ssm 0,0
1541 ssm 0,0
1544 ssm 0,0
1547 sync ; RDR 18 write sequence
1548 ssm 0,0
1550 ssm 0,0
1553 ssm 0,0
1556 sync ; RDR 19 write sequence
1557 ssm 0,0
1559 ssm 0,0
1562 ssm 0,0
1565 sync ; RDR 20 write sequence
1566 ssm 0,0
1568 ssm 0,0
1571 ssm 0,0
1574 sync ; RDR 21 write sequence
1575 ssm 0,0
1577 ssm 0,0
1580 ssm 0,0
1583 sync ; RDR 22 write sequence
1584 ssm 0,0
1586 ssm 0,0
1589 ssm 0,0
1592 sync ; RDR 23 write sequence
1593 ssm 0,0
1595 ssm 0,0
1598 ssm 0,0
1601 sync ; RDR 24 write sequence
1602 ssm 0,0
1604 ssm 0,0
1607 ssm 0,0
1610 sync ; RDR 25 write sequence
1611 ssm 0,0
1613 ssm 0,0
1616 ssm 0,0
1619 sync ; RDR 26 write sequence
1620 ssm 0,0
1622 ssm 0,0
1625 ssm 0,0
1628 sync ; RDR 27 write sequence
1629 ssm 0,0
1631 ssm 0,0
1634 ssm 0,0
1637 sync ; RDR 28 write sequence
1638 ssm 0,0
1640 ssm 0,0
1643 ssm 0,0
1646 sync ; RDR 29 write sequence
1647 ssm 0,0
1649 ssm 0,0
1652 ssm 0,0
1655 sync ; RDR 30 write sequence
1656 ssm 0,0
1658 ssm 0,0
1661 ssm 0,0
1664 sync ; RDR 31 write sequence
1665 ssm 0,0
1667 ssm 0,0
1670 ssm 0,0