Path: blob/master/arch/powerpc/include/asm/book3s/64/kexec.h
26519 views
/* SPDX-License-Identifier: GPL-2.0 */12#ifndef _ASM_POWERPC_BOOK3S_64_KEXEC_H_3#define _ASM_POWERPC_BOOK3S_64_KEXEC_H_45#include <asm/plpar_wrappers.h>67#define reset_sprs reset_sprs8static inline void reset_sprs(void)9{10if (cpu_has_feature(CPU_FTR_ARCH_206)) {11mtspr(SPRN_AMR, 0);12mtspr(SPRN_UAMOR, 0);13}1415if (cpu_has_feature(CPU_FTR_ARCH_207S)) {16mtspr(SPRN_IAMR, 0);17if (cpu_has_feature(CPU_FTR_HVMODE))18mtspr(SPRN_CIABR, 0);19else20plpar_set_ciabr(0);21}2223if (cpu_has_feature(CPU_FTR_ARCH_31)) {24mtspr(SPRN_DEXCR, 0);25mtspr(SPRN_HASHKEYR, 0);26}2728/* Do we need isync()? We are going via a kexec reset */29isync();30}3132#endif333435