Lines Matching +full:sha +full:- +full:1

1 /* SPDX-License-Identifier: GPL-2.0 */
11 #include <asm/asm-offsets.h>
24 * sha digest. So if the crash kernel got corrupted the old kernel can try
25 * to trigger a stand-alone dumper. And once to actually load the crash kernel.
34 #define bufsz purgatory_end-stack
66 lg %r4,kernel_entry-\base(%r13)
67 lg %r5,load_psw_mask-\base(%r13)
82 lhi %r1,1
93 larl %r15,purgatory_end-STACK_FRAME_OVERHEAD
97 * checksum verification only (%r2 = 0 -> verification only).
101 * 1 -> checksum verification only
102 * 0 -> load new kernel
105 lg %r11,kernel_type-.base_crash(%r13)
106 cghi %r11,1 /* KEXEC_TYPE_CRASH */
110 lghi %r10,1
115 cghi %r10,1 /* checksum verification only */
123 cghi %r11,1 /* KEXEC_TYPE_CRASH */
130 lmg %r6,%r15,gprregs-.base_crash(%r13)
134 lpswe disabled_wait_psw-.base_crash(%r13)
139 aghi %r8,-(.base_crash-purgatory_start)
142 lg %r9,crash_size-.base_crash(%r13)
143 aghi %r9,-(purgatory_end-purgatory_start)
146 lg %r10,crash_start-.base_crash(%r13)
150 * behind the point of no return it can re-use the stack as buffer.
155 MEMCPY %r12,%r9,%r11 /* dst -> (crash) buf */
156 MEMCPY %r9,%r8,%r11 /* self -> dst */
160 aghi %r7,.jump_to_dst-purgatory_start
168 MEMCPY %r12,%r10,%r11 /* (crash) buf -> (crash) dst */
172 aghi %r10,stack-purgatory_start
173 MEMCPY %r10,%r7,%r11 /* (new) buf -> (crash) buf */
180 * %r0-%r4 reserved for macros defined above
181 * %r5-%r6 tmp registers
182 * %r7 pointer to current struct sha region
183 * %r8 index to iterate over all sha regions
192 lg %r9,crash_start-.base_dst(%r13)
200 aghi %r8,-1
211 /* Copy [end last sha region, start current sha region) */
212 /* Note: kexec_sha_region->start points in crash memory */
220 /* Swap sha region */
231 START_NEXT_KERNEL .base_dst 1
271 .skip stack-purgatory_start