18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0+ */ 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ci#ifndef _ASM_POWERPC_BOOK3S_64_PKEYS_H 48c2ecf20Sopenharmony_ci#define _ASM_POWERPC_BOOK3S_64_PKEYS_H 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci#include <asm/book3s/64/hash-pkey.h> 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ciextern u64 __ro_after_init default_uamor; 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_cistatic inline u64 vmflag_to_pte_pkey_bits(u64 vm_flags) 118c2ecf20Sopenharmony_ci{ 128c2ecf20Sopenharmony_ci if (!mmu_has_feature(MMU_FTR_PKEY)) 138c2ecf20Sopenharmony_ci return 0x0UL; 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ci if (radix_enabled()) 168c2ecf20Sopenharmony_ci BUG(); 178c2ecf20Sopenharmony_ci return hash__vmflag_to_pte_pkey_bits(vm_flags); 188c2ecf20Sopenharmony_ci} 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_cistatic inline u16 pte_to_pkey_bits(u64 pteflags) 218c2ecf20Sopenharmony_ci{ 228c2ecf20Sopenharmony_ci if (radix_enabled()) 238c2ecf20Sopenharmony_ci BUG(); 248c2ecf20Sopenharmony_ci return hash__pte_to_pkey_bits(pteflags); 258c2ecf20Sopenharmony_ci} 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ci#endif /*_ASM_POWERPC_KEYS_H */ 28