xref: /linux/arch/x86/include/asm/vga.h (revision 2da68a77)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  *	Access to VGA videoram
4  *
5  *	(c) 1998 Martin Mares <mj@ucw.cz>
6  */
7 
8 #ifndef _ASM_X86_VGA_H
9 #define _ASM_X86_VGA_H
10 
11 #include <asm/set_memory.h>
12 
13 /*
14  *	On the PC, we can just recalculate addresses and then
15  *	access the videoram directly without any black magic.
16  *	To support memory encryption however, we need to access
17  *	the videoram as decrypted memory.
18  */
19 
20 #define VGA_MAP_MEM(x, s)					\
21 ({								\
22 	unsigned long start = (unsigned long)phys_to_virt(x);	\
23 								\
24 	if (IS_ENABLED(CONFIG_AMD_MEM_ENCRYPT))			\
25 		set_memory_decrypted(start, (s) >> PAGE_SHIFT);	\
26 								\
27 	start;							\
28 })
29 
30 #define vga_readb(x) (*(x))
31 #define vga_writeb(x, y) (*(y) = (x))
32 
33 #endif /* _ASM_X86_VGA_H */
34