Commit 04b6d02d authored by Heiko Carstens's avatar Heiko Carstens Committed by Vasily Gorbik

s390/purgatory: use SYM* macros instead of ENTRY(), etc.

Consistently use the SYM* family of macros instead of the
deprecated ENTRY(), ENDPROC(), etc. family of macros.
Signed-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
parent 6cea5f0b
...@@ -76,9 +76,9 @@ ...@@ -76,9 +76,9 @@
diag %r0,%r1,0x308 diag %r0,%r1,0x308
.endm .endm
.text .text
.align PAGE_SIZE .balign PAGE_SIZE
ENTRY(purgatory_start) SYM_CODE_START(purgatory_start)
/* The purgatory might be called after a diag308 so better set /* The purgatory might be called after a diag308 so better set
* architecture and addressing mode. * architecture and addressing mode.
*/ */
...@@ -245,45 +245,21 @@ ENTRY(purgatory_start) ...@@ -245,45 +245,21 @@ ENTRY(purgatory_start)
/* start crash kernel */ /* start crash kernel */
START_NEXT_KERNEL .base_dst 1 START_NEXT_KERNEL .base_dst 1
SYM_CODE_END(purgatory_start)
load_psw_mask: SYM_DATA_LOCAL(load_psw_mask, .long 0x00080000,0x80000000)
.long 0x00080000,0x80000000 .balign 8
SYM_DATA_LOCAL(disabled_wait_psw, .quad 0x0002000180000000,.do_checksum_verification)
.align 8 SYM_DATA_LOCAL(gprregs, .fill 10,8,0)
disabled_wait_psw: SYM_DATA(purgatory_sha256_digest, .skip 32)
.quad 0x0002000180000000 SYM_DATA(purgatory_sha_regions, .skip 16*__KEXEC_SHA_REGION_SIZE)
.quad 0x0000000000000000 + .do_checksum_verification SYM_DATA(kernel_entry, .skip 8)
SYM_DATA(kernel_type, .skip 8)
gprregs: SYM_DATA(crash_start, .skip 8)
.rept 10 SYM_DATA(crash_size, .skip 8)
.quad 0 .balign PAGE_SIZE
.endr SYM_DATA_START_LOCAL(stack)
/* Macro to define a global variable with name and size (in bytes) to be
* shared with C code.
*
* Add the .size and .type attribute to satisfy checks on the Elf_Sym during
* purgatory load.
*/
.macro GLOBAL_VARIABLE name,size
\name:
.global \name
.size \name,\size
.type \name,object
.skip \size,0
.endm
GLOBAL_VARIABLE purgatory_sha256_digest,32
GLOBAL_VARIABLE purgatory_sha_regions,16*__KEXEC_SHA_REGION_SIZE
GLOBAL_VARIABLE kernel_entry,8
GLOBAL_VARIABLE kernel_type,8
GLOBAL_VARIABLE crash_start,8
GLOBAL_VARIABLE crash_size,8
.align PAGE_SIZE
stack:
/* The buffer to move this code must be as big as the code. */ /* The buffer to move this code must be as big as the code. */
.skip stack-purgatory_start .skip stack-purgatory_start
.align PAGE_SIZE .balign PAGE_SIZE
purgatory_end: SYM_DATA_END_LABEL(stack, SYM_L_LOCAL, purgatory_end)
/* SPDX-License-Identifier: GPL-2.0 */ /* SPDX-License-Identifier: GPL-2.0 */
#include <linux/linkage.h>
.section .rodata, "a" .section .rodata, "a"
.align 8 .balign 8
kexec_purgatory: SYM_DATA_START(kexec_purgatory)
.globl kexec_purgatory
.incbin "arch/s390/purgatory/purgatory.ro" .incbin "arch/s390/purgatory/purgatory.ro"
.Lkexec_purgatroy_end: SYM_DATA_END_LABEL(kexec_purgatory, SYM_L_LOCAL, kexec_purgatory_end)
.align 8 .balign 8
kexec_purgatory_size: SYM_DATA(kexec_purgatory_size, .quad kexec_purgatory_end-kexec_purgatory)
.globl kexec_purgatory_size
.quad .Lkexec_purgatroy_end - kexec_purgatory
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment