mirror of
https://git.proxmox.com/git/mirror_ubuntu-kernels.git
synced 2025-11-30 18:00:46 +00:00
ENTRY()/END()/WEAK() macros are deprecated and we should make use of the new SYM_*() macros [1] for better annotation of symbols. Replace the deprecated ones with the new ones and fix wrong usage of END()/ENDPROC() to correctly describe the symbols. [1] https://docs.kernel.org/core-api/asm-annotations.html Signed-off-by: Clément Léger <cleger@rivosinc.com> Reviewed-by: Andrew Jones <ajones@ventanamicro.com> Link: https://lore.kernel.org/r/20231024132655.730417-3-cleger@rivosinc.com Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
40 lines
601 B
ArmAsm
40 lines
601 B
ArmAsm
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* purgatory: Runs between two kernels
|
|
*
|
|
* Copyright (C) 2022 Huawei Technologies Co, Ltd.
|
|
*
|
|
* Author: Li Zhengyu (lizhengyu3@huawei.com)
|
|
*
|
|
*/
|
|
#include <linux/linkage.h>
|
|
|
|
.text
|
|
|
|
SYM_CODE_START(purgatory_start)
|
|
|
|
lla sp, .Lstack
|
|
mv s0, a0 /* The hartid of the current hart */
|
|
mv s1, a1 /* Phys address of the FDT image */
|
|
|
|
jal purgatory
|
|
|
|
/* Start new image. */
|
|
mv a0, s0
|
|
mv a1, s1
|
|
ld a2, riscv_kernel_entry
|
|
jr a2
|
|
SYM_CODE_END(purgatory_start)
|
|
|
|
.align 4
|
|
.rept 256
|
|
.quad 0
|
|
.endr
|
|
.Lstack:
|
|
|
|
.data
|
|
|
|
SYM_DATA(riscv_kernel_entry, .quad 0)
|
|
|
|
.end
|