1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun #ifndef _ASM_POWERPC_BOOK3S_64_KEXEC_H_ 4*4882a593Smuzhiyun #define _ASM_POWERPC_BOOK3S_64_KEXEC_H_ 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun #define reset_sprs reset_sprs reset_sprs(void)8*4882a593Smuzhiyunstatic inline void reset_sprs(void) 9*4882a593Smuzhiyun { 10*4882a593Smuzhiyun if (cpu_has_feature(CPU_FTR_ARCH_206)) { 11*4882a593Smuzhiyun mtspr(SPRN_AMR, 0); 12*4882a593Smuzhiyun mtspr(SPRN_UAMOR, 0); 13*4882a593Smuzhiyun } 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun if (cpu_has_feature(CPU_FTR_ARCH_207S)) { 16*4882a593Smuzhiyun mtspr(SPRN_IAMR, 0); 17*4882a593Smuzhiyun } 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun /* Do we need isync()? We are going via a kexec reset */ 20*4882a593Smuzhiyun isync(); 21*4882a593Smuzhiyun } 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun #endif 24