xref: /openbmc/linux/arch/x86/include/asm/coco.h (revision da86eb96)
1655a0fa3SKirill A. Shutemov /* SPDX-License-Identifier: GPL-2.0 */
2655a0fa3SKirill A. Shutemov #ifndef _ASM_X86_COCO_H
3655a0fa3SKirill A. Shutemov #define _ASM_X86_COCO_H
4655a0fa3SKirill A. Shutemov 
5b577f542SKirill A. Shutemov #include <asm/types.h>
6b577f542SKirill A. Shutemov 
7655a0fa3SKirill A. Shutemov enum cc_vendor {
8655a0fa3SKirill A. Shutemov 	CC_VENDOR_NONE,
9655a0fa3SKirill A. Shutemov 	CC_VENDOR_AMD,
10655a0fa3SKirill A. Shutemov 	CC_VENDOR_INTEL,
11655a0fa3SKirill A. Shutemov };
12655a0fa3SKirill A. Shutemov 
133d91c537SBorislav Petkov (AMD) extern enum cc_vendor cc_vendor;
143d91c537SBorislav Petkov (AMD) 
15*da86eb96SBorislav Petkov (AMD) #ifdef CONFIG_ARCH_HAS_CC_PLATFORM
163d91c537SBorislav Petkov (AMD) void cc_set_mask(u64 mask);
17b577f542SKirill A. Shutemov u64 cc_mkenc(u64 val);
18b577f542SKirill A. Shutemov u64 cc_mkdec(u64 val);
19b577f542SKirill A. Shutemov #else
20b577f542SKirill A. Shutemov static inline u64 cc_mkenc(u64 val)
21b577f542SKirill A. Shutemov {
22b577f542SKirill A. Shutemov 	return val;
23b577f542SKirill A. Shutemov }
24b577f542SKirill A. Shutemov 
25b577f542SKirill A. Shutemov static inline u64 cc_mkdec(u64 val)
26b577f542SKirill A. Shutemov {
27b577f542SKirill A. Shutemov 	return val;
28b577f542SKirill A. Shutemov }
29b577f542SKirill A. Shutemov #endif
30655a0fa3SKirill A. Shutemov 
31655a0fa3SKirill A. Shutemov #endif /* _ASM_X86_COCO_H */
32