root/include/linux/mem_encrypt.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. mem_encrypt_active

   1 /* SPDX-License-Identifier: GPL-2.0-only */
   2 /*
   3  * AMD Memory Encryption Support
   4  *
   5  * Copyright (C) 2016 Advanced Micro Devices, Inc.
   6  *
   7  * Author: Tom Lendacky <thomas.lendacky@amd.com>
   8  */
   9 
  10 #ifndef __MEM_ENCRYPT_H__
  11 #define __MEM_ENCRYPT_H__
  12 
  13 #ifndef __ASSEMBLY__
  14 
  15 #ifdef CONFIG_ARCH_HAS_MEM_ENCRYPT
  16 
  17 #include <asm/mem_encrypt.h>
  18 
  19 #else   /* !CONFIG_ARCH_HAS_MEM_ENCRYPT */
  20 
  21 static inline bool mem_encrypt_active(void) { return false; }
  22 
  23 #endif  /* CONFIG_ARCH_HAS_MEM_ENCRYPT */
  24 
  25 #ifdef CONFIG_AMD_MEM_ENCRYPT
  26 /*
  27  * The __sme_set() and __sme_clr() macros are useful for adding or removing
  28  * the encryption mask from a value (e.g. when dealing with pagetable
  29  * entries).
  30  */
  31 #define __sme_set(x)            ((x) | sme_me_mask)
  32 #define __sme_clr(x)            ((x) & ~sme_me_mask)
  33 #else
  34 #define __sme_set(x)            (x)
  35 #define __sme_clr(x)            (x)
  36 #endif
  37 
  38 #endif  /* __ASSEMBLY__ */
  39 
  40 #endif  /* __MEM_ENCRYPT_H__ */

/* [<][>][^][v][top][bottom][index][help] */