]> Git Repo - J-linux.git/blob - arch/powerpc/include/asm/book3s/64/kexec.h
Merge tag 'vfs-6.13-rc7.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs
[J-linux.git] / arch / powerpc / include / asm / book3s / 64 / kexec.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2
3 #ifndef _ASM_POWERPC_BOOK3S_64_KEXEC_H_
4 #define _ASM_POWERPC_BOOK3S_64_KEXEC_H_
5
6 #include <asm/plpar_wrappers.h>
7
8 #define reset_sprs reset_sprs
9 static inline void reset_sprs(void)
10 {
11         if (cpu_has_feature(CPU_FTR_ARCH_206)) {
12                 mtspr(SPRN_AMR, 0);
13                 mtspr(SPRN_UAMOR, 0);
14         }
15
16         if (cpu_has_feature(CPU_FTR_ARCH_207S)) {
17                 mtspr(SPRN_IAMR, 0);
18                 if (cpu_has_feature(CPU_FTR_HVMODE))
19                         mtspr(SPRN_CIABR, 0);
20                 else
21                         plpar_set_ciabr(0);
22         }
23
24         if (cpu_has_feature(CPU_FTR_ARCH_31)) {
25                 mtspr(SPRN_DEXCR, 0);
26                 mtspr(SPRN_HASHKEYR, 0);
27         }
28
29         /*  Do we need isync()? We are going via a kexec reset */
30         isync();
31 }
32
33 #endif
This page took 0.032025 seconds and 4 git commands to generate.