Lines Matching +full:cpu +full:- +full:crit

1 /* SPDX-License-Identifier: GPL-2.0-or-later */
12 #include <asm/asm-offsets.h>
17 #include <asm/exception-64e.h>
21 #include <asm/ppc-opcode.h>
26 #include <asm/feature-fixups.h>
36 * special interrupts from within a non-standard level will probably
57 /* must be even to keep 16-byte stack alignment */
61 #define SPECIAL_EXC_FRAME_OFFS (INT_FRAME_SIZE - 288)
154 * Wipe all non-bolted entries to be safe.
264 bge- cr1,exc_##n##_bad_stack;/* bad stack (TODO: out of line) */ \
267 /* Exception type-specific macros */
323 EXCEPTION_PROLOG(n, intnum, CRIT, addition##_CRIT(n))
343 lbz r10,PACAIRQSOFTMASK(r13); /* are irqs soft-masked? */ \
344 andi. r10,r10,IRQS_DISABLED; /* yes -> go out of line */ \
348 * Additional regs must be re-loaded from paca before EXCEPTION_COMMON* is
378 SAVE_4GPRS(3, r1); /* save r3 - r6 in stackframe */ \
408 std r12,STACK_FRAME_OVERHEAD-16(r1); /* mark the frame */ \
410 std r0,RESULT(r1); /* clear regs->result */ \
606 beq- 1f
623 beq- 1f
697 * If there is a single step or branch-taken exception in an
705 mfspr r14,SPRN_DBSR /* check single-step/branch taken */
768 * If there is a single step or branch-taken exception in an
776 mfspr r14,SPRN_DBSR /* check single-step/branch taken */
933 * An interrupt came in while soft-disabled; We mark paca->irq_happened
1014 * index around, etc... to handle crit & mcheck
1054 ld r10,PACA_EXGEN+EX_R1(r13) /* FIXME for crit & mcheck */
1055 lwz r11,PACA_EXGEN+EX_CR(r13) /* FIXME for crit & mcheck */
1064 SAVE_4GPRS(3, r1); /* save r3 - r6 in stackframe */ \
1181 andi. r7,r5,0x1 /* Find an entry not used and is non-zero */
1201 addi r6,r6,(2f - 1b)
1249 li r5,-1
1261 addi r6,r6,(2f - 1b)
1296 * This code is called as an ordinary function on the boot CPU. But to
1349 addi r10,r10,-1 /* Get inner loop mask */
1400 * Main entry (boot CPU, thread 0)
1408 * - Kernel loaded at 0 physical
1409 * - A good lump of memory mapped 0:0 by UTLB entry 0
1410 * - MSR:IS & MSR:DS set to 0
1429 /* Init per-thread bits */
1471 /* Init per-thread bits */
1556 SET_IVOR(37, 0x2a0) /* Processor Doorbell Crit */
1563 SET_IVOR(39, 0x2e0) /* Guest Processor Doorbell Crit/MC */