cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

mem_encrypt.h (780B)


      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#endif	/* CONFIG_ARCH_HAS_MEM_ENCRYPT */
     20
     21#ifdef CONFIG_AMD_MEM_ENCRYPT
     22/*
     23 * The __sme_set() and __sme_clr() macros are useful for adding or removing
     24 * the encryption mask from a value (e.g. when dealing with pagetable
     25 * entries).
     26 */
     27#define __sme_set(x)		((x) | sme_me_mask)
     28#define __sme_clr(x)		((x) & ~sme_me_mask)
     29#else
     30#define __sme_set(x)		(x)
     31#define __sme_clr(x)		(x)
     32#endif
     33
     34#endif	/* __ASSEMBLY__ */
     35
     36#endif	/* __MEM_ENCRYPT_H__ */