Lines Matching +full:sync +full:- +full:1
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * This file contains miscellaneous low-level functions.
4 * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org)
19 #include <asm/asm-offsets.h>
26 #include <asm/feature-fixups.h>
46 sync
52 sync
57 sync
61 sync
67 sync
72 sync
85 sync
87 sync
93 sync
99 sync
105 sync
116 sync
118 sync
124 sync
130 sync
136 sync
147 sync
149 sync
154 sync
162 sync
164 sync
169 sync
192 mtmsrd r0,1
202 sync
217 mtmsrd r4,1
226 mtmsrd r0,1
234 sync
243 mtmsrd r5,1
259 1: mflr r5
260 addi r5,r5,kexec_flag-1b
270 clrrdi r11,r11,1 /* Clear MSR_LE */
293 * assumes that 1G is enough for kexec.
297 * Invalidate all non-IPROT TLB entries to avoid any TLB conflict.
301 sync
306 subi r10,r10,1 /* Last entry: no conflict with kernel text */
307 lis r9,MAS0_TLBSEL(1)@h
352 * 0 and 1 (big endian) of the effective address in real mode
361 1: li r9,MSR_RI
368 mtmsrd r9,1
386 /* switch stacks to newstack -- &kexec_stack.stack */
387 stdu r1,THREAD_SIZE-STACK_FRAME_OVERHEAD(r3)
396 std r31,-8(r1)
397 std r30,-16(r1)
398 std r29,-24(r1)
399 std r28,-32(r1)
400 std r27,-40(r1)
401 std r26,-48(r1)
402 std r25,-56(r1)
404 stdu r1,-STACK_FRAME_OVERHEAD-64(r1)
421 mtmsrd r3,1
428 beq 1f
430 1:
437 bne 1f
441 1: li r3,0
446 1: /* assume normal blr return */
450 li r6,1
451 stw r6,kexec_flag-1b(5)
454 beq 1f
482 * and 0 will store phys into struct boot-block and load r3 from there,
483 * copy kernel 0-0x100 and tell slaves to back down to 0x60 again
490 1: mr r3,r25 # my phys cpu
494 blr /* image->start(physid, image->start, 0); */